~ubuntu-branches/ubuntu/saucy/linux-ti-omap4/saucy-proposed

« back to all changes in this revision

Viewing changes to arch/s390/include/asm/bitops.h

  • Committer: Package Import Robot
  • Author(s): Paolo Pisati, Paolo Pisati, Stefan Bader, Upstream Kernel Changes
  • Date: 2012-08-15 17:17:43 UTC
  • Revision ID: package-import@ubuntu.com-20120815171743-h5wnuf51xe7pvdid
Tags: 3.5.0-207.13
[ Paolo Pisati ]

* Start new release

[ Stefan Bader ]

* (config) Enable getabis to use local package copies

[ Upstream Kernel Changes ]

* fixup: gargabe collect iva_seq[0|1] init
* [Config] enable all SND_OMAP_SOC_*s
* fixup: cm2xxx_3xxx.o is needed for omap2_cm_read|write_reg
* fixup: add some snd_soc_dai* helper functions
* fixup: s/snd_soc_dpcm_params/snd_soc_dpcm/g
* fixup: typo, no_host_mode and useless SDP4430 init
* fixup: enable again aess hwmod

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
 *
14
14
 */
15
15
 
16
 
#ifdef __KERNEL__
17
 
 
18
16
#ifndef _LINUX_BITOPS_H
19
17
#error only <linux/bitops.h> can be included directly
20
18
#endif
63
61
extern const char _zb_findmap[];
64
62
extern const char _sb_findmap[];
65
63
 
66
 
#ifndef __s390x__
 
64
#ifndef CONFIG_64BIT
67
65
 
68
66
#define __BITOPS_ALIGN          3
69
67
#define __BITOPS_WORDSIZE       32
83
81
                : "d" (__val), "Q" (*(unsigned long *) __addr)  \
84
82
                : "cc");
85
83
 
86
 
#else /* __s390x__ */
 
84
#else /* CONFIG_64BIT */
87
85
 
88
86
#define __BITOPS_ALIGN          7
89
87
#define __BITOPS_WORDSIZE       64
103
101
                : "d" (__val), "Q" (*(unsigned long *) __addr)  \
104
102
                : "cc");
105
103
 
106
 
#endif /* __s390x__ */
 
104
#endif /* CONFIG_64BIT */
107
105
 
108
106
#define __BITOPS_WORDS(bits) (((bits)+__BITOPS_WORDSIZE-1)/__BITOPS_WORDSIZE)
109
107
#define __BITOPS_BARRIER() asm volatile("" : : : "memory")
412
410
        unsigned long bytes = 0;
413
411
 
414
412
        asm volatile(
415
 
#ifndef __s390x__
 
413
#ifndef CONFIG_64BIT
416
414
                "       ahi     %1,-1\n"
417
415
                "       sra     %1,5\n"
418
416
                "       jz      1f\n"
449
447
        unsigned long bytes = 0;
450
448
 
451
449
        asm volatile(
452
 
#ifndef __s390x__
 
450
#ifndef CONFIG_64BIT
453
451
                "       ahi     %1,-1\n"
454
452
                "       sra     %1,5\n"
455
453
                "       jz      1f\n"
481
479
 */
482
480
static inline unsigned long __ffz_word(unsigned long nr, unsigned long word)
483
481
{
484
 
#ifdef __s390x__
 
482
#ifdef CONFIG_64BIT
485
483
        if ((word & 0xffffffff) == 0xffffffff) {
486
484
                word >>= 32;
487
485
                nr += 32;
505
503
 */
506
504
static inline unsigned long __ffs_word(unsigned long nr, unsigned long word)
507
505
{
508
 
#ifdef __s390x__
 
506
#ifdef CONFIG_64BIT
509
507
        if ((word & 0xffffffff) == 0) {
510
508
                word >>= 32;
511
509
                nr += 32;
546
544
        unsigned long word;
547
545
 
548
546
        p = (unsigned long *)((unsigned long) p + offset);
549
 
#ifndef __s390x__
 
547
#ifndef CONFIG_64BIT
550
548
        asm volatile(
551
549
                "       ic      %0,%O1(%R1)\n"
552
550
                "       icm     %0,2,%O1+1(%R1)\n"
834
832
 
835
833
#include <asm-generic/bitops/ext2-atomic-setbit.h>
836
834
 
837
 
 
838
 
#endif /* __KERNEL__ */
839
 
 
840
835
#endif /* _S390_BITOPS_H */