I am not sure if the dts part contribute to your u-boot case.
Usually the SSD case is detected or not. In some rare case, for e.g. you are using Intel Octane M20 which basically combining two storage device on the same m.2 pcb, it would require bifurcation to recognize both octane memory and ssd correctly.
For the bifurcation, of course I am happy to share!
In my case, I’ve edited
./linux/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
You will need to modify the following nodes:-
&pcie30phy {
rockchip,pcie30-phymode = <PHY_MODE_PCIE_NANBNB>; /* 3 modes available, x4, x2+x2, x1+x1+x1+x1*/
status = “okay”;
};
&pcie3x2 {
reset-gpios = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>; /* check your gpio pin for prst*/
vpcie3v3-supply = <&vcc3v3_pcie30>;
rockchip,perst-inactive-ms = <1000>;
supports-clkreq;
max-link-speed = <3>; /* PCIe speed */
status = “okay”;
};
&pcie3x4 {
num-lanes = <2>; /* limit lanes for 2x+2x bifurcation*/
reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; /* check your gpio pin for prst*/
vpcie3v3-supply = <&vcc3v3_pcie30>;
rochchip,perst-inactive-ms = <1000>;
supports-clkreq;
max-link-speed = <3>;
status = “okay”;
};