[ammarfaizi2-block:crng/random/master 1/2] aarch64-linux-ld: Unexpected GOT/PLT entries detected!
by kernel test robot
tree: https://github.com/ammarfaizi2/linux-block crng/random/master
head: 55a3130a6888d74fb1b6d26793dbe2c994ff4b7f
commit: 7c82c3237147bd1447bb760009b17c9bee4c91e9 [1/2] lib/crypto: add prompts back to crypto libraries
config: arm64-randconfig-r016-20220115 (https://download.01.org/0day-ci/archive/20220116/202201160152.1zZeXMni-lk...)
compiler: aarch64-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/ammarfaizi2/linux-block/commit/7c82c3237147bd1447bb760...
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block crng/random/master
git checkout 7c82c3237147bd1447bb760009b17c9bee4c91e9
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm64 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> aarch64-linux-ld: Unexpected GOT/PLT entries detected!
>> aarch64-linux-ld: Unexpected run-time procedure linkages detected!
aarch64-linux-ld: lib/crypto/libchacha.o: in function `crypto_xor_cpy':
>> libchacha.c:(.text+0x8): undefined reference to `__crypto_xor'
aarch64-linux-ld: lib/crypto/chacha20poly1305.o: in function `crypto_xor':
>> chacha20poly1305.c:(.text+0x580): undefined reference to `__crypto_xor'
aarch64-linux-ld: lib/crypto/chacha20poly1305.o: in function `crypto_memneq.constprop.0':
>> chacha20poly1305.c:(.text+0x5b0): undefined reference to `__crypto_memneq'
aarch64-linux-ld: lib/crypto/chacha20poly1305.o: in function `chacha20poly1305_crypt_sg_inplace':
>> chacha20poly1305.c:(.text+0x7e4): undefined reference to `scatterwalk_map_and_copy'
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for CRYPTO_ALGAPI
Depends on CRYPTO
Selected by
- CRYPTO_LIB_CHACHA_GENERIC
Selected by
- CRYPTO_AEAD && CRYPTO
- CRYPTO_SKCIPHER && CRYPTO
- CRYPTO_HASH && CRYPTO
- CRYPTO_RNG && CRYPTO
- CRYPTO_AKCIPHER && CRYPTO
- CRYPTO_KPP && CRYPTO
- CRYPTO_AES && CRYPTO
- CRYPTO_CAMELLIA && CRYPTO
- CRYPTO_DES && CRYPTO
- CRYPTO_FCRYPT && CRYPTO
- CRYPTO_SERPENT && CRYPTO
- CRYPTO_SM4 && CRYPTO
- CRYPTO_DEFLATE && CRYPTO
- CRYPTO_LZO && CRYPTO
- CRYPTO_842 && CRYPTO
- CRYPTO_LZ4 && CRYPTO
- CRYPTO_LZ4HC && CRYPTO
- CRYPTO_DEV_HISI_SEC && CRYPTO && CRYPTO_HW && (ARM64 || COMPILE_TEST && HAS_IOMEM
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
[mingo-tip:sched/headers 1684/2384] arch/mips/kernel/rtlx.c:345:46: error: unknown type name 'poll_table'
by kernel test robot
tree: git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git sched/headers
head: 4c707c1c0de83967079b4e385012fa5b00e2cd11
commit: 4e8d31a2893e3ef566a2e9860e746519711a0ed3 [1684/2384] headers/deps: tracing: Optimize <linux/ring_buffer.h>'s header dependencies, remove <linux/poll.h>
config: mips-maltaaprp_defconfig (https://download.01.org/0day-ci/archive/20220115/202201152345.4hznmFMe-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 650fc40b6d8d9a5869b4fca525d5f237b0ee2803)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git/commit/?id=...
git remote add mingo-tip git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git
git fetch --no-tags mingo-tip sched/headers
git checkout 4e8d31a2893e3ef566a2e9860e746519711a0ed3
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/mips/kernel/rtlx.c:14:
In file included from include/linux/fs_api.h:2:
In file included from include/linux/fs.h:6:
include/linux/wait_bit.h:35:19: error: expected ';' after top level declarator
extern void __init wait_bit_init(void);
^
;
>> arch/mips/kernel/rtlx.c:345:46: error: unknown type name 'poll_table'
static __poll_t file_poll(struct file *file, poll_table *wait)
^
>> arch/mips/kernel/rtlx.c:350:2: error: implicit declaration of function 'poll_wait' [-Werror,-Wimplicit-function-declaration]
poll_wait(file, &channel_wqs[minor].rt_queue, wait);
^
>> arch/mips/kernel/rtlx.c:358:11: error: use of undeclared identifier 'EPOLLIN'
mask |= EPOLLIN | EPOLLRDNORM;
^
>> arch/mips/kernel/rtlx.c:358:21: error: use of undeclared identifier 'EPOLLRDNORM'
mask |= EPOLLIN | EPOLLRDNORM;
^
>> arch/mips/kernel/rtlx.c:362:11: error: use of undeclared identifier 'EPOLLOUT'
mask |= EPOLLOUT | EPOLLWRNORM;
^
>> arch/mips/kernel/rtlx.c:362:22: error: use of undeclared identifier 'EPOLLWRNORM'
mask |= EPOLLOUT | EPOLLWRNORM;
^
7 errors generated.
vim +/poll_table +345 arch/mips/kernel/rtlx.c
2600990e640e3b Ralf Baechle 2006-04-05 344
8b9aab09aaf390 Al Viro 2017-07-02 @345 static __poll_t file_poll(struct file *file, poll_table *wait)
2600990e640e3b Ralf Baechle 2006-04-05 346 {
496ad9aa8ef448 Al Viro 2013-01-23 347 int minor = iminor(file_inode(file));
8b9aab09aaf390 Al Viro 2017-07-02 348 __poll_t mask = 0;
2600990e640e3b Ralf Baechle 2006-04-05 349
2600990e640e3b Ralf Baechle 2006-04-05 @350 poll_wait(file, &channel_wqs[minor].rt_queue, wait);
2600990e640e3b Ralf Baechle 2006-04-05 351 poll_wait(file, &channel_wqs[minor].lx_queue, wait);
2600990e640e3b Ralf Baechle 2006-04-05 352
2600990e640e3b Ralf Baechle 2006-04-05 353 if (rtlx == NULL)
2600990e640e3b Ralf Baechle 2006-04-05 354 return 0;
2600990e640e3b Ralf Baechle 2006-04-05 355
2600990e640e3b Ralf Baechle 2006-04-05 356 /* data available to read? */
2600990e640e3b Ralf Baechle 2006-04-05 357 if (rtlx_read_poll(minor, 0))
a9a08845e9acbd Linus Torvalds 2018-02-11 @358 mask |= EPOLLIN | EPOLLRDNORM;
2600990e640e3b Ralf Baechle 2006-04-05 359
2600990e640e3b Ralf Baechle 2006-04-05 360 /* space to write */
2600990e640e3b Ralf Baechle 2006-04-05 361 if (rtlx_write_poll(minor))
a9a08845e9acbd Linus Torvalds 2018-02-11 @362 mask |= EPOLLOUT | EPOLLWRNORM;
2600990e640e3b Ralf Baechle 2006-04-05 363
2600990e640e3b Ralf Baechle 2006-04-05 364 return mask;
2600990e640e3b Ralf Baechle 2006-04-05 365 }
2600990e640e3b Ralf Baechle 2006-04-05 366
:::::: The code at line 345 was first introduced by commit
:::::: 8b9aab09aaf390b868359b9365b667cf6506473c mips: annotate ->poll() instances
:::::: TO: Al Viro <viro(a)zeniv.linux.org.uk>
:::::: CC: Al Viro <viro(a)zeniv.linux.org.uk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
[hch-block:bio_alloc-cleanup 37/41] include/linux/kern_levels.h:5:18: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int'
by kernel test robot
tree: git://git.infradead.org/users/hch/block.git bio_alloc-cleanup
head: f033ae7a0e5d8529000f3760d24650e8c468fb65
commit: 41af664fdb39fe3a5cc1e2d6639795ee98efe514 [37/41] f2fs: return a f2fs_dev_info from f2fs_target_device
config: i386-randconfig-a005 (https://download.01.org/0day-ci/archive/20220115/202201152205.Xjy1E3ng-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
git remote add hch-block git://git.infradead.org/users/hch/block.git
git fetch --no-tags hch-block bio_alloc-cleanup
git checkout 41af664fdb39fe3a5cc1e2d6639795ee98efe514
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash fs/f2fs/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:20,
from arch/x86/include/asm/percpu.h:27,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:55,
from include/linux/wait.h:9,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from fs/f2fs/segment.c:8:
fs/f2fs/segment.c: In function '__f2fs_issue_discard_zone':
>> include/linux/kern_levels.h:5:18: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
11 | #define KERN_ERR KERN_SOH "3" /* error conditions */
| ^~~~~~~~
fs/f2fs/f2fs.h:2241:19: note: in expansion of macro 'KERN_ERR'
2241 | f2fs_printk(sbi, KERN_ERR fmt, ##__VA_ARGS__)
| ^~~~~~~~
fs/f2fs/segment.c:1863:4: note: in expansion of macro 'f2fs_err'
1863 | f2fs_err(sbi, "(%ld) %s: Unaligned zone reset attempted (block %x + %x)",
| ^~~~~~~~
fs/f2fs/segment.c:1863:22: note: format string is defined here
1863 | f2fs_err(sbi, "(%ld) %s: Unaligned zone reset attempted (block %x + %x)",
| ~~^
| |
| long int
| %d
vim +5 include/linux/kern_levels.h
314ba3520e513a7 Joe Perches 2012-07-30 4
04d2c8c83d0e3ac Joe Perches 2012-07-30 @5 #define KERN_SOH "\001" /* ASCII Start Of Header */
04d2c8c83d0e3ac Joe Perches 2012-07-30 6 #define KERN_SOH_ASCII '\001'
04d2c8c83d0e3ac Joe Perches 2012-07-30 7
:::::: The code at line 5 was first introduced by commit
:::::: 04d2c8c83d0e3ac5f78aeede51babb3236200112 printk: convert the format for KERN_<LEVEL> to a 2 byte pattern
:::::: TO: Joe Perches <joe(a)perches.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
Re: [PATCH v2 1/3] iio: dac: add support for ltc2688
by kernel test robot
Hi "Nuno,
I love your patch! Yet something to improve:
[auto build test ERROR on jic23-iio/togreg]
[also build test ERROR on robh/for-next linus/master v5.16 next-20220115]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Nuno-S/Add-support-for-LTC2688/2...
base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20220115/202201152138.RqRoWKHf-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 650fc40b6d8d9a5869b4fca525d5f237b0ee2803)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/0day-ci/linux/commit/d91bcc420e0c6077053e559f676fa4ae7...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Nuno-S/Add-support-for-LTC2688/20220115-172930
git checkout d91bcc420e0c6077053e559f676fa4ae76114ba5
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/iio/dac/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/iio/dac/ltc2688.c:604:2: error: incompatible function pointer types initializing 'ssize_t (*)(struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'long (*)(struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') with an expression of type 'int (struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'int (struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') [-Werror,-Wincompatible-function-pointer-types]
LTC2688_CHAN_EXT_INFO("toggle_en", LTC2688_CMD_TOGGLE_DITHER_EN,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/dac/ltc2688.c:590:11: note: expanded from macro 'LTC2688_CHAN_EXT_INFO'
.write = (_write), \
^~~~~~~~
drivers/iio/dac/ltc2688.c:619:2: error: incompatible function pointer types initializing 'ssize_t (*)(struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'long (*)(struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') with an expression of type 'int (struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'int (struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') [-Werror,-Wincompatible-function-pointer-types]
LTC2688_CHAN_EXT_INFO("toggle_en", LTC2688_CMD_TOGGLE_DITHER_EN,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/dac/ltc2688.c:590:11: note: expanded from macro 'LTC2688_CHAN_EXT_INFO'
.write = (_write), \
^~~~~~~~
drivers/iio/dac/ltc2688.c:639:2: error: incompatible function pointer types initializing 'ssize_t (*)(struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'long (*)(struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') with an expression of type 'int (struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'int (struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') [-Werror,-Wincompatible-function-pointer-types]
LTC2688_CHAN_EXT_INFO("dither_frequency", 0, IIO_SEPARATE,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/dac/ltc2688.c:590:11: note: expanded from macro 'LTC2688_CHAN_EXT_INFO'
.write = (_write), \
^~~~~~~~
drivers/iio/dac/ltc2688.c:641:2: error: incompatible function pointer types initializing 'ssize_t (*)(struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'long (*)(struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') with an expression of type 'int (struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'int (struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') [-Werror,-Wincompatible-function-pointer-types]
LTC2688_CHAN_EXT_INFO("dither_frequency_available",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/dac/ltc2688.c:590:11: note: expanded from macro 'LTC2688_CHAN_EXT_INFO'
.write = (_write), \
^~~~~~~~
drivers/iio/dac/ltc2688.c:647:2: error: incompatible function pointer types initializing 'ssize_t (*)(struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'long (*)(struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') with an expression of type 'int (struct iio_dev *, uintptr_t, const struct iio_chan_spec *, const char *, size_t)' (aka 'int (struct iio_dev *, unsigned long, const struct iio_chan_spec *, const char *, unsigned long)') [-Werror,-Wincompatible-function-pointer-types]
LTC2688_CHAN_EXT_INFO("dither_en", LTC2688_CMD_TOGGLE_DITHER_EN,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/dac/ltc2688.c:590:11: note: expanded from macro 'LTC2688_CHAN_EXT_INFO'
.write = (_write), \
^~~~~~~~
5 errors generated.
vim +604 drivers/iio/dac/ltc2688.c
594
595 /*
596 * For toggle mode we only expose the symbol attr (sw_toggle) in case a TGPx is
597 * not provided in dts.
598 */
599 static const struct iio_chan_spec_ext_info ltc2688_toggle_sym_ext_info[] = {
600 LTC2688_CHAN_EXT_INFO("raw0", LTC2688_INPUT_A, IIO_SEPARATE,
601 ltc2688_dac_input_read, ltc2688_dac_input_write),
602 LTC2688_CHAN_EXT_INFO("raw1", LTC2688_INPUT_B, IIO_SEPARATE,
603 ltc2688_dac_input_read, ltc2688_dac_input_write),
> 604 LTC2688_CHAN_EXT_INFO("toggle_en", LTC2688_CMD_TOGGLE_DITHER_EN,
605 IIO_SEPARATE, ltc2688_reg_bool_get,
606 ltc2688_dither_toggle_set),
607 LTC2688_CHAN_EXT_INFO("powerdown", LTC2688_CMD_POWERDOWN, IIO_SEPARATE,
608 ltc2688_reg_bool_get, ltc2688_reg_bool_set),
609 LTC2688_CHAN_EXT_INFO("symbol", LTC2688_CMD_SW_TOGGLE, IIO_SEPARATE,
610 ltc2688_reg_bool_get, ltc2688_reg_bool_set),
611 {}
612 };
613
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
[mingo-tip:sched/headers 1517/2384] arch/mips/mti-malta/malta-dtshim.c:92:15: error: implicit declaration of function 'min_t'
by kernel test robot
tree: git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git sched/headers
head: 4c707c1c0de83967079b4e385012fa5b00e2cd11
commit: 986644c38150163ceefbb1302500fba6787bf621 [1517/2384] headers/deps: Optimize <linux/kernel.h>
config: mips-maltaaprp_defconfig (https://download.01.org/0day-ci/archive/20220115/202201152000.mOrb5rnf-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 650fc40b6d8d9a5869b4fca525d5f237b0ee2803)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git/commit/?id=...
git remote add mingo-tip git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git
git fetch --no-tags mingo-tip sched/headers
git checkout 986644c38150163ceefbb1302500fba6787bf621
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/mips/mti-malta/malta-dtshim.c:92:15: error: implicit declaration of function 'min_t' [-Werror,-Wimplicit-function-declaration]
size_preio = min_t(unsigned long, size, SZ_256M);
^
>> arch/mips/mti-malta/malta-dtshim.c:92:21: error: expected expression
size_preio = min_t(unsigned long, size, SZ_256M);
^
>> arch/mips/mti-malta/malta-dtshim.c:192:21: error: implicit declaration of function 'max_t' [-Werror,-Wimplicit-function-declaration]
physical_memsize = max_t(unsigned long, physical_memsize, memsize);
^
arch/mips/mti-malta/malta-dtshim.c:192:27: error: expected expression
physical_memsize = max_t(unsigned long, physical_memsize, memsize);
^
4 errors generated.
vim +/min_t +92 arch/mips/mti-malta/malta-dtshim.c
0051fc2e7b8450 Paul Burton 2016-09-19 72
0051fc2e7b8450 Paul Burton 2016-09-19 73 static unsigned __init gen_fdt_mem_array(__be32 *mem_array, unsigned long size,
0051fc2e7b8450 Paul Burton 2016-09-19 74 enum mem_map map)
e81a8c7dabac05 Paul Burton 2015-09-22 75 {
e81a8c7dabac05 Paul Burton 2015-09-22 76 unsigned long size_preio;
e81a8c7dabac05 Paul Burton 2015-09-22 77 unsigned entries;
e81a8c7dabac05 Paul Burton 2015-09-22 78
e81a8c7dabac05 Paul Burton 2015-09-22 79 entries = 1;
e81a8c7dabac05 Paul Burton 2015-09-22 80 mem_array[0] = cpu_to_be32(PHYS_OFFSET);
97f2645f358b41 Masahiro Yamada 2016-08-03 81 if (IS_ENABLED(CONFIG_EVA)) {
e81a8c7dabac05 Paul Burton 2015-09-22 82 /*
e81a8c7dabac05 Paul Burton 2015-09-22 83 * The current Malta EVA configuration is "special" in that it
e81a8c7dabac05 Paul Burton 2015-09-22 84 * always makes use of addresses in the upper half of the 32 bit
e81a8c7dabac05 Paul Burton 2015-09-22 85 * physical address map, which gives it a contiguous region of
e81a8c7dabac05 Paul Burton 2015-09-22 86 * DDR but limits it to 2GB.
e81a8c7dabac05 Paul Burton 2015-09-22 87 */
e81a8c7dabac05 Paul Burton 2015-09-22 88 mem_array[1] = cpu_to_be32(size);
0051fc2e7b8450 Paul Burton 2016-09-19 89 goto done;
0051fc2e7b8450 Paul Burton 2016-09-19 90 }
0051fc2e7b8450 Paul Burton 2016-09-19 91
e81a8c7dabac05 Paul Burton 2015-09-22 @92 size_preio = min_t(unsigned long, size, SZ_256M);
e81a8c7dabac05 Paul Burton 2015-09-22 93 mem_array[1] = cpu_to_be32(size_preio);
0051fc2e7b8450 Paul Burton 2016-09-19 94 size -= size_preio;
0051fc2e7b8450 Paul Burton 2016-09-19 95 if (!size)
0051fc2e7b8450 Paul Burton 2016-09-19 96 goto done;
0051fc2e7b8450 Paul Burton 2016-09-19 97
0051fc2e7b8450 Paul Burton 2016-09-19 98 if (map == MEM_MAP_V2) {
0051fc2e7b8450 Paul Burton 2016-09-19 99 /*
0051fc2e7b8450 Paul Burton 2016-09-19 100 * We have a flat 32 bit physical memory map with DDR filling
0051fc2e7b8450 Paul Burton 2016-09-19 101 * all 4GB of the memory map, apart from the I/O region which
0051fc2e7b8450 Paul Burton 2016-09-19 102 * obscures 256MB from 0x10000000-0x1fffffff.
0051fc2e7b8450 Paul Burton 2016-09-19 103 *
0051fc2e7b8450 Paul Burton 2016-09-19 104 * Therefore we discard the 256MB behind the I/O region.
0051fc2e7b8450 Paul Burton 2016-09-19 105 */
0051fc2e7b8450 Paul Burton 2016-09-19 106 if (size <= SZ_256M)
0051fc2e7b8450 Paul Burton 2016-09-19 107 goto done;
0051fc2e7b8450 Paul Burton 2016-09-19 108 size -= SZ_256M;
0051fc2e7b8450 Paul Burton 2016-09-19 109
0051fc2e7b8450 Paul Burton 2016-09-19 110 /* Make use of the memory following the I/O region */
0051fc2e7b8450 Paul Burton 2016-09-19 111 entries++;
0051fc2e7b8450 Paul Burton 2016-09-19 112 mem_array[2] = cpu_to_be32(PHYS_OFFSET + SZ_512M);
0051fc2e7b8450 Paul Burton 2016-09-19 113 mem_array[3] = cpu_to_be32(size);
0051fc2e7b8450 Paul Burton 2016-09-19 114 } else {
0051fc2e7b8450 Paul Burton 2016-09-19 115 /*
0051fc2e7b8450 Paul Burton 2016-09-19 116 * We have a 32 bit physical memory map with a 2GB DDR region
0051fc2e7b8450 Paul Burton 2016-09-19 117 * aliased in the upper & lower halves of it. The I/O region
0051fc2e7b8450 Paul Burton 2016-09-19 118 * obscures 256MB from 0x10000000-0x1fffffff in the low alias
0051fc2e7b8450 Paul Burton 2016-09-19 119 * but the DDR it obscures is accessible via the high alias.
0051fc2e7b8450 Paul Burton 2016-09-19 120 *
0051fc2e7b8450 Paul Burton 2016-09-19 121 * Simply access everything beyond the lowest 256MB of DDR using
0051fc2e7b8450 Paul Burton 2016-09-19 122 * the high alias.
0051fc2e7b8450 Paul Burton 2016-09-19 123 */
0051fc2e7b8450 Paul Burton 2016-09-19 124 entries++;
0051fc2e7b8450 Paul Burton 2016-09-19 125 mem_array[2] = cpu_to_be32(PHYS_OFFSET + SZ_2G + SZ_256M);
0051fc2e7b8450 Paul Burton 2016-09-19 126 mem_array[3] = cpu_to_be32(size);
e81a8c7dabac05 Paul Burton 2015-09-22 127 }
e81a8c7dabac05 Paul Burton 2015-09-22 128
0051fc2e7b8450 Paul Burton 2016-09-19 129 done:
e81a8c7dabac05 Paul Burton 2015-09-22 130 BUG_ON(entries > MAX_MEM_ARRAY_ENTRIES);
e81a8c7dabac05 Paul Burton 2015-09-22 131 return entries;
e81a8c7dabac05 Paul Burton 2015-09-22 132 }
e81a8c7dabac05 Paul Burton 2015-09-22 133
e81a8c7dabac05 Paul Burton 2015-09-22 134 static void __init append_memory(void *fdt, int root_off)
e81a8c7dabac05 Paul Burton 2015-09-22 135 {
e81a8c7dabac05 Paul Burton 2015-09-22 136 __be32 mem_array[2 * MAX_MEM_ARRAY_ENTRIES];
e81a8c7dabac05 Paul Burton 2015-09-22 137 unsigned long memsize;
e81a8c7dabac05 Paul Burton 2015-09-22 138 unsigned mem_entries;
e81a8c7dabac05 Paul Burton 2015-09-22 139 int i, err, mem_off;
0051fc2e7b8450 Paul Burton 2016-09-19 140 enum mem_map mem_map;
0051fc2e7b8450 Paul Burton 2016-09-19 141 u32 config;
e81a8c7dabac05 Paul Burton 2015-09-22 142 char *var, param_name[10], *var_names[] = {
e81a8c7dabac05 Paul Burton 2015-09-22 143 "ememsize", "memsize",
e81a8c7dabac05 Paul Burton 2015-09-22 144 };
e81a8c7dabac05 Paul Burton 2015-09-22 145
e81a8c7dabac05 Paul Burton 2015-09-22 146 /* if a memory node already exists, leave it alone */
e81a8c7dabac05 Paul Burton 2015-09-22 147 mem_off = fdt_path_offset(fdt, "/memory");
e81a8c7dabac05 Paul Burton 2015-09-22 148 if (mem_off >= 0)
e81a8c7dabac05 Paul Burton 2015-09-22 149 return;
e81a8c7dabac05 Paul Burton 2015-09-22 150
e81a8c7dabac05 Paul Burton 2015-09-22 151 /* find memory size from the bootloader environment */
e81a8c7dabac05 Paul Burton 2015-09-22 152 for (i = 0; i < ARRAY_SIZE(var_names); i++) {
e81a8c7dabac05 Paul Burton 2015-09-22 153 var = fw_getenv(var_names[i]);
e81a8c7dabac05 Paul Burton 2015-09-22 154 if (!var)
e81a8c7dabac05 Paul Burton 2015-09-22 155 continue;
e81a8c7dabac05 Paul Burton 2015-09-22 156
e81a8c7dabac05 Paul Burton 2015-09-22 157 err = kstrtoul(var, 0, &physical_memsize);
e81a8c7dabac05 Paul Burton 2015-09-22 158 if (!err)
e81a8c7dabac05 Paul Burton 2015-09-22 159 break;
e81a8c7dabac05 Paul Burton 2015-09-22 160
e81a8c7dabac05 Paul Burton 2015-09-22 161 pr_warn("Failed to read the '%s' env variable '%s'\n",
e81a8c7dabac05 Paul Burton 2015-09-22 162 var_names[i], var);
e81a8c7dabac05 Paul Burton 2015-09-22 163 }
e81a8c7dabac05 Paul Burton 2015-09-22 164
e81a8c7dabac05 Paul Burton 2015-09-22 165 if (!physical_memsize) {
e81a8c7dabac05 Paul Burton 2015-09-22 166 pr_warn("The bootloader didn't provide memsize: defaulting to 32MB\n");
e81a8c7dabac05 Paul Burton 2015-09-22 167 physical_memsize = 32 << 20;
e81a8c7dabac05 Paul Burton 2015-09-22 168 }
e81a8c7dabac05 Paul Burton 2015-09-22 169
97f2645f358b41 Masahiro Yamada 2016-08-03 170 if (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)) {
e81a8c7dabac05 Paul Burton 2015-09-22 171 /*
e81a8c7dabac05 Paul Burton 2015-09-22 172 * SOC-it swaps, or perhaps doesn't swap, when DMA'ing
e81a8c7dabac05 Paul Burton 2015-09-22 173 * the last word of physical memory.
e81a8c7dabac05 Paul Burton 2015-09-22 174 */
e81a8c7dabac05 Paul Burton 2015-09-22 175 physical_memsize -= PAGE_SIZE;
e81a8c7dabac05 Paul Burton 2015-09-22 176 }
e81a8c7dabac05 Paul Burton 2015-09-22 177
e81a8c7dabac05 Paul Burton 2015-09-22 178 /* default to using all available RAM */
e81a8c7dabac05 Paul Burton 2015-09-22 179 memsize = physical_memsize;
e81a8c7dabac05 Paul Burton 2015-09-22 180
e81a8c7dabac05 Paul Burton 2015-09-22 181 /* allow the user to override the usable memory */
e81a8c7dabac05 Paul Burton 2015-09-22 182 for (i = 0; i < ARRAY_SIZE(var_names); i++) {
e81a8c7dabac05 Paul Burton 2015-09-22 183 snprintf(param_name, sizeof(param_name), "%s=", var_names[i]);
e81a8c7dabac05 Paul Burton 2015-09-22 184 var = strstr(arcs_cmdline, param_name);
e81a8c7dabac05 Paul Burton 2015-09-22 185 if (!var)
e81a8c7dabac05 Paul Burton 2015-09-22 186 continue;
e81a8c7dabac05 Paul Burton 2015-09-22 187
e81a8c7dabac05 Paul Burton 2015-09-22 188 memsize = memparse(var + strlen(param_name), NULL);
e81a8c7dabac05 Paul Burton 2015-09-22 189 }
e81a8c7dabac05 Paul Burton 2015-09-22 190
e81a8c7dabac05 Paul Burton 2015-09-22 191 /* if the user says there's more RAM than we thought, believe them */
e81a8c7dabac05 Paul Burton 2015-09-22 @192 physical_memsize = max_t(unsigned long, physical_memsize, memsize);
e81a8c7dabac05 Paul Burton 2015-09-22 193
0051fc2e7b8450 Paul Burton 2016-09-19 194 /* detect the memory map in use */
0051fc2e7b8450 Paul Burton 2016-09-19 195 if (malta_scon() == MIPS_REVISION_SCON_ROCIT) {
0051fc2e7b8450 Paul Burton 2016-09-19 196 /* ROCit has a register indicating the memory map in use */
0051fc2e7b8450 Paul Burton 2016-09-19 197 config = readl((void __iomem *)CKSEG1ADDR(ROCIT_CONFIG_GEN1));
0051fc2e7b8450 Paul Burton 2016-09-19 198 mem_map = config & ROCIT_CONFIG_GEN1_MEMMAP_MASK;
0051fc2e7b8450 Paul Burton 2016-09-19 199 mem_map >>= ROCIT_CONFIG_GEN1_MEMMAP_SHIFT;
0051fc2e7b8450 Paul Burton 2016-09-19 200 } else {
0051fc2e7b8450 Paul Burton 2016-09-19 201 /* if not using ROCit, presume the v1 memory map */
0051fc2e7b8450 Paul Burton 2016-09-19 202 mem_map = MEM_MAP_V1;
0051fc2e7b8450 Paul Burton 2016-09-19 203 }
0051fc2e7b8450 Paul Burton 2016-09-19 204 if (mem_map > MEM_MAP_V2)
0051fc2e7b8450 Paul Burton 2016-09-19 205 panic("Unsupported physical memory map v%u detected",
0051fc2e7b8450 Paul Burton 2016-09-19 206 (unsigned int)mem_map);
0051fc2e7b8450 Paul Burton 2016-09-19 207
e81a8c7dabac05 Paul Burton 2015-09-22 208 /* append memory to the DT */
e81a8c7dabac05 Paul Burton 2015-09-22 209 mem_off = fdt_add_subnode(fdt, root_off, "memory");
e81a8c7dabac05 Paul Burton 2015-09-22 210 if (mem_off < 0)
e81a8c7dabac05 Paul Burton 2015-09-22 211 panic("Unable to add memory node to DT: %d", mem_off);
e81a8c7dabac05 Paul Burton 2015-09-22 212
e81a8c7dabac05 Paul Burton 2015-09-22 213 err = fdt_setprop_string(fdt, mem_off, "device_type", "memory");
e81a8c7dabac05 Paul Burton 2015-09-22 214 if (err)
e81a8c7dabac05 Paul Burton 2015-09-22 215 panic("Unable to set memory node device_type: %d", err);
e81a8c7dabac05 Paul Burton 2015-09-22 216
0051fc2e7b8450 Paul Burton 2016-09-19 217 mem_entries = gen_fdt_mem_array(mem_array, physical_memsize, mem_map);
e81a8c7dabac05 Paul Burton 2015-09-22 218 err = fdt_setprop(fdt, mem_off, "reg", mem_array,
e81a8c7dabac05 Paul Burton 2015-09-22 219 mem_entries * 2 * sizeof(mem_array[0]));
e81a8c7dabac05 Paul Burton 2015-09-22 220 if (err)
e81a8c7dabac05 Paul Burton 2015-09-22 221 panic("Unable to set memory regs property: %d", err);
e81a8c7dabac05 Paul Burton 2015-09-22 222
0051fc2e7b8450 Paul Burton 2016-09-19 223 mem_entries = gen_fdt_mem_array(mem_array, memsize, mem_map);
e81a8c7dabac05 Paul Burton 2015-09-22 224 err = fdt_setprop(fdt, mem_off, "linux,usable-memory", mem_array,
e81a8c7dabac05 Paul Burton 2015-09-22 225 mem_entries * 2 * sizeof(mem_array[0]));
e81a8c7dabac05 Paul Burton 2015-09-22 226 if (err)
e81a8c7dabac05 Paul Burton 2015-09-22 227 panic("Unable to set linux,usable-memory property: %d", err);
e81a8c7dabac05 Paul Burton 2015-09-22 228 }
e81a8c7dabac05 Paul Burton 2015-09-22 229
:::::: The code at line 92 was first introduced by commit
:::::: e81a8c7dabac05d444eda315ff1a747b0fe38396 MIPS: Malta: Setup RAM regions via DT
:::::: TO: Paul Burton <paul.burton(a)imgtec.com>
:::::: CC: Ralf Baechle <ralf(a)linux-mips.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
dtbs_check: arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: adreno@fdb00000: status:0: 'ok' is not one of ['okay', 'disabled', 'reserved']
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 871bfa02d08d9c0ed981c50082b7afd367d3700b
commit: 4389eeac4867d0fd906cdaf17bf84d4a8681f59c ARM: dts: qcom: msm8974-klte: add support for GPU
date: 12 months ago
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce: make ARCH=arm dtbs_check
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
dtcheck warnings: (new ones prefixed by >>)
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: tcsr-mutex: 'reg' is a required property
From schema: Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: tcsr-mutex: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: memory@fc428000: 'device_type' is a required property
From schema: /usr/local/lib/python3.9/dist-packages/dtschema/schemas/memory.yaml
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: vadc@3100: 'die_temp', 'ref_1250v', 'ref_625mv', 'ref_buf_625mv', 'ref_gnd', 'ref_vdd' do not match any of the regexes: '^.*@[0-9a-f]+$', 'pinctrl-[0-9]+'
From schema: Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.yaml
arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: ocmem@fdd00000: 'ranges' is a required property
From schema: Documentation/devicetree/bindings/sram/qcom,ocmem.yaml
>> arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml: adreno@fdb00000: status:0: 'ok' is not one of ['okay', 'disabled', 'reserved']
From schema: /usr/local/lib/python3.9/dist-packages/dtschema/schemas/dt-core.yaml
schemas/input/input.yaml: ignoring, error in schema: properties: power-off-time-sec
Traceback (most recent call last):
File "/usr/local/bin/dt-validate", line 170, in <module>
sg.check_trees(filename, testtree)
File "/usr/local/bin/dt-validate", line 119, in check_trees
self.check_subtree(dt, subtree, False, "/", "/", filename)
File "/usr/local/bin/dt-validate", line 110, in check_subtree
self.check_subtree(tree, value, disabled, name, fullname + name, filename)
File "/usr/local/bin/dt-validate", line 110, in check_subtree
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week