This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM6411: am6411, u-boot : add pci support

Part Number: AM6411

Hi,

I'm trying to add pci support on u-boot to use Renesas uPD720201 and want to ask what's wrong with my approach.

I'm using ti-processor-sdk-linux-am64xx-evm-09.02.01.10 and my custom board has 512MB ram. Because the ram size is small, I can't upgrade to the latest sdk. When the new sdk version supports 512MB ram, I'll upgrade to the newer sdk version.

To support pci, I did

1) ti-u-boot-2023.04+gitAUTOINC+8366064208/configs/am64x_evm_a53_defconfig : add config

    CONFIG_CMD_PCI=y

    CONFIG_PCI=y

    CONFIG_PCIE_DW_COMMON=y
    CONFIG_PCI_KEYSTONE=y

    CONFIG_AM654_PHY=y

    CONFIG_USB_XHCI_PCI=y

2) ti-u-boot-2023.04+gitAUTOINC+8366064208/arch/arm/dts/k3-am642-evm.dts : add compatible string

&serdes0 {
    serdes0_pcie_link: phy@0 {
        reg = <0>;
        cdns,num-lanes = <1>;
        #phy-cells = <0>;
        cdns,phy-type = <PHY_TYPE_PCIE>;
        resets = <&serdes_wiz0 1>;
    };
};

&pcie0_rc {
    /* u-boot : pcie_dw_ti.c */
    compatible = "ti,am654-pcie-rc"; 
    status = "okay";
    reset-gpios = <&main_gpio1 36 GPIO_ACTIVE_HIGH>;
    phys = <&serdes0_pcie_link>;
    phy-names = "pcie-phy";
    num-lanes = <1>;
};

But I get empty results:

=> mw.l 0x0060103c 0x00000010 // gpio1_36 reset
=> mw.l 0x00601038 0x00000010 // gpio1_36 reset
=> pci enum
=> pci

And for "dm tree"

=> dm tree

nop           1  [   ]   phy-j721e-wiz         |   |-- wiz@f000000
phy           0  [   ]   cdns,torrent          |   |   `-- serdes@f000000

pci           0  [   ]   pcie_dw_ti            |   |-- pcie@f102000

I don't see "+" for pci and serdes.

I would greatly appreciate what's wrong with my approach.

Best Regards,

Hugh Chang