Jump to content

Falcounet

Members
  • Posts

    10
  • Joined

  • Last visited

  1. Yes, `compatible = "spidev"` is normally not allowed but armbian is applying a patch to allow it again but that doesn't work anymore. What did you discovered exactly ? Sure. EDIT : I didn't figured out there was a 2nd page before replying. Looks like you got it. Nice done !
  2. I think it's just a workaround for now. Something seems to be broken with kernel 5.15 but I couldn't understand what. It is still better to only modify the spidev overlay, I think. This way you could still control spidev using /boot/armbianEnv.txt
  3. I actually found a better fix for this by only modifying the spidev overlay (/boot/dts/allwinner/overlays/sun50i-h5-spi-spidev.dtbo in my case). compatible = "spidev"; seems to not work anymore while compatible = "rohm,dh2228fv"; works. I have a board with an Allwinner H5 SoC so I dig a bit more and found there is spi-sun4i.c and spi-sun6i.c drivers. I found out that none of these drivers seems to be used (There are no spi-sun*i.ko in /lib/modules/5.15.32-sunxi64/kernel/drivers/spi ) while CONFIG_SPI_SUN4I and CONFIG_SPI_SUN6I are set to y, is this normal ? I also found out of_device_id are defined there (See here and here ). Should we add these IDs in the spidev_dt_ids[] list of spidev.c ?
  4. Doing what is explained in this post make it to work but spidev isn't anymore controlled through /boot/armbianEnv.conf file but the DT. I used the "quick and dirty" fix for now by using "rohm,dh2228fv" which is already in the spidev_dt_ids[] list and avoid me creating a new build with a patch to modify drivers/spi/spidev.c So basically, I used armian-config to edit the Device Tree (System => Dtc), Browse the DT over soc => spi@1c68000 And I added these lines : spi@1c68000 { ... spidev@0x00 { compatible = "rohm,dh2228fv"; spi-max-frequency = <100000000>; reg = <0x00>; }; } And the same for the second SPI controller : spi@1c69000 { ... spidev@0x00 { compatible = "rohm,dh2228fv"; spi-max-frequency = <100000000>; reg = <0x00>; }; } I also had to remove the spidev stuff from /boot/armbianEnv.conf (No spi-spidev overlay) This way, I get two SPI devices and the SBC is working again with 5.15 kernel : # ls /dev/ | grep spi spidev0.0 spidev1.0
  5. Do you have any hint on what to look at to try to fix that issue ? I might invest some time on it (and hopefully also get some more knowledge about these things)
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines