diff mbox series

[v2,10/10] ARM: mvebu: clearfog: add Clearfog Base serdes configuration

Message ID 9267eb70635b6dc8c296843e4f3d4302c978ffee.1579522639.git.baruch@tkos.co.il
State Accepted
Commit 584a3d2622e9107d09434b05df8b6c50e25fe73f
Headers show
Series ARM: clearfog: add run-time board detect | expand

Commit Message

Baruch Siach Jan. 20, 2020, 12:20 p.m. UTC
Clearfog Base carrier uses serdes lane #5 as USB host. Use EEPROM stored
device identification to configure the serdes accordingly when
available.

Reviewed-by: Stefan Roese <sr at denx.de>
Signed-off-by: Baruch Siach <baruch at tkos.co.il>
---
 board/solidrun/clearfog/clearfog.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox series

Patch

diff --git a/board/solidrun/clearfog/clearfog.c b/board/solidrun/clearfog/clearfog.c
index 3bc9ce0839a9..e268ef55a2a0 100644
--- a/board/solidrun/clearfog/clearfog.c
+++ b/board/solidrun/clearfog/clearfog.c
@@ -61,6 +61,12 @@  int hws_board_topology_load(struct serdes_map **serdes_map_array, u8 *count)
 		board_serdes_map[0].serdes_mode = PEX_ROOT_COMPLEX_X1;
 	}
 
+	if (sr_product_is(&cf_tlv_data, "Clearfog Base")) {
+		board_serdes_map[4].serdes_type = USB3_HOST0;
+		board_serdes_map[4].serdes_speed = SERDES_SPEED_5_GBPS;
+		board_serdes_map[4].serdes_mode = SERDES_DEFAULT_MODE;
+	}
+
 	*serdes_map_array = board_serdes_map;
 	*count = ARRAY_SIZE(board_serdes_map);
 	return 0;