PCIe interface is not coming up with on Android 12 prebuilt and Built image on iMX8MM mini

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PCIe interface is not coming up with on Android 12 prebuilt and Built image on iMX8MM mini

1,698 Views
vinayharitsakp1
Contributor III

I have enabled all pci configurations in imx8mm.

PCI Configuration from running config:

evk_8mm:/ # zcat /proc/config.gz | grep "CONFIG_PCI"
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCIEAER=y
# CONFIG_PCIEAER_INJECT is not set
# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
# CONFIG_PCIE_DPC is not set
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
CONFIG_PCI_MSI_IRQ_DOMAIN=y
CONFIG_PCI_QUIRKS=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
# CONFIG_PCI_STUB is not set
# CONFIG_PCI_PF_STUB is not set
CONFIG_PCI_ATS=y
CONFIG_PCI_ECAM=y
CONFIG_PCI_IOV=y
# CONFIG_PCI_PRI is not set
# CONFIG_PCI_PASID is not set
# CONFIG_PCIE_BUS_TUNE_OFF is not set
CONFIG_PCIE_BUS_DEFAULT=y
# CONFIG_PCIE_BUS_SAFE is not set
# CONFIG_PCIE_BUS_PERFORMANCE is not set
# CONFIG_PCIE_BUS_PEER2PEER is not set
# CONFIG_PCI_FTPCI100 is not set
CONFIG_PCI_HOST_COMMON=y
CONFIG_PCI_HOST_GENERIC=y
# CONFIG_PCIE_XILINX is not set
# CONFIG_PCI_XGENE is not set
# CONFIG_PCIE_ALTERA is not set
# CONFIG_PCI_HOST_THUNDER_PEM is not set
# CONFIG_PCI_HOST_THUNDER_ECAM is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_DW_HOST=y
CONFIG_PCIE_DW_EP=y
CONFIG_PCIE_DW_PLAT=y
# CONFIG_PCIE_DW_PLAT_HOST is not set
CONFIG_PCIE_DW_PLAT_EP=y
# CONFIG_PCI_HISI is not set
CONFIG_PCIE_QCOM=y
CONFIG_PCIE_KIRIN=y
# CONFIG_PCIE_HISI_STB is not set
# CONFIG_PCI_MESON is not set
# CONFIG_PCIE_AL is not set
# CONFIG_PCIE_LAYERSCAPE_GEN4 is not set
# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
# CONFIG_PCIE_CADENCE_PLAT_EP is not set
# CONFIG_PCI_J721E_HOST is not set
# CONFIG_PCI_J721E_EP is not set
CONFIG_PCI_ENDPOINT=y
# CONFIG_PCI_ENDPOINT_CONFIGFS is not set
# CONFIG_PCI_EPF_TEST is not set
# CONFIG_PCI_SW_SWITCHTEC is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
# CONFIG_PCIPCWATCHDOG is not set
evk_8mm:/ #

i get only the following output.

127|evk_8mm:/ # dmesg | grep pci
[ 1.201756] ehci-pci: EHCI PCI platform driver
evk_8mm:/ #

evk_8mm:/ # lspci
evk_8mm:/ #

Please let me know your comments

Labels (1)
0 Kudos
7 Replies

1,586 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @vinayharitsakp1 

1.Please add below configs in imx8mm_gki.fragment

CONFIG_PHY_FSL_IMX_PCIE=m
CONFIG_PCI_IMX6=m

2.device/nxp/imx8m/evk_8mm/SharedBoardConfig.mk

$(KERNEL_OUT)/drivers/pci/controller/dwc/pci-imx6.ko \

3.Result

evk_8mm:/ # dmesg | grep pci
[    0.561609] ehci-pci: EHCI PCI platform driver
[    6.515345] imx6q-pcie 33800000.pcie: supply epdev_on not found, using dummy regulator
[    6.524925] imx6q-pcie 33800000.pcie: EXT REF_CLK is used!.
[    6.560211] imx6q-pcie 33800000.pcie: PCIe PLL locked after 20 us.
[    6.567328] imx6q-pcie 33800000.pcie: host bridge /soc@0/pcie@33800000 ranges:
[    6.584463] imx6q-pcie 33800000.pcie:       IO 0x001ff80000..0x001ff8ffff -> 0x0000000000
[    6.593833] imx6q-pcie 33800000.pcie:      MEM 0x0018000000..0x001fefffff -> 0x0018000000
[    6.603140] imx6q-pcie 33800000.pcie: invalid resource
[    6.708123] imx6q-pcie 33800000.pcie: Link up
[    6.713393] imx6q-pcie 33800000.pcie: Link up
[    6.718586] imx6q-pcie 33800000.pcie: Link up, Gen1
[    6.832372] imx6q-pcie 33800000.pcie: PCI host bridge to bus 0000:00
[    6.840023] pci_bus 0000:00: root bus resource [bus 00-ff]
[    6.846535] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    6.853805] pci_bus 0000:00: root bus resource [mem 0x18000000-0x1fefffff]
[    6.861601] pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400
[    6.868529] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
[    6.876439] pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]
[    6.884101] pci 0000:00:00.0: supports D1
[    6.888954] pci 0000:00:00.0: PME# supported from D0 D1 D3hot D3cold
[    6.899174] pci 0000:01:00.0: [1b4b:2b42] type 00 class 0x020000
[    6.906127] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit pref]
[    6.914221] pci 0000:01:00.0: reg 0x18: [mem 0x00000000-0x000fffff 64bit pref]
[    6.922740] pci 0000:01:00.0: supports D1 D2
[    6.927854] pci 0000:01:00.0: PME# supported from D0 D1 D3hot D3cold
[    6.935200] pci 0000:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0000:00:00.0 (capable of 4.000 Gb/s with 5.0 GT/s PCIe x1 link)
[    6.962608] pci 0000:00:00.0: BAR 0: assigned [mem 0x18000000-0x180fffff]
[    6.970251] pci 0000:00:00.0: BAR 15: assigned [mem 0x18100000-0x182fffff pref]
[    6.978426] pci 0000:00:00.0: BAR 6: assigned [mem 0x18300000-0x1830ffff pref]
[    6.986479] pci 0000:01:00.0: BAR 0: assigned [mem 0x18100000-0x181fffff 64bit pref]
[    7.001517] pci 0000:01:00.0: BAR 2: assigned [mem 0x18200000-0x182fffff 64bit pref]
[    7.010203] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    7.016271] pci 0000:00:00.0:   bridge window [mem 0x18100000-0x182fffff pref]
[    7.025830] pcieport 0000:00:00.0: PME: Signaling with IRQ 238
[    7.033786] pcieport 0000:00:00.0: AER: enabled with IRQ 238
0 Kudos

1,319 Views
vinayharitsakp1
Contributor III

Can you please share imx8mm_gki.fragment where pci had worked?

Tags (1)
0 Kudos

1,666 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @vinayharitsakp1 

Which verison of Android 12 you used?If you use Android 12.0.0_1.0.0, can you try the Android 12.0.0_2.0.0

0 Kudos

1,655 Views
vinayharitsakp1
Contributor III

I have loaded the prebuilt  image of version Android 12.0.0_2.0.0.

I see that PCIe devices are not seen

evk_8mm:/ #
evk_8mm:/ # dmesg | grep pci
[ 0.286197] ehci-pci: EHCI PCI platform driver
evk_8mm:/ # dmesg | grep PCI
[ 0.169734] PCI: CLS 0 bytes, default 64
[ 0.286197] ehci-pci: EHCI PCI platform driver
evk_8mm:/ # [ 137.017230][ T414] healthd: battery l=85 v=3600 t=35.0 h=2 st=2 c=400000 fc=4000000 cc=32 chg=au
[ 197.017001][ T414] healthd: battery l=85 v=3600 t=35.0 h=2 st=2 c=400000 fc=4000000 cc=32 chg=au
[ 257.016705][ T414] healthd: battery l=85 v=3600 t=35.0 h=2 st=2 c=400000 fc=4000000 cc=32 chg=au

evk_8mm:/ #

Running config extracted from prebuilt image

evk_8mm:/ # zcat /proc/config.gz | grep PCI
CONFIG_BLK_MQ_PCI=y
# CONFIG_CAN_KVASER_PCIEFD is not set
# CONFIG_CAN_PEAK_PCIEFD is not set
CONFIG_HAVE_PCI=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCIEAER=y
# CONFIG_PCIEAER_INJECT is not set
# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
# CONFIG_PCIE_DPC is not set
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
CONFIG_PCI_MSI_IRQ_DOMAIN=y
CONFIG_PCI_QUIRKS=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
# CONFIG_PCI_STUB is not set
# CONFIG_PCI_PF_STUB is not set
CONFIG_PCI_ATS=y
CONFIG_PCI_ECAM=y
CONFIG_PCI_IOV=y
# CONFIG_PCI_PRI is not set
# CONFIG_PCI_PASID is not set
# CONFIG_PCIE_BUS_TUNE_OFF is not set
CONFIG_PCIE_BUS_DEFAULT=y
# CONFIG_PCIE_BUS_SAFE is not set
# CONFIG_PCIE_BUS_PERFORMANCE is not set
# CONFIG_PCIE_BUS_PEER2PEER is not set
# CONFIG_HOTPLUG_PCI is not set
# PCI controller drivers
# CONFIG_PCI_FTPCI100 is not set
CONFIG_PCI_HOST_COMMON=y
CONFIG_PCI_HOST_GENERIC=y
# CONFIG_PCIE_XILINX is not set
# CONFIG_PCI_XGENE is not set
# CONFIG_PCIE_ALTERA is not set
# CONFIG_PCI_HOST_THUNDER_PEM is not set
# CONFIG_PCI_HOST_THUNDER_ECAM is not set
# CONFIG_PCIE_MICROCHIP_HOST is not set
# DesignWare PCI Core Support
CONFIG_PCIE_DW=y
CONFIG_PCIE_DW_HOST=y
CONFIG_PCIE_DW_EP=y
CONFIG_PCIE_DW_PLAT=y
# CONFIG_PCIE_DW_PLAT_HOST is not set
CONFIG_PCIE_DW_PLAT_EP=y
# CONFIG_PCI_HISI is not set
CONFIG_PCIE_QCOM=y
CONFIG_PCIE_KIRIN=y
# CONFIG_PCIE_HISI_STB is not set
# CONFIG_PCI_MESON is not set
# CONFIG_PCIE_AL is not set
# end of DesignWare PCI Core Support
# Mobiveil PCIe Core Support
# end of Mobiveil PCIe Core Support
# Cadence PCIe controllers support
# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
# CONFIG_PCIE_CADENCE_PLAT_EP is not set
# CONFIG_PCI_J721E_HOST is not set
# CONFIG_PCI_J721E_EP is not set
# end of Cadence PCIe controllers support
# end of PCI controller drivers
# PCI Endpoint
CONFIG_PCI_ENDPOINT=y
# CONFIG_PCI_ENDPOINT_CONFIGFS is not set
# CONFIG_PCI_EPF_TEST is not set
# CONFIG_PCI_EPF_NTB is not set
# end of PCI Endpoint
# PCI switch controller drivers
# CONFIG_PCI_SW_SWITCHTEC is not set
# end of PCI switch controller drivers
# CONFIG_EFI_DISABLE_PCI_DMA is not set
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
# CONFIG_DW_XDATA_PCIE is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
# CONFIG_MISC_ALCOR_PCI is not set
# CONFIG_MISC_RTSX_PCI is not set
CONFIG_SCSI_UFSHCD_PCI=y
# CONFIG_SCSI_UFS_DWC_TC_PCI is not set
# CONFIG_SCSI_FDOMAIN_PCI is not set
# CONFIG_KSZ884X_PCI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIAL_8250_PCI=y
# CONFIG_I2C_DESIGNWARE_PCI is not set
# PCI GPIO expanders
# CONFIG_GPIO_PCI_IDIO_16 is not set
# CONFIG_GPIO_PCIE_IDIO_24 is not set
# end of PCI GPIO expanders
# PCI-based Watchdog Cards
# CONFIG_PCIPCWATCHDOG is not set
# CONFIG_WDTPCI is not set
# CONFIG_MEDIA_PCI_SUPPORT is not set
CONFIG_SND_PCI=y
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_YMFPCI is not set
CONFIG_USB_PCI=y
CONFIG_USB_XHCI_PCI=y
# CONFIG_USB_XHCI_PCI_RENESAS is not set
CONFIG_USB_EHCI_PCI=y
CONFIG_TYPEC_TCPCI=y
# CONFIG_TYPEC_TCPCI_MAXIM is not set
# CONFIG_MMC_SDHCI_PCI is not set
# CONFIG_MMC_TOSHIBA_PCI is not set
# CONFIG_DW_DMAC_PCI is not set
# CONFIG_DW_EDMA_PCIE is not set
# CONFIG_UIO_PCI_GENERIC is not set
# CONFIG_VIRTIO_PCI is not set
CONFIG_ARM_GIC_V3_ITS_PCI=y
# CONFIG_PHY_QCOM_PCIE2 is not set
CONFIG_GENERIC_PCI_IOMAP=y

evk_8mm:/ # lspci
evk_8mm:/ #

 

0 Kudos

1,664 Views
vinayharitsakp1
Contributor III

Currently i am using code with version Android 12.0.0_1.0.0 with  BUILD_ID=SQ1A.220105.002

Tags (2)
0 Kudos

1,625 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello @vinayharitsakp1 

I can see the same issue. I am downloading the source code and test it.

0 Kudos

1,688 Views
vinayharitsakp1
Contributor III

The same configuration had worked on imx-linux with Yacto with the same kernel version : 5.10.72 without any modifications. In Android the kernel which is used is also 5.10 so not sure why this is not working by default in Android 12 and Android 12 with GKI image.

0 Kudos