1*83d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+
21eda59ffSKumar Gala /*
333e68354SLaurentiu TUDOR  * Copyright 2010-2011 Freescale Semiconductor, Inc.
41eda59ffSKumar Gala  */
51eda59ffSKumar Gala 
61eda59ffSKumar Gala #include <common.h>
71eda59ffSKumar Gala #include <asm/fsl_portals.h>
81eda59ffSKumar Gala #include <asm/fsl_liodn.h>
91eda59ffSKumar Gala 
1058b2f96eSKumar Gala #ifdef CONFIG_SYS_DPAA_QBMAN
111eda59ffSKumar Gala struct qportal_info qp_info[CONFIG_SYS_QMAN_NUM_PORTALS] = {
121eda59ffSKumar Gala 	/* dqrr liodn, frame data liodn, liodn off, sdest */
131eda59ffSKumar Gala 	SET_QP_INFO(1,  2,  1, 0),
141eda59ffSKumar Gala 	SET_QP_INFO(3,  4,  2, 1),
157c7bd635SHaiying Wang 	SET_QP_INFO(5,  6,  3, 0),
167c7bd635SHaiying Wang 	SET_QP_INFO(7,  8,  4, 1),
177c7bd635SHaiying Wang 	SET_QP_INFO(9, 10,  5, 0),
181f06c9afSCristian Sovaiala 	SET_QP_INFO(11, 12,  6, 1),
191f06c9afSCristian Sovaiala 	SET_QP_INFO(13, 14,  7, 0),
201f06c9afSCristian Sovaiala 	SET_QP_INFO(15, 16,  8, 1),
211f06c9afSCristian Sovaiala 	SET_QP_INFO(17, 18,  9, 0),
221f06c9afSCristian Sovaiala 	SET_QP_INFO(19, 20, 10, 1),
231eda59ffSKumar Gala };
2458b2f96eSKumar Gala #endif
251eda59ffSKumar Gala 
261a0c6421SKumar Gala struct srio_liodn_id_table srio_liodn_tbl[] = {
271a0c6421SKumar Gala 	SET_SRIO_LIODN_2(1, 199, 200),
281a0c6421SKumar Gala 	SET_SRIO_LIODN_2(2, 201, 202),
291a0c6421SKumar Gala };
301a0c6421SKumar Gala int srio_liodn_tbl_sz = ARRAY_SIZE(srio_liodn_tbl);
311a0c6421SKumar Gala 
321eda59ffSKumar Gala struct liodn_id_table liodn_tbl[] = {
3358b2f96eSKumar Gala #ifdef CONFIG_SYS_DPAA_QBMAN
341eda59ffSKumar Gala 	SET_QMAN_LIODN(31),
351eda59ffSKumar Gala 	SET_BMAN_LIODN(32),
3658b2f96eSKumar Gala #endif
371eda59ffSKumar Gala 
381eda59ffSKumar Gala 	SET_SDHC_LIODN(1, 64),
391eda59ffSKumar Gala 
401eda59ffSKumar Gala 	SET_PME_LIODN(117),
411eda59ffSKumar Gala 
421eda59ffSKumar Gala 	SET_USB_LIODN(1, "fsl-usb2-mph", 125),
431eda59ffSKumar Gala 	SET_USB_LIODN(2, "fsl-usb2-dr", 126),
441eda59ffSKumar Gala 
451eda59ffSKumar Gala 	SET_SATA_LIODN(1, 127),
461eda59ffSKumar Gala 	SET_SATA_LIODN(2, 128),
471eda59ffSKumar Gala 
485c5befdaSTimur Tabi 	SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 1, 193),
495c5befdaSTimur Tabi 	SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 2, 194),
505c5befdaSTimur Tabi 	SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 3, 195),
515c5befdaSTimur Tabi 	SET_PCI_LIODN(CONFIG_SYS_FSL_PCIE_COMPAT, 4, 196),
521eda59ffSKumar Gala 
538d3eaa97STudor Laurentiu 	SET_DMA_LIODN(1, "fsl,eloplus-dma", 197),
548d3eaa97STudor Laurentiu 	SET_DMA_LIODN(2, "fsl,eloplus-dma", 198),
551eda59ffSKumar Gala 
561eda59ffSKumar Gala 	SET_GUTS_LIODN("fsl,rapidio-delta", 199, rio1liodnr, 0),
571eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 200, rio2liodnr, 0),
581eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 201, rio1maintliodnr, 0),
591eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 202, rio2maintliodnr, 0),
601eda59ffSKumar Gala };
6158b2f96eSKumar Gala int liodn_tbl_sz = ARRAY_SIZE(liodn_tbl);
621eda59ffSKumar Gala 
631eda59ffSKumar Gala #ifdef CONFIG_SYS_DPAA_FMAN
6497a8d010SIgal Liberman struct fman_liodn_id_table fman1_liodn_tbl[] = {
651eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 0, 10),
661eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 1, 11),
671eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 2, 12),
681eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 3, 13),
691eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 4, 14),
701eda59ffSKumar Gala 	SET_FMAN_RX_10G_LIODN(1, 0, 15),
711eda59ffSKumar Gala };
7258b2f96eSKumar Gala int fman1_liodn_tbl_sz = ARRAY_SIZE(fman1_liodn_tbl);
731eda59ffSKumar Gala #endif
741eda59ffSKumar Gala 
751eda59ffSKumar Gala struct liodn_id_table sec_liodn_tbl[] = {
761eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(0, 129, 130),
771eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(1, 131, 132),
781eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(2, 133, 134),
791eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(3, 135, 136),
801eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(a, 154),
811eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(b, 155),
821eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(c, 156),
831eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(d, 157),
841eda59ffSKumar Gala 	SET_SEC_DECO_LIODN_ENTRY(0, 97, 98),
851eda59ffSKumar Gala 	SET_SEC_DECO_LIODN_ENTRY(1, 99, 100),
861eda59ffSKumar Gala };
8758b2f96eSKumar Gala int sec_liodn_tbl_sz = ARRAY_SIZE(sec_liodn_tbl);
881eda59ffSKumar Gala 
896b3a8d00SKumar Gala #ifdef CONFIG_SYS_FSL_RAID_ENGINE
906b3a8d00SKumar Gala struct liodn_id_table raide_liodn_tbl[] = {
916b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 0, 60),
926b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 1, 61),
936b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 0, 62),
946b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 1, 63),
956b3a8d00SKumar Gala };
966b3a8d00SKumar Gala int raide_liodn_tbl_sz = ARRAY_SIZE(raide_liodn_tbl);
976b3a8d00SKumar Gala #endif
986b3a8d00SKumar Gala 
994d28db8aSKumar Gala #ifdef CONFIG_SYS_DPAA_RMAN
1004d28db8aSKumar Gala struct liodn_id_table rman_liodn_tbl[] = {
1014d28db8aSKumar Gala 	/* Set RMan block 0-3 liodn offset */
1024d28db8aSKumar Gala 	SET_RMAN_LIODN(0, 6),
1034d28db8aSKumar Gala 	SET_RMAN_LIODN(1, 7),
1044d28db8aSKumar Gala 	SET_RMAN_LIODN(2, 8),
1054d28db8aSKumar Gala 	SET_RMAN_LIODN(3, 9),
1064d28db8aSKumar Gala };
1074d28db8aSKumar Gala int rman_liodn_tbl_sz = ARRAY_SIZE(rman_liodn_tbl);
1084d28db8aSKumar Gala #endif
1094d28db8aSKumar Gala 
1101eda59ffSKumar Gala struct liodn_id_table liodn_bases[] = {
1111eda59ffSKumar Gala 	[FSL_HW_PORTAL_SEC]  = SET_LIODN_BASE_2(64, 100),
1121eda59ffSKumar Gala #ifdef CONFIG_SYS_DPAA_FMAN
1131eda59ffSKumar Gala 	[FSL_HW_PORTAL_FMAN1] = SET_LIODN_BASE_1(32),
1141eda59ffSKumar Gala #endif
1151eda59ffSKumar Gala #ifdef CONFIG_SYS_DPAA_PME
1161eda59ffSKumar Gala 	[FSL_HW_PORTAL_PME]   = SET_LIODN_BASE_2(136, 172),
1171eda59ffSKumar Gala #endif
1186b3a8d00SKumar Gala #ifdef CONFIG_SYS_FSL_RAID_ENGINE
1196b3a8d00SKumar Gala 	[FSL_HW_PORTAL_RAID_ENGINE]  = SET_LIODN_BASE_1(47),
1206b3a8d00SKumar Gala #endif
1214d28db8aSKumar Gala #ifdef CONFIG_SYS_DPAA_RMAN
1224d28db8aSKumar Gala 	[FSL_HW_PORTAL_RMAN] = SET_LIODN_BASE_1(80),
1234d28db8aSKumar Gala #endif
1241eda59ffSKumar Gala };
125