]> Git Repo - J-u-boot.git/blobdiff - board/freescale/lx2160a/lx2160a.c
Merge tag 'v2023.10-rc4' into next
[J-u-boot.git] / board / freescale / lx2160a / lx2160a.c
index 2a752054cd99ace4bc3e28dc195b6d72e29c67ad..2883848550af17494ac0cc474e6277b8e1e3f382 100644 (file)
@@ -13,6 +13,7 @@
 #include <i2c.h>
 #include <malloc.h>
 #include <errno.h>
+#include <event.h>
 #include <netdev.h>
 #include <fsl_ddr.h>
 #include <asm/io.h>
@@ -133,6 +134,11 @@ int board_fix_fdt(void *fdt)
                fdt_setprop(fdt, off, "reg-names", reg_names, names_len);
        }
 
+       /* Fixup u-boot's DTS in case this is a revC board and
+        * we're using DM_ETH.
+        */
+       if (IS_ENABLED(CONFIG_TARGET_LX2160ARDB) && IS_ENABLED(CONFIG_DM_ETH))
+               fdt_fixup_board_phy_revc(fdt);
        return 0;
 }
 #endif
@@ -237,6 +243,7 @@ int init_func_vid(void)
        return 0;
 }
 #endif
+EVENT_SPY_SIMPLE(EVT_MISC_INIT_F, init_func_vid);
 
 int checkboard(void)
 {
@@ -487,6 +494,15 @@ int config_board_mux(void)
 }
 #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)
 {
 #if defined(CONFIG_TARGET_LX2160AQDS) || defined(CONFIG_TARGET_LX2162AQDS)
@@ -627,6 +643,8 @@ void fdt_fixup_board_enet(void *fdt)
        if (get_mc_boot_status() == 0 &&
            (is_lazy_dpl_addr_valid() || get_dpl_apply_status() == 0)) {
                fdt_status_okay(fdt, offset);
+               if (IS_ENABLED(CONFIG_TARGET_LX2160ARDB))
+                       fdt_fixup_board_phy_revc(fdt);
        } else {
                fdt_status_fail(fdt, offset);
        }
@@ -760,9 +778,6 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u64 mc_memory_size = 0;
        u16 total_memory_banks;
        int err;
-#if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
-       u8 board_rev;
-#endif
 
        err = fdt_increase_size(blob, 512);
        if (err) {
@@ -825,8 +840,7 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        fdt_fixup_icid(blob);
 
 #if IS_ENABLED(CONFIG_TARGET_LX2160ARDB)
-       board_rev = (QIXIS_READ(arch) & 0xf) - 1 + 'A';
-       if (board_rev == 'C')
+       if (get_board_rev() == 'C')
                fdt_fixup_i2c_thermal_node(blob);
 #endif
 
This page took 0.026615 seconds and 4 git commands to generate.