1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * Copyright 2010-2011 Freescale Semiconductor, Inc. 4 */ 5 6 #include <common.h> 7 #include <asm/fsl_portals.h> 8 #include <asm/fsl_liodn.h> 9 10 #ifdef CONFIG_SYS_DPAA_QBMAN 11 struct qportal_info qp_info[CONFIG_SYS_QMAN_NUM_PORTALS] = { 12 /* dqrr liodn, frame data liodn, liodn off, sdest */ 13 SET_QP_INFO(1, 2, 1, 0), 14 SET_QP_INFO(3, 4, 2, 1), 15 SET_QP_INFO(5, 6, 3, 0), 16 SET_QP_INFO(7, 8, 4, 1), 17 SET_QP_INFO(9, 10, 5, 0), 18 SET_QP_INFO(11, 12, 6, 1), 19 SET_QP_INFO(13, 14, 7, 0), 20 SET_QP_INFO(15, 16, 8, 1), 21 SET_QP_INFO(17, 18, 9, 0), 22 SET_QP_INFO(19, 20, 10, 1), 23 }; 24 #endif 25 26 struct srio_liodn_id_table srio_liodn_tbl[] = { 27 SET_SRIO_LIODN_2(1, 199, 200), 28 SET_SRIO_LIODN_2(2, 201, 202), 29 }; 30 int srio_liodn_tbl_sz = ARRAY_SIZE(srio_liodn_tbl); 31 32 struct liodn_id_table liodn_tbl[] = { 33 #ifdef CONFIG_SYS_DPAA_QBMAN 34 SET_QMAN_LIODN(31), 35 SET_BMAN_LIODN(32), 36 #endif 37 38 SET_SDHC_LIODN(1, 64), 39 40 SET_PME_LIODN(117), 41 42 SET_USB_LIODN(1, "fsl-usb2-mph", 125), 43 SET_USB_LIODN(2, "fsl-usb2-dr", 126), 44 45 SET_SATA_LIODN(1, 127), 46 SET_SATA_LIODN(2, 128), 47 48 SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 1, 193), 49 SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 2, 194), 50 SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 3, 195), 51 SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 4, 196), 52 53 SET_DMA_LIODN(1, "fsl,eloplus-dma", 197), 54 SET_DMA_LIODN(2, "fsl,eloplus-dma", 198), 55 56 SET_GUTS_LIODN("fsl,rapidio-delta", 199, rio1liodnr, 0), 57 SET_GUTS_LIODN(NULL, 200, rio2liodnr, 0), 58 SET_GUTS_LIODN(NULL, 201, rio1maintliodnr, 0), 59 SET_GUTS_LIODN(NULL, 202, rio2maintliodnr, 0), 60 }; 61 int liodn_tbl_sz = ARRAY_SIZE(liodn_tbl); 62 63 #ifdef CONFIG_SYS_DPAA_FMAN 64 struct fman_liodn_id_table fman1_liodn_tbl[] = { 65 SET_FMAN_RX_1G_LIODN(1, 0, 10), 66 SET_FMAN_RX_1G_LIODN(1, 1, 11), 67 SET_FMAN_RX_1G_LIODN(1, 2, 12), 68 SET_FMAN_RX_1G_LIODN(1, 3, 13), 69 SET_FMAN_RX_1G_LIODN(1, 4, 14), 70 SET_FMAN_RX_10G_LIODN(1, 0, 15), 71 }; 72 int fman1_liodn_tbl_sz = ARRAY_SIZE(fman1_liodn_tbl); 73 #endif 74 75 struct liodn_id_table sec_liodn_tbl[] = { 76 SET_SEC_JR_LIODN_ENTRY(0, 129, 130), 77 SET_SEC_JR_LIODN_ENTRY(1, 131, 132), 78 SET_SEC_JR_LIODN_ENTRY(2, 133, 134), 79 SET_SEC_JR_LIODN_ENTRY(3, 135, 136), 80 SET_SEC_RTIC_LIODN_ENTRY(a, 154), 81 SET_SEC_RTIC_LIODN_ENTRY(b, 155), 82 SET_SEC_RTIC_LIODN_ENTRY(c, 156), 83 SET_SEC_RTIC_LIODN_ENTRY(d, 157), 84 SET_SEC_DECO_LIODN_ENTRY(0, 97, 98), 85 SET_SEC_DECO_LIODN_ENTRY(1, 99, 100), 86 }; 87 int sec_liodn_tbl_sz = ARRAY_SIZE(sec_liodn_tbl); 88 89 #ifdef CONFIG_SYS_FSL_RAID_ENGINE 90 struct liodn_id_table raide_liodn_tbl[] = { 91 SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 0, 60), 92 SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 1, 61), 93 SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 0, 62), 94 SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 1, 63), 95 }; 96 int raide_liodn_tbl_sz = ARRAY_SIZE(raide_liodn_tbl); 97 #endif 98 99 #ifdef CONFIG_SYS_DPAA_RMAN 100 struct liodn_id_table rman_liodn_tbl[] = { 101 /* Set RMan block 0-3 liodn offset */ 102 SET_RMAN_LIODN(0, 6), 103 SET_RMAN_LIODN(1, 7), 104 SET_RMAN_LIODN(2, 8), 105 SET_RMAN_LIODN(3, 9), 106 }; 107 int rman_liodn_tbl_sz = ARRAY_SIZE(rman_liodn_tbl); 108 #endif 109 110 struct liodn_id_table liodn_bases[] = { 111 [FSL_HW_PORTAL_SEC] = SET_LIODN_BASE_2(64, 100), 112 #ifdef CONFIG_SYS_DPAA_FMAN 113 [FSL_HW_PORTAL_FMAN1] = SET_LIODN_BASE_1(32), 114 #endif 115 #ifdef CONFIG_SYS_DPAA_PME 116 [FSL_HW_PORTAL_PME] = SET_LIODN_BASE_2(136, 172), 117 #endif 118 #ifdef CONFIG_SYS_FSL_RAID_ENGINE 119 [FSL_HW_PORTAL_RAID_ENGINE] = SET_LIODN_BASE_1(47), 120 #endif 121 #ifdef CONFIG_SYS_DPAA_RMAN 122 [FSL_HW_PORTAL_RMAN] = SET_LIODN_BASE_1(80), 123 #endif 124 }; 125