Hello all. I'm running Ubuntu 24.04 LTS on a 4B pi.
I'm trying to add 3 more CS lines to spi0. I've seen samples and I thought I had it correct but I keep seeing:
2025-06-15T01:07:16.675845-04:00 ubuntuPI kernel: spi spi0.2: setup: only two native chip-selects are supported
2025-06-15T01:07:16.675862-04:00 ubuntuPI kernel: spi_master spi0: Failed to setup device: -22
2025-06-15T01:07:16.675865-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: can't setup spi0.2, status -22
2025-06-15T01:07:16.689909-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@2
2025-06-15T01:07:16.689937-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@2'
2025-06-15T01:07:16.703537-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@2
2025-06-15T01:07:16.708443-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: cs3 >= max 3
2025-06-15T01:07:16.708463-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@3
2025-06-15T01:07:16.723221-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@3'
2025-06-15T01:07:16.723242-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@3
2025-06-15T01:07:16.742191-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: cs4 >= max 3
2025-06-15T01:07:16.742205-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@4
2025-06-15T01:07:16.742215-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@4'
2025-06-15T01:07:16.749368-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@4
2025-06-15T01:17:11.700028-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/gpio@7e200000/spi0_cs_pins/brcm,pins
2025-06-15T01:17:11.700065-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/spi@7e204000/cs-gpios
2025-06-15T01:17:11.700069-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/spi@7e204000/status
ngtw16a@ubuntuPI:/boot/firmware/overlays$
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2711";
fragment@0 {
target = <&spi0_cs_pins>;
frag0: __overlay__ {
brcm,pins = <8 7 1 5 6>;
};
};
fragment@1 {
target = <&spi0>;
frag1: __overlay__ {
#address-cells = <1>;
#size-cells = <0>;
cs-gpios = <&gpio 8 1>, <&gpio 7 1>, <&gpio 1 1>, <&gpio 5 1>, <&gpio 6 1>;
status = "okay";
spidev0_2: spidev@2 {
compatible = "spidev";
reg = <2>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
spidev0_3: spidev@3 {
compatible = "spidev";
reg = <3>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
spidev0_4: spidev@4 {
compatible = "spidev";
reg = <4>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
};
};
};
I've searched forums and see others have this working. What did I do wrong???
here is my config.txt spi stuff:
# *** SPI ***
dtparam=spi=on
dtoverlay=spi0-2cs
dtoverlay=spi0-cs-extend
what the heck am I doing wrong??????
I'm trying to add 3 more CS lines to spi0. I've seen samples and I thought I had it correct but I keep seeing:
2025-06-15T01:07:16.675845-04:00 ubuntuPI kernel: spi spi0.2: setup: only two native chip-selects are supported
2025-06-15T01:07:16.675862-04:00 ubuntuPI kernel: spi_master spi0: Failed to setup device: -22
2025-06-15T01:07:16.675865-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: can't setup spi0.2, status -22
2025-06-15T01:07:16.689909-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@2
2025-06-15T01:07:16.689937-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@2'
2025-06-15T01:07:16.703537-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@2
2025-06-15T01:07:16.708443-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: cs3 >= max 3
2025-06-15T01:07:16.708463-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@3
2025-06-15T01:07:16.723221-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@3'
2025-06-15T01:07:16.723242-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@3
2025-06-15T01:07:16.742191-04:00 ubuntuPI kernel: spi-bcm2835 fe204000.spi: cs4 >= max 3
2025-06-15T01:07:16.742205-04:00 ubuntuPI kernel: spi_master spi0: spi_device register error /soc/spi@7e204000/spidev@4
2025-06-15T01:07:16.742215-04:00 ubuntuPI kernel: of_spi_notify: failed to create for '/soc/spi@7e204000/spidev@4'
2025-06-15T01:07:16.749368-04:00 ubuntuPI kernel: OF: changeset notifier error @/soc/spi@7e204000/spidev@4
2025-06-15T01:17:11.700028-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/gpio@7e200000/spi0_cs_pins/brcm,pins
2025-06-15T01:17:11.700065-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/spi@7e204000/cs-gpios
2025-06-15T01:17:11.700069-04:00 ubuntuPI kernel: OF: overlay: WARNING: memory leak will occur if overlay removed, property: /soc/spi@7e204000/status
ngtw16a@ubuntuPI:/boot/firmware/overlays$
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2711";
fragment@0 {
target = <&spi0_cs_pins>;
frag0: __overlay__ {
brcm,pins = <8 7 1 5 6>;
};
};
fragment@1 {
target = <&spi0>;
frag1: __overlay__ {
#address-cells = <1>;
#size-cells = <0>;
cs-gpios = <&gpio 8 1>, <&gpio 7 1>, <&gpio 1 1>, <&gpio 5 1>, <&gpio 6 1>;
status = "okay";
spidev0_2: spidev@2 {
compatible = "spidev";
reg = <2>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
spidev0_3: spidev@3 {
compatible = "spidev";
reg = <3>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
spidev0_4: spidev@4 {
compatible = "spidev";
reg = <4>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <125000000>;
};
};
};
};
I've searched forums and see others have this working. What did I do wrong???
here is my config.txt spi stuff:
# *** SPI ***
dtparam=spi=on
dtoverlay=spi0-2cs
dtoverlay=spi0-cs-extend
what the heck am I doing wrong??????
Statistics: Posted by ngtw16a — Sun Jun 15, 2025 6:12 am