I got the ROCK 5 ITX+ on the marketing promise that I can use a PCIe-to-SATA adapter to connect my SATA SSDs (the aim is to have a more power efficient NAS than the AMD x86 machine I’ve been using and allow me to only turn the latter on when I need more compute power).
I’ve tried
- the very old image of RadxaOS that ROOBI offers to install (Debian 11, kernel 5.10)
- upgraded that image to Debian 12 and vendor kernel 6.1
- the latest RadxaOS Debian 12, kernel 6.1 image linked in the Rock 5 ITX manual online
- Armbian Trixie with the vendor kernel 6.1, mainline kernel 6.12 and mainline kernel 6.18rc6
- the Armbian dedicated image with OMV on Debian bookworm and kernel 6.12 (https://dl.armbian.com/rock-5-itx/Bookworm_vendor_minimal-omv)
In almost all of them, lspci never lists the ASM1166 device and consequently I cannot access my drives. Only on the dedicated Armbian OMV image it did work briefly yesterday evening, but today the device was not detected anymore again.
Here’s what `dmesg|grep pcie` outputs for the error, apparently that’s suggesting some kind of error in the device tree? (this is from RadxaOS, Armbian has errors that look pretty similar to me, happy to post those as well if that would be helpful - ideally I’d prefer to run Armbian, but ready to use what I need to get at least basic functionality working)
[ 12.885468] rk-pcie fe180000.pcie: invalid prsnt-gpios property in node
[ 12.885479] rk-pcie fe180000.pcie: Looking up vpcie3v3-supply from device tree
[ 12.885635] rk-pcie fe150000.pcie: invalid prsnt-gpios property in node
[ 12.885641] rk-pcie fe150000.pcie: Looking up vpcie3v3-supply from device tree
[ 12.885819] rk-pcie fe160000.pcie: invalid prsnt-gpios property in node
[ 12.885825] rk-pcie fe160000.pcie: Looking up vpcie3v3-supply from device tree
[ 12.885960] rk-pcie fe180000.pcie: missing legacy IRQ resource
[ 12.885978] rk-pcie fe180000.pcie: IRQ msi not found
[ 12.886007] rk-pcie fe170000.pcie: invalid prsnt-gpios property in node
[ 12.886016] rk-pcie fe180000.pcie: use outband MSI support
[ 12.886024] rk-pcie fe180000.pcie: Missing config reg space
[ 12.886027] rk-pcie fe170000.pcie: Looking up vpcie3v3-supply from device tree
[ 12.886061] rk-pcie fe180000.pcie: host bridge /pcie@fe180000 ranges:
[ 12.886089] rk-pcie fe180000.pcie: err 0x00f3000000..0x00f30fffff → 0x00f3000000
[ 12.886110] rk-pcie fe180000.pcie: IO 0x00f3100000..0x00f31fffff → 0x00f3100000
[ 12.886136] rk-pcie fe180000.pcie: MEM 0x00f3200000..0x00f3ffffff → 0x00f3200000
[ 12.886149] rk-pcie fe180000.pcie: MEM 0x09c0000000..0x09ffffffff → 0x09c0000000
[ 12.886185] rk-pcie fe180000.pcie: Missing config reg space
[ 12.886230] rk-pcie fe180000.pcie: invalid resource
[ 12.891284] rk-pcie fe170000.pcie: missing legacy IRQ resource
[ 12.891300] rk-pcie fe170000.pcie: IRQ msi not found
[ 12.891333] rk-pcie fe170000.pcie: use outband MSI support
[ 12.891340] rk-pcie fe170000.pcie: Missing config reg space
[ 12.891366] rk-pcie fe170000.pcie: host bridge /pcie@fe170000 ranges:
[ 12.891391] rk-pcie fe170000.pcie: err 0x00f2000000..0x00f20fffff → 0x00f2000000
[ 12.891409] rk-pcie fe170000.pcie: IO 0x00f2100000..0x00f21fffff → 0x00f2100000
[ 12.891433] rk-pcie fe170000.pcie: MEM 0x00f2200000..0x00f2ffffff → 0x00f2200000
[ 12.891446] rk-pcie fe170000.pcie: MEM 0x0980000000..0x09bfffffff → 0x0980000000
[ 12.891477] rk-pcie fe170000.pcie: Missing config reg space
[ 12.891519] rk-pcie fe170000.pcie: invalid resource
[ 12.902007] rk-pcie fe150000.pcie: missing legacy IRQ resource
[ 12.902017] rk-pcie fe150000.pcie: IRQ msi not found
[ 12.902028] rk-pcie fe150000.pcie: use outband MSI support
[ 12.902030] rk-pcie fe150000.pcie: Missing config reg space
[ 12.902040] rk-pcie fe150000.pcie: host bridge /pcie@fe150000 ranges:
[ 12.902051] rk-pcie fe150000.pcie: err 0x00f0000000..0x00f00fffff → 0x00f0000000
[ 12.902059] rk-pcie fe150000.pcie: IO 0x00f0100000..0x00f01fffff → 0x00f0100000
[ 12.902068] rk-pcie fe150000.pcie: MEM 0x00f0200000..0x00f0ffffff → 0x00f0200000
[ 12.902074] rk-pcie fe150000.pcie: MEM 0x0900000000..0x093fffffff → 0x0900000000
[ 12.902084] rk-pcie fe160000.pcie: missing legacy IRQ resource
[ 12.902093] rk-pcie fe160000.pcie: IRQ msi not found
[ 12.902099] rk-pcie fe150000.pcie: Missing config reg space
[ 12.902108] rk-pcie fe160000.pcie: use outband MSI support
[ 12.902110] rk-pcie fe160000.pcie: Missing config reg space
[ 12.902121] rk-pcie fe160000.pcie: host bridge /pcie@fe160000 ranges:
[ 12.902123] rk-pcie fe150000.pcie: invalid resource
[ 12.902138] rk-pcie fe160000.pcie: err 0x00f1000000..0x00f10fffff → 0x00f1000000
[ 12.902145] rk-pcie fe160000.pcie: IO 0x00f1100000..0x00f11fffff → 0x00f1100000
[ 12.902154] rk-pcie fe160000.pcie: MEM 0x00f1200000..0x00f1ffffff → 0x00f1200000
[ 12.902159] rk-pcie fe160000.pcie: MEM 0x0940000000..0x097fffffff → 0x0940000000
[ 12.902183] rk-pcie fe160000.pcie: Missing config reg space
[ 12.902209] rk-pcie fe160000.pcie: invalid resource
[ 13.096850] rk-pcie fe170000.pcie: PCIe Linking… LTSSM is 0x3
[ 13.106809] rk-pcie fe160000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.106812] rk-pcie fe150000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.122385] rk-pcie fe170000.pcie: PCIe Linking… LTSSM is 0x3
[ 13.132360] rk-pcie fe150000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.149050] rk-pcie fe170000.pcie: PCIe Linking… LTSSM is 0x3
[ 13.149056] rk-pcie fe180000.pcie: PCIe Link up, LTSSM is 0x130011
[ 13.149239] rk-pcie fe180000.pcie: PCI host bridge to bus 0003:30
[ 13.159025] rk-pcie fe160000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.159027] rk-pcie fe150000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.185691] rk-pcie fe160000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.185693] rk-pcie fe150000.pcie: PCIe Linking… LTSSM is 0x0
[ 13.189108] pcieport 0003:30:00.0: PME: Signaling with IRQ 142
[ 13.232388] rk-pcie fe170000.pcie: PCIe Link up, LTSSM is 0x130011
[ 13.232562] rk-pcie fe170000.pcie: PCI host bridge to bus 0002:20
[ 13.263846] pcieport 0002:20:00.0: PME: Signaling with IRQ 152
[ 13.852903] vcc3v3_pcie2x1l2: 3300 mV, enabled
[ 13.852976] reg-fixed-voltage vcc3v3-pcie2x1l2: Looking up vin-supply from device tree
[ 13.852983] vcc3v3_pcie2x1l2: supplied by vcc_3v3_s3
[ 13.853315] reg-fixed-voltage vcc3v3-pcie2x1l2: vcc3v3_pcie2x1l2 supplying 3300000uV
[ 13.869482] rk-pcie fe190000.pcie: invalid prsnt-gpios property in node
[ 13.869493] rk-pcie fe190000.pcie: Looking up vpcie3v3-supply from device tree
[ 13.870345] rk-pcie fe190000.pcie: missing legacy IRQ resource
[ 13.870362] rk-pcie fe190000.pcie: IRQ msi not found
[ 13.870494] rk-pcie fe190000.pcie: use outband MSI support
[ 13.870501] rk-pcie fe190000.pcie: Missing config reg space
[ 13.870629] rk-pcie fe190000.pcie: host bridge /pcie@fe190000 ranges:
[ 13.870662] rk-pcie fe190000.pcie: err 0x00f4000000..0x00f40fffff → 0x00f4000000
[ 13.870679] rk-pcie fe190000.pcie: IO 0x00f4100000..0x00f41fffff → 0x00f4100000
[ 13.870701] rk-pcie fe190000.pcie: MEM 0x00f4200000..0x00f4ffffff → 0x00f4200000
[ 13.870714] rk-pcie fe190000.pcie: MEM 0x0a00000000..0x0a3fffffff → 0x0a00000000
[ 13.870760] rk-pcie fe190000.pcie: Missing config reg space
[ 13.870972] rk-pcie fe190000.pcie: invalid resource
[ 14.132506] rk-pcie fe190000.pcie: PCIe Link up, LTSSM is 0x130011
[ 14.132769] rk-pcie fe190000.pcie: PCI host bridge to bus 0004:40
[ 14.167062] pcieport 0004:40:00.0: PME: Signaling with IRQ 179
[ 15.789077] rk-pcie fe160000.pcie: PCIe Link Fail
[ 15.789255] rk-pcie fe160000.pcie: failed to initialize host
[ 15.875912] rk-pcie fe150000.pcie: PCIe Link Fail
[ 15.876151] rk-pcie fe150000.pcie: failed to initialize host
[ 15.876934] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply from device tree
[ 15.876975] rockchip-pm-domain fd8d8000.power-management:power-controller: Looking up pcie-supply property in node /power-management@fd8d8000/power-controller failed
I’ve tried the adapter in the 2280/2260/2242/2230 slot as well as the 2280/22110 slot, didn’t seem to make a difference (for what it’s worth, the one time it worked it was in the smaller 2280/2260… slot; ideally I’d like to use the 2280/22110 slot for the SATA adapter though).
The adapter is also recognised without issues on my x86 machine, so I don’t think it’s hardware failure.
I’ve tried powering the barrel port on the mainboard (could only power this through a USB-C PD adapter, hence up to 12V 3A, but that should probably be enough - power draw is solidly below 15W as far as I can see, and in my current setup the SATA SSDs aren’t even powered when I use the barrel plug) and with a picoPSU plugged into the mainboard, powered by a 12V 5A PSU (in this config, the SSDs are connected to SATA power). I think that should rule out power problems?
I’ve found some discussion regarding the original Rock 5 ITX and problems with SATA, but wasn’t sure if they directly apply to my setup on the ITX+ (also my understanding that those issues where on older mainline kernels and people reported that their SATA was working on recent kernels).
Since I couldn’t find other recent discussions that seemed relevant and since the use of these adapters is explicitly advertised by Radxa in their material for the Rock 5 ITX+, I’m wondering if I’m just overlooking some simple configuration aspect?
ChatGPT sent me on a quest of building overlays, but so far without success (also, I don’t really understand what I’m doing there). Is there a simple, provided overlay I need to activate? The ones I could find preinstalled didn’t seem to be relevant, but certainly possible that I’ve overlooked something.
Any advice would be much appreciated - if I’m just making a stupid, easy to fix mistake, all the better. I’d hate to have spent 200€ on a device that can’t even fulfill one of it’s basic marketing promises (although apparently that’s not unheard of for ARM devices, including from Radxa…).
PS: In case this is relevant, an NVME SSD is working fine in either of the 2 m.2 m-key slots.
PPS: Here’s a link to a discussion about the SATA problem regarding the plain Rock 5 ITX and a claim that those problems don’t affect the ITX+: Fixing the problem with PCIe/SATA on Rock 5 ITX - #18 by sdyspb
Therefore, I’m not sure whether any of that applies to my problems. I’d also be somewhat hesitant to let my soldering skills loose on a brand new board in the hope that it’ll still work fine afterwards.