# git rev-parse -q --verify 71a7507afbc3f27c346898f13ab9bfd918613c34^{commit} 71a7507afbc3f27c346898f13ab9bfd918613c34 already have revision, skipping fetch # git checkout -q -f -B kisskb 71a7507afbc3f27c346898f13ab9bfd918613c34 # git clean -qxdf # < git log -1 # commit 71a7507afbc3f27c346898f13ab9bfd918613c34 # Merge: ba54ff1fb662 f18caf261398 # Author: Linus Torvalds # Date: Fri Dec 16 03:54:54 2022 -0800 # # Merge tag 'driver-core-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core # # Pull driver core updates from Greg KH: # "Here is the set of driver core and kernfs changes for 6.2-rc1. # # The "big" change in here is the addition of a new macro, # container_of_const() that will preserve the "const-ness" of a pointer # passed into it. # # The "problem" of the current container_of() macro is that if you pass # in a "const *", out of it can comes a non-const pointer unless you # specifically ask for it. For many usages, we want to preserve the # "const" attribute by using the same call. For a specific example, this # series changes the kobj_to_dev() macro to use it, allowing it to be # used no matter what the const value is. This prevents every subsystem # from having to declare 2 different individual macros (i.e. # kobj_const_to_dev() and kobj_to_dev()) and having the compiler enforce # the const value at build time, which having 2 macros would not do # either. # # The driver for all of this have been discussions with the Rust kernel # developers as to how to properly mark driver core, and kobject, # objects as being "non-mutable". The changes to the kobject and driver # core in this pull request are the result of that, as there are lots of # paths where kobjects and device pointers are not modified at all, so # marking them as "const" allows the compiler to enforce this. # # So, a nice side affect of the Rust development effort has been already # to clean up the driver core code to be more obvious about object # rules. # # All of this has been bike-shedded in quite a lot of detail on lkml # with different names and implementations resulting in the tiny version # we have in here, much better than my original proposal. Lots of # subsystem maintainers have acked the changes as well. # # Other than this change, included in here are smaller stuff like: # # - kernfs fixes and updates to handle lock contention better # # - vmlinux.lds.h fixes and updates # # - sysfs and debugfs documentation updates # # - device property updates # # All of these have been in the linux-next tree for quite a while with # no problems" # # * tag 'driver-core-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (58 commits) # device property: Fix documentation for fwnode_get_next_parent() # firmware_loader: fix up to_fw_sysfs() to preserve const # usb.h: take advantage of container_of_const() # device.h: move kobj_to_dev() to use container_of_const() # container_of: add container_of_const() that preserves const-ness of the pointer # driver core: fix up missed drivers/s390/char/hmcdrv_dev.c class.devnode() conversion. # driver core: fix up missed scsi/cxlflash class.devnode() conversion. # driver core: fix up some missing class.devnode() conversions. # driver core: make struct class.devnode() take a const * # driver core: make struct class.dev_uevent() take a const * # cacheinfo: Remove of_node_put() for fw_token # device property: Add a blank line in Kconfig of tests # device property: Rename goto label to be more precise # device property: Move PROPERTY_ENTRY_BOOL() a bit down # device property: Get rid of __PROPERTY_ENTRY_ARRAY_EL*SIZE*() # kernfs: fix all kernel-doc warnings and multiple typos # driver core: pass a const * into of_device_uevent() # kobject: kset_uevent_ops: make name() callback take a const * # kobject: kset_uevent_ops: make filter() callback take a const * # kobject: make kobject_namespace take a const * # ... # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 71a7507afbc3f27c346898f13ab9bfd918613c34 # < make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- allmodconfig # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig # < make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- help # make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- olddefconfig # make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- In file included from /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:32:0: /kisskb/src/drivers/media/platform/nxp/imx-pxp.c: In function 'pxp_setup_csc': /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:334:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_bt601_lim[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:334:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:351:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_bt601_full[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:351:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:368:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_rec709_lim[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:368:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:385:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_rec709_full[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:385:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:402:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_bt2020_lim[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:402:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:419:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_bt2020_full[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:419:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:436:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_smpte240m_lim[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:436:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: error: initializer element is not constant #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:453:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.h:582:38: note: (near initialization for 'csc1_coef_smpte240m_full[0]') #define BM_PXP_CSC1_COEF0_YCBCR_MODE 0x80000000 ^ /kisskb/src/drivers/media/platform/nxp/imx-pxp.c:453:4: note: in expansion of macro 'BM_PXP_CSC1_COEF0_YCBCR_MODE' BM_PXP_CSC1_COEF0_YCBCR_MODE | ^ make[6]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/media/platform/nxp/imx-pxp.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/media/platform/nxp] Error 2 make[5]: *** Waiting for unfinished jobs.... In file included from /kisskb/src/include/ufs/ufshcd.h:24:0, from /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:12: /kisskb/src/drivers/ufs/host/tc-dwc-g210.c: In function 'tc_dwc_g210_setup_40bit_rmmi': /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:29:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(TX_GLOBALHIBERNATE), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[0].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:29:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(TX_GLOBALHIBERNATE), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:30:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(REFCLKMODE), 0x01, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[1].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:30:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(REFCLKMODE), 0x01, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:31:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CDIRECTCTRL6), 0x80, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[2].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:31:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CDIRECTCTRL6), 0x80, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:32:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDIVFACTOR), 0x08, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[3].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:32:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDIVFACTOR), 0x08, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:33:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDCOCTRL5), 0x64, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[4].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:33:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDCOCTRL5), 0x64, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:34:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGTUNING), 0x09, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[5].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:34:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGTUNING), 0x09, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:35:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(RTOBSERVESELECT), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[6].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:35:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(RTOBSERVESELECT), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:52:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL10), 0x04, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[15].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:52:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL10), 0x04, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:53:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL19), 0x02, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[16].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:53:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL19), 0x02, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:76:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGPLL2), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[28].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:76:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGPLL2), 0x00, DME_LOCAL }, ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c: In function 'tc_dwc_g210_setup_20bit_rmmi_lane0': /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:109:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL10), 0x04, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[8].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:109:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL10), 0x04, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:110:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL19), 0x02, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[9].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:110:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(DIRECTCTRL19), 0x02, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:129:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGPLL2), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[19].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:129:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGPLL2), 0x00, DME_LOCAL }, ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c: In function 'tc_dwc_g210_setup_20bit_rmmi': /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:225:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(TX_GLOBALHIBERNATE), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[0].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:225:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(TX_GLOBALHIBERNATE), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:226:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(REFCLKMODE), 0x01, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[1].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:226:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(REFCLKMODE), 0x01, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:227:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CDIRECTCTRL6), 0xc0, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[2].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:227:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CDIRECTCTRL6), 0xc0, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:228:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDIVFACTOR), 0x44, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[3].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:228:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDIVFACTOR), 0x44, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:229:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDCOCTRL5), 0x64, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[4].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:229:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBDCOCTRL5), 0x64, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:230:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGTUNING), 0x09, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[5].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:230:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(CBPRGTUNING), 0x09, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: error: initializer element is not constant #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:231:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(RTOBSERVESELECT), 0x00, DME_LOCAL }, ^ /kisskb/src/include/ufs/ufshci.h:241:36: note: (near initialization for 'setup_attrs[6].attr_sel') #define UIC_ARG_MIB_SEL(attr, sel) ((((attr) & 0xFFFF) << 16) |\ ^ /kisskb/src/include/ufs/ufshci.h:243:28: note: in expansion of macro 'UIC_ARG_MIB_SEL' #define UIC_ARG_MIB(attr) UIC_ARG_MIB_SEL(attr, 0) ^ /kisskb/src/drivers/ufs/host/tc-dwc-g210.c:231:5: note: in expansion of macro 'UIC_ARG_MIB' { UIC_ARG_MIB(RTOBSERVESELECT), 0x00, DME_LOCAL }, ^ make[5]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/ufs/host/tc-dwc-g210.o] Error 1 make[5]: *** Waiting for unfinished jobs.... make[4]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/ufs/host] Error 2 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/ufs] Error 2 make[3]: *** Waiting for unfinished jobs.... make[4]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/media/platform] Error 2 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/media] Error 2 /kisskb/src/drivers/gpu/drm/../../accel/drm_accel.c: In function 'accel_sysfs_init': /kisskb/src/drivers/gpu/drm/../../accel/drm_accel.c:41:23: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] accel_class->devnode = accel_devnode; ^ cc1: all warnings being treated as errors make[5]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/gpu/drm/../../accel/drm_accel.o] Error 1 make[5]: *** Waiting for unfinished jobs.... /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.c: In function 'UseMinimumDCFCLK': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.c:7082:1: error: the frame size of 2224 bytes is larger than 2048 bytes [-Werror=frame-larger-than=] } ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.c: In function 'UseMinimumDCFCLK': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.c:7127:1: error: the frame size of 2208 bytes is larger than 2048 bytes [-Werror=frame-larger-than=] } ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_stream.c: In function 'dc_stream_remove_writeback': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_stream.c:543:55: error: array subscript is above array bounds [-Werror=array-bounds] stream->writeback_info[j] = stream->writeback_info[i]; ^ cc1: all warnings being treated as errors make[6]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_stream.o] Error 1 make[6]: *** Waiting for unfinished jobs.... cc1: all warnings being treated as errors cc1: all warnings being treated as errors make[6]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.o] Error 1 make[6]: *** [/kisskb/src/scripts/Makefile.build:250: drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.o] Error 1 make[5]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/gpu/drm/amd/amdgpu] Error 2 make[4]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/gpu/drm] Error 2 make[3]: *** [/kisskb/src/scripts/Makefile.build:502: drivers/gpu] Error 2 make[2]: *** [/kisskb/src/scripts/Makefile.build:502: drivers] Error 2 make[1]: *** [/kisskb/src/Makefile:1994: .] Error 2 make: *** [Makefile:231: __sub-make] Error 2 Command 'make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/linus_arm64-allmodconfig_arm64-gcc5 # Build took: 0:07:04.152333