Commit da4d620c90eb6dd9466a89837ab8667048d856e3

Authored by Qianyu Gong
Committed by York Sun
1 parent 86336e60c5

armv8: fsl_lsch2: Add SerDes 2 support

New SoC LS1046A belongs to Freescale Chassis Generation 2 and
has two SerDes so we need to add this support in fsl_lsch2.
The SoC related SerDes 2 support will be added in SoC patch.

Signed-off-by: Gong Qianyu <Qianyu.Gong@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>

Showing 3 changed files with 22 additions and 0 deletions Side-by-side Diff

arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c
... ... @@ -13,6 +13,9 @@
13 13 #ifdef CONFIG_SYS_FSL_SRDS_1
14 14 static u8 serdes1_prtcl_map[SERDES_PRCTL_COUNT];
15 15 #endif
  16 +#ifdef CONFIG_SYS_FSL_SRDS_2
  17 +static u8 serdes2_prtcl_map[SERDES_PRCTL_COUNT];
  18 +#endif
16 19  
17 20 int is_serdes_configured(enum srds_prtcl device)
18 21 {
... ... @@ -21,6 +24,9 @@
21 24 #ifdef CONFIG_SYS_FSL_SRDS_1
22 25 ret |= serdes1_prtcl_map[device];
23 26 #endif
  27 +#ifdef CONFIG_SYS_FSL_SRDS_2
  28 + ret |= serdes2_prtcl_map[device];
  29 +#endif
24 30  
25 31 return !!ret;
26 32 }
... ... @@ -38,6 +44,12 @@
38 44 cfg >>= FSL_CHASSIS2_RCWSR4_SRDS1_PRTCL_SHIFT;
39 45 break;
40 46 #endif
  47 +#ifdef CONFIG_SYS_FSL_SRDS_2
  48 + case FSL_SRDS_2:
  49 + cfg &= FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_MASK;
  50 + cfg >>= FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_SHIFT;
  51 + break;
  52 +#endif
41 53 default:
42 54 printf("invalid SerDes%d\n", sd);
43 55 break;
... ... @@ -113,6 +125,13 @@
113 125 FSL_CHASSIS2_RCWSR4_SRDS1_PRTCL_MASK,
114 126 FSL_CHASSIS2_RCWSR4_SRDS1_PRTCL_SHIFT,
115 127 serdes1_prtcl_map);
  128 +#endif
  129 +#ifdef CONFIG_SYS_FSL_SRDS_2
  130 + serdes_init(FSL_SRDS_2,
  131 + CONFIG_SYS_FSL_SERDES_ADDR,
  132 + FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_MASK,
  133 + FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_SHIFT,
  134 + serdes2_prtcl_map);
116 135 #endif
117 136 }
arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h
... ... @@ -140,6 +140,7 @@
140 140  
141 141 enum srds {
142 142 FSL_SRDS_1 = 0,
  143 + FSL_SRDS_2 = 1,
143 144 };
144 145  
145 146 #endif
arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h
... ... @@ -228,6 +228,8 @@
228 228 #define FSL_CHASSIS2_RCWSR0_MEM_PLL_RAT_MASK 0x3f
229 229 #define FSL_CHASSIS2_RCWSR4_SRDS1_PRTCL_MASK 0xffff0000
230 230 #define FSL_CHASSIS2_RCWSR4_SRDS1_PRTCL_SHIFT 16
  231 +#define FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_MASK 0x0000ffff
  232 +#define FSL_CHASSIS2_RCWSR4_SRDS2_PRTCL_SHIFT 0
231 233 #define RCW_SB_EN_REG_INDEX 7
232 234 #define RCW_SB_EN_MASK 0x00200000
233 235