hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/pci/controller/pcie-rockchip.h
....@@ -1,4 +1,4 @@
1
-// SPDX-License-Identifier: GPL-2.0+
1
+/* SPDX-License-Identifier: GPL-2.0+ */
22 /*
33 * Rockchip AXI PCIe controller driver
44 *
....@@ -38,6 +38,13 @@
3838 #define PCIE_CLIENT_MODE_EP HIWORD_UPDATE(0x0040, 0)
3939 #define PCIE_CLIENT_GEN_SEL_1 HIWORD_UPDATE(0x0080, 0)
4040 #define PCIE_CLIENT_GEN_SEL_2 HIWORD_UPDATE_BIT(0x0080)
41
+#define PCIE_CLIENT_LEGACY_INT_CTRL (PCIE_CLIENT_BASE + 0x0c)
42
+#define PCIE_CLIENT_INT_IN_ASSERT HIWORD_UPDATE_BIT(0x0002)
43
+#define PCIE_CLIENT_INT_IN_DEASSERT HIWORD_UPDATE(0x0002, 0)
44
+#define PCIE_CLIENT_INT_PEND_ST_PEND HIWORD_UPDATE_BIT(0x0001)
45
+#define PCIE_CLIENT_INT_PEND_ST_NORMAL HIWORD_UPDATE(0x0001, 0)
46
+#define PCIE_CLIENT_SIDE_BAND_STATUS (PCIE_CLIENT_BASE + 0x20)
47
+#define PCIE_CLIENT_PHY_ST BIT(12)
4148 #define PCIE_CLIENT_DEBUG_OUT_0 (PCIE_CLIENT_BASE + 0x3c)
4249 #define PCIE_CLIENT_DEBUG_LTSSM_MASK GENMASK(5, 0)
4350 #define PCIE_CLIENT_DEBUG_LTSSM_L0 0x10
....@@ -147,6 +154,8 @@
147154 #define PCIE_RC_RP_ATS_BASE 0x400000
148155 #define PCIE_RC_CONFIG_NORMAL_BASE 0x800000
149156 #define PCIE_RC_CONFIG_BASE 0xa00000
157
+#define PCIE_EP_CONFIG_BASE 0xa00000
158
+#define PCIE_EP_CONFIG_DID_VID (PCIE_EP_CONFIG_BASE + 0x00)
150159 #define PCIE_RC_CONFIG_RID_CCR (PCIE_RC_CONFIG_BASE + 0x08)
151160 #define PCIE_RC_CONFIG_SCC_SHIFT 16
152161 #define PCIE_RC_CONFIG_DCR (PCIE_RC_CONFIG_BASE + 0xc4)
....@@ -240,6 +249,7 @@
240249 #define ROCKCHIP_PCIE_EP_CMD_STATUS 0x4
241250 #define ROCKCHIP_PCIE_EP_CMD_STATUS_IS BIT(19)
242251 #define ROCKCHIP_PCIE_EP_MSI_CTRL_REG 0x90
252
+#define ROCKCHIP_PCIE_EP_MSI_FLAGS_OFFSET 16
243253 #define ROCKCHIP_PCIE_EP_MSI_CTRL_MMC_OFFSET 17
244254 #define ROCKCHIP_PCIE_EP_MSI_CTRL_MMC_MASK GENMASK(19, 17)
245255 #define ROCKCHIP_PCIE_EP_MSI_CTRL_MME_OFFSET 20
....@@ -247,7 +257,6 @@
247257 #define ROCKCHIP_PCIE_EP_MSI_CTRL_ME BIT(16)
248258 #define ROCKCHIP_PCIE_EP_MSI_CTRL_MASK_MSI_CAP BIT(24)
249259 #define ROCKCHIP_PCIE_EP_DUMMY_IRQ_ADDR 0x1
250
-#define ROCKCHIP_PCIE_EP_PCI_LEGACY_IRQ_ADDR 0x3
251260 #define ROCKCHIP_PCIE_EP_FUNC_BASE(fn) (((fn) << 12) & GENMASK(19, 12))
252261 #define ROCKCHIP_PCIE_AT_IB_EP_FUNC_BAR_ADDR0(fn, bar) \
253262 (PCIE_RC_RP_ATS_BASE + 0x0840 + (fn) * 0x0040 + (bar) * 0x0008)
....@@ -318,19 +327,12 @@
318327 struct gpio_desc *ep_gpio;
319328 u32 lanes;
320329 u8 lanes_map;
321
- u8 root_bus_nr;
322330 int link_gen;
323331 struct device *dev;
324332 struct irq_domain *irq_domain;
325333 int offset;
326
- struct pci_bus *root_bus;
327
- struct resource *io;
328
- phys_addr_t io_bus_addr;
329
- u32 io_size;
330334 void __iomem *msg_region;
331
- u32 mem_size;
332335 phys_addr_t msg_bus_addr;
333
- phys_addr_t mem_bus_addr;
334336 bool is_rc;
335337 struct resource *mem_res;
336338 phys_addr_t mem_reserve_start;