QSPI for ATSAME51 #flash
Theo Hussey
Hi, soc {
qspi0: qspi@42003400 {
compatible = "atmel,sam0-qspi";
reg = <0x42003400 0x40>;
interrupts = <134 0>;
status = "okay";
label = "QSPI_0";
clocks = <&mclk 0x10 13>, <&mclk 0x10 21>, <&mclk 0x1C 13>;
clock-names = "QSPI_AHB_Clock", "QSPI_2X_AHB_Clock", "QSPI_APB_Clock";
#address-cells = <1>;
#size-cells = <0>;
};
};
};
&qspi0 {
gd25q16: gd25q16c@0 {
compatible = "jedec,spi-nor";
label = "GD25Q16C";
reg = <0>;
spi-max-frequency = <80000000>;
size = <0x200000>;
has-be32k;
has-dpd;
t-enter-dpd = <20000>;
t-exit-dpd = <100000>;
jedec-id = [c8 40 15];
};
};
92/128] Building C object zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/spi_nor.c.obj FAILED: zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/spi_nor.c.obj /home/theo/zephyr-sdk-0.11.4/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc -DBUILD_VERSION=zephyr-v2.4.0 -DKERNEL -D_FORTIFY_SOURCE=2 -D__PROGRAM_START -D__ZEPHYR_SUPERVISOR__ -D__ZEPHYR__=1 -I/home/theo/source/zephyr/zephyrproject/zephyr/include -Izephyr/include/generated -I/home/theo/source/zephyr/zephyrproject/zephyr/soc/arm/atmel_sam0/same54 -I/home/theo/source/zephyr/zephyrproject/zephyr/drivers -I/home/theo/source/zephyr/zephyrproject/zephyr/soc/arm/atmel_sam0/common/. -I/home/theo/source/zephyr/zephyrproject/modules/hal/cmsis/CMSIS/Core/Include -I/home/theo/source/zephyr/zephyrproject/modules/hal/atmel/asf/sam0/include/same54 -I/home/theo/source/zephyr/zephyrproject/zephyr/drivers/spi -isystem /home/theo/source/zephyr/zephyrproject/zephyr/lib/libc/minimal/include -isystem /home/theo/zephyr-sdk-0.11.4/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/9.2.0/include -isystem /home/theo/zephyr-sdk-0.11.4/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/9.2.0/include-fixed -Os -imacros /home/theo/source/zephyr/obc-watchdog/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -mcpu=cortex-m4 -mthumb -mabi=aapcs -imacros /home/theo/source/zephyr/zephyrproject/zephyr/include/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-main -Wno-pointer-sign -Wpointer-arith -Wno-address-of-packed-member -Wno-unused-but-set-variable -Werror=implicit-int -fno-asynchronous-unwind-tables -fno-pie -fno-pic -fno-strict-overflow -fno-reorder-functions -fno-defer-pop -fmacro-prefix-map=/home/theo/source/zephyr/obc-watchdog=CMAKE_SOURCE_DIR -fmacro-prefix-map=/home/theo/source/zephyr/zephyrproject/zephyr=ZEPHYR_BASE -fmacro-prefix-map=/home/theo/source/zephyr/zephyrproject=WEST_TOPDIR -ffunction-sections -fdata-sections -std=c99 -nostdinc -MD -MT zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/spi_nor.c.obj -MF zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/spi_nor.c.obj.d -o zephyr/drivers/flash/CMakeFiles/drivers__flash.dir/spi_nor.c.obj -c /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c In file included from /home/theo/source/zephyr/zephyrproject/zephyr/include/arch/arm/aarch32/arch.h:20, from /home/theo/source/zephyr/zephyrproject/zephyr/include/arch/cpu.h:19, from /home/theo/source/zephyr/zephyrproject/zephyr/include/kernel_includes.h:38, from /home/theo/source/zephyr/zephyrproject/zephyr/include/kernel.h:17, from /home/theo/source/zephyr/zephyrproject/zephyr/include/init.h:11, from /home/theo/source/zephyr/zephyrproject/zephyr/include/device.h:22, from /home/theo/source/zephyr/zephyrproject/zephyr/include/drivers/flash.h:26, from /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:13: /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c: In function 'spi_nor_configure': zephyr/include/generated/devicetree_unfixed.h:4014:35: error: 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_BUS_P_label' undeclared (first use in this function); did you mean 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_label'? 4014 | #define DT_N_INST_0_jedec_spi_nor DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1911:38: note: in definition of macro 'DT_CAT' 1911 | #define DT_CAT(node_id, prop_suffix) node_id##prop_suffix | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1382:31: note: in expansion of macro 'DT_PROP' 1382 | #define DT_BUS_LABEL(node_id) DT_PROP(DT_BUS(node_id), label) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1375:25: note: in expansion of macro 'DT_CAT' 1375 | #define DT_BUS(node_id) DT_CAT(node_id, _BUS) | ^~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1382:39: note: in expansion of macro 'DT_BUS' 1382 | #define DT_BUS_LABEL(node_id) DT_PROP(DT_BUS(node_id), label) | ^~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1721:33: note: in expansion of macro 'DT_BUS_LABEL' 1721 | #define DT_INST_BUS_LABEL(inst) DT_BUS_LABEL(DT_DRV_INST(inst)) | ^~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:106:36: note: in expansion of macro 'DT_N_INST_0_jedec_spi_nor' 106 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__ | ^ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:105:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT' 105 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:297:31: note: in expansion of macro 'UTIL_CAT' 297 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat)) | ^~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1426:27: note: in expansion of macro 'DT_INST' 1426 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1721:46: note: in expansion of macro 'DT_DRV_INST' 1721 | #define DT_INST_BUS_LABEL(inst) DT_BUS_LABEL(DT_DRV_INST(inst)) | ^~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:838:33: note: in expansion of macro 'DT_INST_BUS_LABEL' 838 | data->spi = device_get_binding(DT_INST_BUS_LABEL(0)); | ^~~~~~~~~~~~~~~~~ zephyr/include/generated/devicetree_unfixed.h:4014:35: note: each undeclared identifier is reported only once for each function it appears in 4014 | #define DT_N_INST_0_jedec_spi_nor DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1911:38: note: in definition of macro 'DT_CAT' 1911 | #define DT_CAT(node_id, prop_suffix) node_id##prop_suffix | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1382:31: note: in expansion of macro 'DT_PROP' 1382 | #define DT_BUS_LABEL(node_id) DT_PROP(DT_BUS(node_id), label) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1375:25: note: in expansion of macro 'DT_CAT' 1375 | #define DT_BUS(node_id) DT_CAT(node_id, _BUS) | ^~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1382:39: note: in expansion of macro 'DT_BUS' 1382 | #define DT_BUS_LABEL(node_id) DT_PROP(DT_BUS(node_id), label) | ^~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1721:33: note: in expansion of macro 'DT_BUS_LABEL' 1721 | #define DT_INST_BUS_LABEL(inst) DT_BUS_LABEL(DT_DRV_INST(inst)) | ^~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:106:36: note: in expansion of macro 'DT_N_INST_0_jedec_spi_nor' 106 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__ | ^ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:105:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT' 105 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:297:31: note: in expansion of macro 'UTIL_CAT' 297 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat)) | ^~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1426:27: note: in expansion of macro 'DT_INST' 1426 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1721:46: note: in expansion of macro 'DT_DRV_INST' 1721 | #define DT_INST_BUS_LABEL(inst) DT_BUS_LABEL(DT_DRV_INST(inst)) | ^~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:838:33: note: in expansion of macro 'DT_INST_BUS_LABEL' 838 | data->spi = device_get_binding(DT_INST_BUS_LABEL(0)); | ^~~~~~~~~~~~~~~~~ zephyr/include/generated/devicetree_unfixed.h:4014:35: error: 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_spi_max_frequency' undeclared (first use in this function); did you mean 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_reg_IDX_0'? 4014 | #define DT_N_INST_0_jedec_spi_nor DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1911:38: note: in definition of macro 'DT_CAT' 1911 | #define DT_CAT(node_id, prop_suffix) node_id##prop_suffix | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:34: note: in expansion of macro 'DT_PROP' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:106:36: note: in expansion of macro 'DT_N_INST_0_jedec_spi_nor' 106 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__ | ^ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:105:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT' 105 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:297:31: note: in expansion of macro 'UTIL_CAT' 297 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat)) | ^~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1426:27: note: in expansion of macro 'DT_INST' 1426 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:42: note: in expansion of macro 'DT_DRV_INST' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:843:28: note: in expansion of macro 'DT_INST_PROP' 843 | data->spi_cfg.frequency = DT_INST_PROP(0, spi_max_frequency); | ^~~~~~~~~~~~ In file included from /home/theo/source/zephyr/zephyrproject/zephyr/include/toolchain.h:41, from /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/errno_private.h:10, from /home/theo/source/zephyr/zephyrproject/zephyr/lib/libc/minimal/include/errno.h:20, from /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:12: /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c: At top level: /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:982:1: error: static assertion failed: "jedec,spi-nor jedec-id required for non-runtime SFDP" 982 | BUILD_ASSERT(DT_INST_NODE_HAS_PROP(0, jedec_id), | ^~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:991:1: error: static assertion failed: "jedec,spi-nor size required for non-runtime SFDP page layout" 991 | BUILD_ASSERT(DT_INST_NODE_HAS_PROP(0, size), | ^~~~~~~~~~~~ zephyr/include/generated/devicetree_unfixed.h:4014:35: error: 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_size' undeclared here (not in a function); did you mean 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_reg'? 4014 | #define DT_N_INST_0_jedec_spi_nor DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:393:32: note: in expansion of macro 'DT_CAT' 393 | #define DT_PROP(node_id, prop) DT_CAT(node_id, _P_##prop) | ^~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:34: note: in expansion of macro 'DT_PROP' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:106:36: note: in expansion of macro 'DT_N_INST_0_jedec_spi_nor' 106 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__ | ^ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:105:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT' 105 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:297:31: note: in expansion of macro 'UTIL_CAT' 297 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat)) | ^~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1426:27: note: in expansion of macro 'DT_INST' 1426 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:42: note: in expansion of macro 'DT_DRV_INST' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:995:23: note: in expansion of macro 'DT_INST_PROP' 995 | #define INST_0_BYTES (DT_INST_PROP(0, size) / 8) | ^~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:1001:29: note: in expansion of macro 'INST_0_BYTES' 1001 | #define LAYOUT_PAGES_COUNT (INST_0_BYTES / CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE) | ^~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:1003:55: note: in expansion of macro 'LAYOUT_PAGES_COUNT' 1003 | BUILD_ASSERT((CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE * LAYOUT_PAGES_COUNT) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:1003:14: error: expression in static assertion is not an integer 1003 | BUILD_ASSERT((CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE * LAYOUT_PAGES_COUNT) | ^ In file included from /home/theo/source/zephyr/zephyrproject/zephyr/include/arch/arm/aarch32/arch.h:20, from /home/theo/source/zephyr/zephyrproject/zephyr/include/arch/cpu.h:19, from /home/theo/source/zephyr/zephyrproject/zephyr/include/kernel_includes.h:38, from /home/theo/source/zephyr/zephyrproject/zephyr/include/kernel.h:17, from /home/theo/source/zephyr/zephyrproject/zephyr/include/init.h:11, from /home/theo/source/zephyr/zephyrproject/zephyr/include/device.h:22, from /home/theo/source/zephyr/zephyrproject/zephyr/include/drivers/flash.h:26, from /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:13: zephyr/include/generated/devicetree_unfixed.h:4014:35: error: 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_jedec_id' undeclared here (not in a function); did you mean 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_reg'? 4014 | #define DT_N_INST_0_jedec_spi_nor DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1911:38: note: in definition of macro 'DT_CAT' 1911 | #define DT_CAT(node_id, prop_suffix) node_id##prop_suffix | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:34: note: in expansion of macro 'DT_PROP' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:106:36: note: in expansion of macro 'DT_N_INST_0_jedec_spi_nor' 106 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__ | ^ /home/theo/source/zephyr/zephyrproject/zephyr/include/sys/util_internal.h:105:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT' 105 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:297:31: note: in expansion of macro 'UTIL_CAT' 297 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat)) | ^~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1426:27: note: in expansion of macro 'DT_INST' 1426 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT) | ^~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/include/devicetree.h:1448:42: note: in expansion of macro 'DT_DRV_INST' 1448 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop) | ^~~~~~~~~~~ /home/theo/source/zephyr/zephyrproject/zephyr/drivers/flash/spi_nor.c:1030:14: note: in expansion of macro 'DT_INST_PROP' 1030 | .jedec_id = DT_INST_PROP(0, jedec_id), | ^~~~~~~~~~~~ [93/128] Building C object modules/qspi/CMakeFiles/..__..__obc-watchdog__drivers__qspi.dir/qspi_sam0.c.obj ../drivers/qspi/qspi_sam0.c:53:12: warning: 'qspi_sam0_configure' defined but not used [-Wunused-function] 53 | static int qspi_sam0_configure(const struct device *dev, const struct spi_config *config) | ^~~~~~~~~~~~~~~~~~~ [101/128] Building C object zephyr/kernel/CMakeFiles/kernel.dir/mailbox.c.obj ninja: build stopped: subcommand failed.
|
|
Bolivar, Marti
Hi Theo,
"Theo Hussey via lists.zephyrproject.org" <theo=open-cosmos.com@...> writes: Hi,There is an extra unmatched "};" here. I'm assuming that is just a copy/paste issue in this email? It looks like a syntax error. [snip] zephyr/include/generated/devicetree_unfixed.h:4014:35: error: 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_BUS_P_label' undeclared (first use in this function); did you mean 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_P_label'?I'm going to explain what this mess means for the sake of the list archives before getting to what I am guessing the problem is. 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_BUS_P_label' The 'DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0' part is the 'node identifier' for the gd25q16c@0 node. 'Node identifiers' are introduced here: https://docs.zephyrproject.org/latest/guides/dts/api-usage.html#node-identifiers The secret decoder ring for unpacking node identifiers is: - 'DT_N' -> 'devicetree node' - '_S_' -> '/' - all special characters become '_' So that: DT_N_S_soc_S_qspi_42003400_S_gd25q16c_0_BUS_P_label becomes: devicetree node /soc/qspi@42003400/gd25q16c@0 _BUS_P_label The trailing '_BUS_P_label' is just the devicetree API trying to figure out what the 'label' property of the bus node for /soc/qspi@42003400/gd25q16c@0 is. I also see: - 'qspi@42003400' does have a label property in your DTS, "QSPI_0" - its compatible, 'atmel,sam0-qspi', is not upstream So I'm guessing that the problem is: - you've got a custom binding for 'atmel,sam0-qspi', - it is a missing a 'bus: qspi' line Example binding with a 'bus: qspi' line: https://github.com/zephyrproject-rtos/zephyr/blob/master/dts/bindings/qspi/st%2Cstm32-qspi.yaml#L23 If that line is missing, please add it and try again. Otherwise please provide more details on your binding. Thanks and HTH, Martí
|
|