On Thu, Feb 3, 2022 at 12:58 PM Jani Nikula <jani.nikula@xxxxxxxxx> wrote: > > On Mon, 27 Sep 2021, Fangzhi Zuo <Jerry.Zuo@xxxxxxx> wrote: > > +/* DSC Extended Capability Branch Total DSC Resources */ > > +#define DP_DSC_SUPPORT_AND_DSC_DECODER_COUNT 0x2260 /* 2.0 */ > > +# define DP_DSC_DECODER_COUNT_MASK (0b111 << 5) > > +# define DP_DSC_DECODER_COUNT_SHIFT 5 > > +#define DP_DSC_MAX_SLICE_COUNT_AND_AGGREGATION_0 0x2270 /* 2.0 */ > > +# define DP_DSC_DECODER_0_MAXIMUM_SLICE_COUNT_MASK (1 << 0) > > +# define DP_DSC_DECODER_0_AGGREGATION_SUPPORT_MASK (0b111 << 1) > > +# define DP_DSC_DECODER_0_AGGREGATION_SUPPORT_SHIFT 1 > > The patch was merged a while back, but only now I noticed the use of > binary constants, which in C is a GCC and Clang extension [1][2]. There > are some instances in the kernel, but not a whole lot. > > Do we want to avoid or embrace them going forward? Or meh? $ git grep '\<0b[01]*\>' Gives me almost exclusive hits in - .rst files - .S assembler files - comments and strings So I think probably not? I mean there's also BIT() and BIT_MASK() macros and stuff like that, and reading small masks is pretty simple. -Daniel > > > BR, > Jani. > > > [1] https://gcc.gnu.org/onlinedocs/gcc/Binary-constants.html > [2] https://clang.llvm.org/docs/LanguageExtensions.html#c-14-binary-literals > > -- > Jani Nikula, Intel Open Source Graphics Center -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch