# git rev-parse -q --verify 2b172b47b9a1734fe3bbe23d33336ba829c158fe^{commit} 2b172b47b9a1734fe3bbe23d33336ba829c158fe already have revision, skipping fetch # git checkout -q -f -B kisskb 2b172b47b9a1734fe3bbe23d33336ba829c158fe # git clean -qxdf # < git log -1 # commit 2b172b47b9a1734fe3bbe23d33336ba829c158fe # Author: Alexey Kardashevskiy # Date: Thu Jan 10 14:49:43 2019 +1100 # # powerpc/powernv/npu: Move platform shared code to sysdev # # Initially NPU support was introduced for the powernv platform only, # and later it was extended to pseries so we ended up in a situation when # pseries code calls into arch/powerpc/platforms/powernv which is ugly. # # This moves parts of npu-dma.c required for both powernv and pseries # platforms to sysdev. # # This is mostly cut-n-paste; the only change is: # the pnv_npu2_init_context() helper takes a callback pointer which # returns void but the empty stub for it defines the callback as it # returns a pointer so this fixes it. # # From now on it is possible to build without POWERNV platform enabled and # still have NPU2 support on pseries; currently this fails as: # # arch/powerpc/platforms/pseries/pci.o: In function `pSeries_final_fixup': # /home/aik/p/kernel/arch/powerpc/platforms/pseries/pci.c:267: undefined reference to `pnv_npu2_init' # /home/aik/p/kernel/Makefile==1027== recipe for target 'vmlinux' failed # make[1]: *** [vmlinux] Error 1 # # Signed-off-by: Alexey Kardashevskiy # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-ld --version # < git log --format=%s --max-count=1 2b172b47b9a1734fe3bbe23d33336ba829c158fe # < make -s -j 80 ARCH=powerpc O=/kisskb/build/aik_mpc83xx_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- mpc83xx_defconfig # make -s -j 80 ARCH=powerpc O=/kisskb/build/aik_mpc83xx_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'get_pci_dev': /kisskb/src/arch/powerpc/sysdev/npu.c:46:9: error: implicit declaration of function 'PCI_DN' [-Werror=implicit-function-declaration] /kisskb/src/arch/powerpc/sysdev/npu.c:46:23: error: initialization makes pointer from integer without a cast [-Werror] /kisskb/src/arch/powerpc/sysdev/npu.c:48:54: error: dereferencing pointer to incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c:49:12: error: dereferencing pointer to incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c:49:24: error: dereferencing pointer to incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c: At top level: /kisskb/src/arch/powerpc/sysdev/npu.c:53:17: error: redefinition of 'pnv_pci_get_gpu_dev' /kisskb/src/arch/powerpc/include/asm/npu.h:47:31: note: previous definition of 'pnv_pci_get_gpu_dev' was here /kisskb/src/arch/powerpc/sysdev/npu.c:77:17: error: redefinition of 'pnv_pci_get_npu_dev' /kisskb/src/arch/powerpc/include/asm/npu.h:52:31: note: previous definition of 'pnv_pci_get_npu_dev' was here /kisskb/src/arch/powerpc/sysdev/npu.c:109:24: error: 'NV_MAX_NPUS' undeclared here (not in a function) /kisskb/src/arch/powerpc/sysdev/npu.c:110:22: error: field 'mn' has incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'get_atsd_launch_val': /kisskb/src/arch/powerpc/sysdev/npu.c:165:3: error: implicit declaration of function 'mmu_get_ap' [-Werror=implicit-function-declaration] /kisskb/src/arch/powerpc/sysdev/npu.c:172:2: error: left shift count is negative [-Werror] /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'mmio_atsd_regs_write': /kisskb/src/arch/powerpc/sysdev/npu.c:192:3: error: implicit declaration of function '__raw_writeq_be' [-Werror=implicit-function-declaration] /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'mmio_invalidate_pid': /kisskb/src/arch/powerpc/sysdev/npu.c:202:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'mmio_invalidate_range': /kisskb/src/arch/powerpc/sysdev/npu.c:212:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:218:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'mmio_invalidate_wait': /kisskb/src/arch/powerpc/sysdev/npu.c:237:3: error: implicit declaration of function '__raw_readq' [-Werror=implicit-function-declaration] /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'acquire_atsd_reg': /kisskb/src/arch/powerpc/sysdev/npu.c:262:10: error: assignment makes pointer from integer without a cast [-Werror] /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'mmio_invalidate': /kisskb/src/arch/powerpc/sysdev/npu.c:342:3: error: implicit declaration of function 'flush_all_mm' [-Werror=implicit-function-declaration] /kisskb/src/arch/powerpc/sysdev/npu.c:348:2: error: type of formal parameter 2 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:351:3: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:354:6: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:356:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:363:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:364:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:365:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:366:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:368:2: error: type of formal parameter 1 is incomplete /kisskb/src/arch/powerpc/sysdev/npu.c:310:23: error: unused variable 'mmio_atsd_reg' [-Werror=unused-variable] /kisskb/src/arch/powerpc/sysdev/npu.c: In function 'pnv_npu2_mn_release': /kisskb/src/arch/powerpc/sysdev/npu.c:374:36: error: dereferencing pointer to incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c:374:36: error: dereferencing pointer to incomplete type /kisskb/src/arch/powerpc/sysdev/npu.c:374: confused by earlier errors, bailing out make[3]: *** [/kisskb/src/scripts/Makefile.build:276: arch/powerpc/sysdev/npu.o] Error 1 make[2]: *** [/kisskb/src/scripts/Makefile.build:492: arch/powerpc/sysdev] Error 2 make[2]: *** Waiting for unfinished jobs.... /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:186:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:339:21: note: 'pdeo' was declared here make[1]: *** [/kisskb/src/Makefile:1049: arch/powerpc] Error 2 make[1]: *** Waiting for unfinished jobs.... /kisskb/src/drivers/base/regmap/regmap.c: In function 'regmap_raw_read': /kisskb/src/drivers/base/regmap/regmap.c:2594:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function '_regmap_raw_write': /kisskb/src/drivers/base/regmap/regmap.c:1855:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:247:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:227:19: note: 'i' was declared here /kisskb/src/drivers/i2c/i2c-core-base.c: In function 'i2c_generic_scl_recovery': /kisskb/src/drivers/i2c/i2c-core-base.c:235:5: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] make: *** [Makefile:152: sub-make] Error 2 Command 'make -s -j 80 ARCH=powerpc O=/kisskb/build/aik_mpc83xx_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/aik_mpc83xx_defconfig_powerpc-gcc4.6 # Build took: 0:00:35.357161