board: fsl: lx2160ardb: add api for obtaining board revision

Add new API for obtaining board revision and trigger the i2c node
fixup with this new API.

Signed-off-by: Florin Chiculita <florinlaurentiu.chiculita@nxp.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
This commit is contained in:
Florin Chiculita 2023-05-31 18:02:17 +03:00 committed by Peng Fan
parent c6caaafe8d
commit ee22330e81
2 changed files with 19 additions and 5 deletions

View file

@ -487,6 +487,15 @@ int config_board_mux(void)
} }
#endif #endif
#if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
u8 get_board_rev(void)
{
u8 board_rev = (QIXIS_READ(arch) & 0xf) - 1 + 'A';
return board_rev;
}
#endif
unsigned long get_board_sys_clk(void) unsigned long get_board_sys_clk(void)
{ {
#if defined(CONFIG_TARGET_LX2160AQDS) || defined(CONFIG_TARGET_LX2162AQDS) #if defined(CONFIG_TARGET_LX2160AQDS) || defined(CONFIG_TARGET_LX2162AQDS)
@ -760,9 +769,6 @@ int ft_board_setup(void *blob, struct bd_info *bd)
u64 mc_memory_size = 0; u64 mc_memory_size = 0;
u16 total_memory_banks; u16 total_memory_banks;
int err; int err;
#if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
u8 board_rev;
#endif
err = fdt_increase_size(blob, 512); err = fdt_increase_size(blob, 512);
if (err) { if (err) {
@ -825,8 +831,7 @@ int ft_board_setup(void *blob, struct bd_info *bd)
fdt_fixup_icid(blob); fdt_fixup_icid(blob);
#if IS_ENABLED(CONFIG_TARGET_LX2160ARDB) #if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
board_rev = (QIXIS_READ(arch) & 0xf) - 1 + 'A'; if (get_board_rev() == 'C')
if (board_rev == 'C')
fdt_fixup_i2c_thermal_node(blob); fdt_fixup_i2c_thermal_node(blob);
#endif #endif

View file

@ -58,4 +58,13 @@
#endif #endif
#endif #endif
#if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
u8 get_board_rev(void);
#else
static inline u8 get_board_rev(void)
{
return 0;
}
#endif
#endif /* __LX2160_H */ #endif /* __LX2160_H */