11eda59ffSKumar Gala /*
233e68354SLaurentiu TUDOR  * Copyright 2010-2011 Freescale Semiconductor, Inc.
31eda59ffSKumar Gala  *
41eda59ffSKumar Gala  * See file CREDITS for list of people who contributed to this
51eda59ffSKumar Gala  * project.
61eda59ffSKumar Gala  *
71eda59ffSKumar Gala  * This program is free software; you can redistribute it and/or
81eda59ffSKumar Gala  * modify it under the terms of the GNU General Public License as
91eda59ffSKumar Gala  * published by the Free Software Foundation; either version 2 of
101eda59ffSKumar Gala  * the License, or (at your option) any later version.
111eda59ffSKumar Gala  *
121eda59ffSKumar Gala  * This program is distributed in the hope that it will be useful,
131eda59ffSKumar Gala  * but WITHOUT ANY WARRANTY; without even the implied warranty of
141eda59ffSKumar Gala  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
151eda59ffSKumar Gala  * GNU General Public License for more details.
161eda59ffSKumar Gala  *
171eda59ffSKumar Gala  * You should have received a copy of the GNU General Public License
181eda59ffSKumar Gala  * along with this program; if not, write to the Free Software
191eda59ffSKumar Gala  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
201eda59ffSKumar Gala  * MA 02111-1307 USA
211eda59ffSKumar Gala  */
221eda59ffSKumar Gala 
231eda59ffSKumar Gala #include <common.h>
241eda59ffSKumar Gala #include <asm/fsl_portals.h>
251eda59ffSKumar Gala #include <asm/fsl_liodn.h>
261eda59ffSKumar Gala 
2758b2f96eSKumar Gala #ifdef CONFIG_SYS_DPAA_QBMAN
281eda59ffSKumar Gala struct qportal_info qp_info[CONFIG_SYS_QMAN_NUM_PORTALS] = {
291eda59ffSKumar Gala 	/* dqrr liodn, frame data liodn, liodn off, sdest */
301eda59ffSKumar Gala 	SET_QP_INFO( 1,  2,  1, 0),
311eda59ffSKumar Gala 	SET_QP_INFO( 3,  4,  2, 1),
321eda59ffSKumar Gala 	SET_QP_INFO( 5,  6,  3, 2),
331eda59ffSKumar Gala 	SET_QP_INFO( 7,  8,  4, 3),
341eda59ffSKumar Gala 	SET_QP_INFO( 9, 10,  5, 4),
351eda59ffSKumar Gala 	SET_QP_INFO( 0,  0,  0, 5),
361eda59ffSKumar Gala 	SET_QP_INFO( 0,  0,  0, 6),
371eda59ffSKumar Gala 	SET_QP_INFO( 0,  0,  0, 7),
381eda59ffSKumar Gala 	SET_QP_INFO( 0,  0,  0, 0), /* for now sdest to 0 */
391eda59ffSKumar Gala 	SET_QP_INFO( 0,  0,  0, 0), /* for now sdest to 0 */
401eda59ffSKumar Gala };
4158b2f96eSKumar Gala #endif
421eda59ffSKumar Gala 
431eda59ffSKumar Gala struct liodn_id_table liodn_tbl[] = {
4458b2f96eSKumar Gala #ifdef CONFIG_SYS_DPAA_QBMAN
451eda59ffSKumar Gala 	SET_QMAN_LIODN(31),
461eda59ffSKumar Gala 	SET_BMAN_LIODN(32),
4758b2f96eSKumar Gala #endif
481eda59ffSKumar Gala 
491eda59ffSKumar Gala 	SET_SDHC_LIODN(1, 64),
501eda59ffSKumar Gala 
511eda59ffSKumar Gala 	SET_PME_LIODN(117),
521eda59ffSKumar Gala 
531eda59ffSKumar Gala 	SET_USB_LIODN(1, "fsl-usb2-mph", 125),
541eda59ffSKumar Gala 	SET_USB_LIODN(2, "fsl-usb2-dr", 126),
551eda59ffSKumar Gala 
561eda59ffSKumar Gala 	SET_SATA_LIODN(1, 127),
571eda59ffSKumar Gala 	SET_SATA_LIODN(2, 128),
581eda59ffSKumar Gala 
5933e68354SLaurentiu TUDOR 	SET_PCI_LIODN("fsl,qoriq-pcie-v2.2", 1, 193),
6033e68354SLaurentiu TUDOR 	SET_PCI_LIODN("fsl,qoriq-pcie-v2.2", 2, 194),
6133e68354SLaurentiu TUDOR 	SET_PCI_LIODN("fsl,qoriq-pcie-v2.2", 3, 195),
6233e68354SLaurentiu TUDOR 	SET_PCI_LIODN("fsl,qoriq-pcie-v2.2", 4, 196),
631eda59ffSKumar Gala 
641eda59ffSKumar Gala 	SET_DMA_LIODN(1, 197),
651eda59ffSKumar Gala 	SET_DMA_LIODN(2, 198),
661eda59ffSKumar Gala 
671eda59ffSKumar Gala 	SET_GUTS_LIODN("fsl,rapidio-delta", 199, rio1liodnr, 0),
681eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 200, rio2liodnr, 0),
691eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 201, rio1maintliodnr, 0),
701eda59ffSKumar Gala 	SET_GUTS_LIODN(NULL, 202, rio2maintliodnr, 0),
711eda59ffSKumar Gala };
7258b2f96eSKumar Gala int liodn_tbl_sz = ARRAY_SIZE(liodn_tbl);
731eda59ffSKumar Gala 
741eda59ffSKumar Gala #ifdef CONFIG_SYS_DPAA_FMAN
751eda59ffSKumar Gala struct liodn_id_table fman1_liodn_tbl[] = {
761eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 0, 10),
771eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 1, 11),
781eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 2, 12),
791eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 3, 13),
801eda59ffSKumar Gala 	SET_FMAN_RX_1G_LIODN(1, 4, 14),
811eda59ffSKumar Gala 	SET_FMAN_RX_10G_LIODN(1, 0, 15),
821eda59ffSKumar Gala };
8358b2f96eSKumar Gala int fman1_liodn_tbl_sz = ARRAY_SIZE(fman1_liodn_tbl);
841eda59ffSKumar Gala #endif
851eda59ffSKumar Gala 
861eda59ffSKumar Gala struct liodn_id_table sec_liodn_tbl[] = {
871eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(0, 129, 130),
881eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(1, 131, 132),
891eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(2, 133, 134),
901eda59ffSKumar Gala 	SET_SEC_JR_LIODN_ENTRY(3, 135, 136),
911eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(a, 154),
921eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(b, 155),
931eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(c, 156),
941eda59ffSKumar Gala 	SET_SEC_RTIC_LIODN_ENTRY(d, 157),
951eda59ffSKumar Gala 	SET_SEC_DECO_LIODN_ENTRY(0, 97, 98),
961eda59ffSKumar Gala 	SET_SEC_DECO_LIODN_ENTRY(1, 99, 100),
971eda59ffSKumar Gala };
9858b2f96eSKumar Gala int sec_liodn_tbl_sz = ARRAY_SIZE(sec_liodn_tbl);
991eda59ffSKumar Gala 
100*6b3a8d00SKumar Gala #ifdef CONFIG_SYS_FSL_RAID_ENGINE
101*6b3a8d00SKumar Gala struct liodn_id_table raide_liodn_tbl[] = {
102*6b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 0, 60),
103*6b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(0, 1, 61),
104*6b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 0, 62),
105*6b3a8d00SKumar Gala 	SET_RAID_ENGINE_JQ_LIODN_ENTRY(1, 1, 63),
106*6b3a8d00SKumar Gala };
107*6b3a8d00SKumar Gala int raide_liodn_tbl_sz = ARRAY_SIZE(raide_liodn_tbl);
108*6b3a8d00SKumar Gala #endif
109*6b3a8d00SKumar 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
118*6b3a8d00SKumar Gala #ifdef CONFIG_SYS_FSL_RAID_ENGINE
119*6b3a8d00SKumar Gala 	[FSL_HW_PORTAL_RAID_ENGINE]  = SET_LIODN_BASE_1(47),
120*6b3a8d00SKumar Gala #endif
1211eda59ffSKumar Gala };
122