SPI and SPIDev on Edge/Captain

I am trying to get SPI3 working on the Edge+Captain. I am using Ubuntu server 18.04.5 kernel 4.4.194 originally built with Fenix.
I have added this to the rk3399-khadas-captain-linux.dts device tree:

&spi3 {         
    status = "okay";
    spidev@0 {                                    
        compatible = "rockchip,spidev";  
        spi-max-frequency = <1000000>;  
        reg = <0>;                  
        status = "okay";           

I get this in dmesg:

[    2.576890] rockchip-spi ff350000.spi: Failed to request TX DMA channel
[    2.577498] rockchip-spi ff350000.spi: Failed to request RX DMA channel
[    2.578099] rockchip-spi ff350000.spi: no high_speed pinctrl state
[    2.578835] rockchip-spi ff350000.spi: registered master spi32766 (dynamic)
[    2.578967] spi spi32766.0: setup mode 0, 8 bits/w, 1000000 Hz max --> 0
[    2.579286] rockchip-spi ff350000.spi: registered child spi32766.0
[    2.965892] rockchip-pinctrl pinctrl: pin gpio1-18 already requested by ff350000.spi; cannot claim for 4-001b
[  150.284407] rockchip-spi ff350000.spi: cr0 0x42c01, div 98

/dev/spidev32766.0 shows up (is there a reason its not spidev3.0?) but when I write to it nothing shows up on the logic analyzer.
Is there something I am missing?


@ianwhamilton I’ve had this problem with Android. I don’t know if Ubuntu has this problem. You can try it

 &pmu_io_domains {
        status = "okay";
-       pmu1830-supply = <&vcc_3v0>;
+       pmu1830-supply = <&vcc_1v8>;

Thanks for the reply. I will try it later and post the results.