All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] PCI: rockchip: Enable IO base and limit registers
@ 2020-05-21  1:05 Shawn Lin
  2020-05-21  1:05 ` [PATCH 2/2] PCI: rockchip: Add 100ms delay before enabling training Shawn Lin
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Shawn Lin @ 2020-05-21  1:05 UTC (permalink / raw)
  To: Lorenzo Pieralisi, Bjorn Helgaas
  Cc: linux-pci, Simon Xue, linux-rockchip, Shawn Lin

According to RK3399 user manual, bit 9 in PCIE_RC_BAR_CONF should
be set, otherwise accessing to IO base and limit registers would
fail.

[    0.411318] pci_bus 0000:00: root bus resource [bus 00-1f]
[    0.411822] pci_bus 0000:00: root bus resource [mem 0xfa000000-0xfbdfffff]
[    0.412440] pci_bus 0000:00: root bus resource [io  0x0000-0xfffff] (bus address [0xfbe00000-0xfbefffff])
[    0.413665] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    0.414698] pci 0000:01:00.0: reg 0x10: initial BAR value 0x00000000 invalid
[    0.415412] pci 0000:01:00.0: reg 0x18: initial BAR value 0x00000000 invalid
[    0.418456] pci 0000:00:00.0: BAR 8: assigned [mem 0xfa000000-0xfa0fffff]
[    0.419065] pci 0000:01:00.0: BAR 1: assigned [mem 0xfa000000-0xfa007fff pref]
[    0.419728] pci 0000:01:00.0: BAR 6: assigned [mem 0xfa008000-0xfa00ffff pref]
[    0.420377] pci 0000:01:00.0: BAR 0: no space for [io  size 0x0100]
[    0.420935] pci 0000:01:00.0: BAR 0: failed to assign [io  size 0x0100]
[    0.421526] pci 0000:01:00.0: BAR 2: no space for [io  size 0x0004]
[    0.422084] pci 0000:01:00.0: BAR 2: failed to assign [io  size 0x0004]
[    0.422687] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.423135] pci 0000:00:00.0:   bridge window [mem 0xfa000000-0xfa0fffff]
[    0.423794] pcieport 0000:00:00.0: enabling device (0000 -> 0002)
[    0.424566] pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt
[    0.425182] pci 0000:01:00.0: Signaling PME through PCIe PME interrupt

01:00.0 Class 0700: Device 1c00:3853 (rev 10) (prog-if 05)
        Subsystem: Device 1c00:3853
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Interrupt: pin A routed to IRQ 230
        Region 0: I/O ports at <unassigned> [disabled]
        Region 1: Memory at fa000000 (32-bit, prefetchable) [disabled] [size=32K]
        Region 2: I/O ports at <unassigned> [disabled]
        [virtual] Expansion ROM at fa008000 [disabled] [size=32K]

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
---

 drivers/pci/controller/pcie-rockchip.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/pci/controller/pcie-rockchip.c b/drivers/pci/controller/pcie-rockchip.c
index c53d132..f82452b 100644
--- a/drivers/pci/controller/pcie-rockchip.c
+++ b/drivers/pci/controller/pcie-rockchip.c
@@ -407,8 +407,11 @@ void rockchip_pcie_cfg_configuration_accesses(
 {
 	u32 ob_desc_0;
 
-	/* Configuration Accesses for region 0 */
-	rockchip_pcie_write(rockchip, 0x0, PCIE_RC_BAR_CONF);
+	/*
+	 * Configuration Accesses for region 0.
+	 * Bit 9 is for enabling IO base and limit registers.
+	 */
+	rockchip_pcie_write(rockchip, BIT(9), PCIE_RC_BAR_CONF);
 
 	rockchip_pcie_write(rockchip,
 			    (RC_REGION_0_ADDR_TRANS_L + RC_REGION_0_PASS_BITS),
-- 
2.7.4




^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2021-02-01 18:27 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-21  1:05 [PATCH 1/2] PCI: rockchip: Enable IO base and limit registers Shawn Lin
2020-05-21  1:05 ` [PATCH 2/2] PCI: rockchip: Add 100ms delay before enabling training Shawn Lin
2020-05-21  5:19 ` [PATCH 1/2] PCI: rockchip: Enable IO base and limit registers Anand Moon
2020-05-21 10:51 ` Anand Moon
2020-05-22  3:00   ` [PATCH 1/2] PCI: rockchip: Enable IO base and limit registers【请注意,邮件由linux-rockchip-bounces+shawn.lin=rock-chips.com@lists.infradead.org代发】 Shawn Lin
2020-05-22  3:00     ` Shawn Lin
2020-05-22 12:29     ` Anand Moon
2020-07-08 15:01       ` Lorenzo Pieralisi
2020-07-09  3:48         ` Anand Moon
2020-07-13 16:45           ` Lorenzo Pieralisi
2020-07-13 16:45             ` Lorenzo Pieralisi
2020-07-14  1:23             ` Shawn Lin
2021-02-01 17:52               ` =?UTF-8?Q?Re=3a_=5bPATCH_1/2=5d_PCI=3a_rockchip=3a_Enable_IO_base_a?= =?UTF-8?B?bmQgbGltaXQgcmVnaXN0ZXJz44CQ6K+35rOo5oSP77yM6YKu5Lu255SxbGludXgt?= =?UTF-8?Q?rockchip-bounces+shawn=2elin=3drock-chips=2ecom=40lists=2einfrade?= =?UTF-8?B?YWQub3Jn5Luj5Y+R44CR?= Jari Hämäläinen
2021-02-01 18:16               ` [PATCH 1/2] PCI: rockchip: Enable IO base and limit registers Jari Hämäläinen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.