[U-Boot] [PATCH 5/5] mpc83xx: mpc8360emds: Add QE USB device tree fixups

Anton Vorontsov avorontsov at ru.mvista.com
Wed Sep 16 21:22:08 CEST 2009


With this patch we can change QE USB mode without need to hand-edit
the device tree.

Signed-off-by: Anton Vorontsov <avorontsov at ru.mvista.com>
---
 board/freescale/mpc8360emds/mpc8360emds.c |   12 ++++++++++++
 include/configs/MPC8360EMDS.h             |    2 ++
 2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/board/freescale/mpc8360emds/mpc8360emds.c b/board/freescale/mpc8360emds/mpc8360emds.c
index 54f2989..d4ba043 100644
--- a/board/freescale/mpc8360emds/mpc8360emds.c
+++ b/board/freescale/mpc8360emds/mpc8360emds.c
@@ -25,6 +25,8 @@
 #if defined(CONFIG_OF_LIBFDT)
 #include <libfdt.h>
 #endif
+#include <hwconfig.h>
+#include <fdt_support.h>
 #if defined(CONFIG_PQ_MDS_PIB)
 #include "../common/pq-mds-pib.h"
 #endif
@@ -357,12 +359,22 @@ static int sdram_init(unsigned int base) { return 0; }
 #endif
 
 #if defined(CONFIG_OF_BOARD_SETUP)
+static void ft_board_fixup_qe_usb(void *blob, bd_t *bd)
+{
+	if (!hwconfig_subarg_cmp("qe_usb", "mode", "peripheral"))
+		return;
+
+	do_fixup_by_compat(blob, "fsl,mpc8323-qe-usb", "mode",
+			   "peripheral", sizeof("peripheral"), 1);
+}
+
 void ft_board_setup(void *blob, bd_t *bd)
 {
 	ft_cpu_setup(blob, bd);
 #ifdef CONFIG_PCI
 	ft_pci_setup(blob, bd);
 #endif
+	ft_board_fixup_qe_usb(blob, bd);
 	/*
 	 * mpc8360ea pb mds errata 2: RGMII timing
 	 * if on mpc8360ea rev. 2.1,
diff --git a/include/configs/MPC8360EMDS.h b/include/configs/MPC8360EMDS.h
index 30a8d45..dab0173 100644
--- a/include/configs/MPC8360EMDS.h
+++ b/include/configs/MPC8360EMDS.h
@@ -382,6 +382,8 @@
 #define CONFIG_NET_MULTI	1
 #endif
 
+#define CONFIG_HWCONFIG		1
+
 /*
  * QE UEC ethernet configuration
  */
-- 
1.6.3.3


More information about the U-Boot mailing list