0 bit shift
Tobin C. Harding
me at tobin.cc
Wed Mar 29 20:39:16 EDT 2017
On Wed, Mar 29, 2017 at 07:57:50PM -0400, valdis.kletnieks at vt.edu wrote:
> On Thu, 30 Mar 2017 09:59:44 +1100, "Tobin C. Harding" said:
> > What is the reason for the zero bit shift in this code please?
> >
> > #define SDIO_STATE_PRESENT (1<<0) /* present in sysfs */
> >
> > file: include/linux/mmc/sdio_func.h
>
> Most likely, to indicate that it's a bitmask in the 'unsigned int state'
> in the line above, rather than an integer.
>
> See the other 2 uses of the flag in-tree:
>
> [/usr/src/linux-next] git grep SDIO_STATE_PRESENT
> include/linux/mmc/sdio_func.h:#define SDIO_STATE_PRESENT (1<<0) /* present in sysfs */
> include/linux/mmc/sdio_func.h:#define sdio_func_present(f) ((f)->state & SDIO_STATE_PRESENT)
> include/linux/mmc/sdio_func.h:#define sdio_func_set_present(f) ((f)->state |= SDIO_STATE_PRESENT)
>
Awesome, thanks.
More information about the Kernelnewbies
mailing list