xref: /openbmc/u-boot/board/freescale/ls1012aqds/ls1012aqds_pfe.h (revision 83d290c56fab2d38cd1ab4c4cc7099559c1d5046)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
27a8df8baSCalvin Johnson /*
37a8df8baSCalvin Johnson  * Copyright 2017 NXP
47a8df8baSCalvin Johnson  */
57a8df8baSCalvin Johnson 
67a8df8baSCalvin Johnson #define ETH_1_1G_BUS_ID		0x1
77a8df8baSCalvin Johnson #define ETH_1_1G_PHY_ID		0x1e
87a8df8baSCalvin Johnson #define ETH_1_1G_MDIO_MUX	0x2
97a8df8baSCalvin Johnson #define ETH_1G_MDIO_PHY_MASK	0xBFFFFFFD
107a8df8baSCalvin Johnson #define ETH_1_1G_PHY_MODE	"sgmii"
117a8df8baSCalvin Johnson #define ETH_2_1G_BUS_ID		0x1
127a8df8baSCalvin Johnson #define ETH_2_1G_PHY_ID		0x1
137a8df8baSCalvin Johnson #define ETH_2_1G_MDIO_MUX	0x1
147a8df8baSCalvin Johnson #define ETH_2_1G_PHY_MODE	"rgmii"
157a8df8baSCalvin Johnson 
167a8df8baSCalvin Johnson #define ETH_1_2_5G_BUS_ID	0x0
177a8df8baSCalvin Johnson #define ETH_1_2_5G_PHY_ID	0x1
187a8df8baSCalvin Johnson #define ETH_1_2_5G_MDIO_MUX	0x2
197a8df8baSCalvin Johnson #define ETH_2_5G_MDIO_PHY_MASK	0xFFFFFFF9
207a8df8baSCalvin Johnson #define ETH_2_5G_PHY_MODE	"sgmii-2500"
217a8df8baSCalvin Johnson #define ETH_2_2_5G_BUS_ID	0x1
227a8df8baSCalvin Johnson #define ETH_2_2_5G_PHY_ID	0x2
237a8df8baSCalvin Johnson #define ETH_2_2_5G_MDIO_MUX	0x3
247a8df8baSCalvin Johnson 
257a8df8baSCalvin Johnson #define SERDES_1_G_PROTOCOL	0x3508
267a8df8baSCalvin Johnson #define SERDES_2_5_G_PROTOCOL	0x2205
277a8df8baSCalvin Johnson 
287a8df8baSCalvin Johnson #define PFE_PROP_LEN		4
297a8df8baSCalvin Johnson 
307a8df8baSCalvin Johnson #define ETH_1_PATH		"/pfe@04000000/ethernet@0"
317a8df8baSCalvin Johnson #define ETH_1_MDIO		ETH_1_PATH "/mdio@0"
327a8df8baSCalvin Johnson 
337a8df8baSCalvin Johnson #define ETH_2_PATH		"/pfe@04000000/ethernet@1"
347a8df8baSCalvin Johnson #define ETH_2_MDIO		ETH_2_PATH "/mdio@0"
357a8df8baSCalvin Johnson 
367a8df8baSCalvin Johnson #define NUM_ETH_NODE		2
377a8df8baSCalvin Johnson 
387a8df8baSCalvin Johnson struct pfe_prop_val {
397a8df8baSCalvin Johnson 	int busid;
407a8df8baSCalvin Johnson 	int phyid;
417a8df8baSCalvin Johnson 	int mux_val;
427a8df8baSCalvin Johnson 	int phy_mask;
437a8df8baSCalvin Johnson 	char *phy_mode;
447a8df8baSCalvin Johnson };
45