[U-Boot] [RFC] toradex: imx6: Move g_dnl_bind_fixup() into common SPL code
Fabio Estevam
festevam at gmail.com
Sun Sep 3 14:56:07 UTC 2017
From: Fabio Estevam <fabio.estevam at nxp.com>
Instead of having every board file to add its own g_dnl_bind_fixup()
implementation, move it to the common imx6 SPL code.
Signed-off-by: Fabio Estevam <fabio.estevam at nxp.com>
---
Stefan,
I don't have access to Toradex board to test it, hence marking it
as RFC.
I have tested it with imx6q-sabresd and it works fine on this board.
arch/arm/mach-imx/spl.c | 10 ++++++++++
board/toradex/apalis_imx6/apalis_imx6.c | 13 -------------
board/toradex/colibri_imx6/colibri_imx6.c | 13 -------------
board/toradex/common/tdx-common.c | 13 -------------
4 files changed, 10 insertions(+), 39 deletions(-)
diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c
index 8e8e2f7..e350bc9 100644
--- a/arch/arm/mach-imx/spl.c
+++ b/arch/arm/mach-imx/spl.c
@@ -14,6 +14,7 @@
#include <asm/spl.h>
#include <spl.h>
#include <asm/mach-imx/hab.h>
+#include <g_dnl.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -86,6 +87,15 @@ u32 spl_boot_device(void)
}
return BOOT_DEVICE_NONE;
}
+
+#ifdef CONFIG_SPL_USB_GADGET_SUPPORT
+int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
+{
+ put_unaligned(CONFIG_G_DNL_PRODUCT_NUM + 0xfff, &dev->idProduct);
+
+ return 0;
+}
+#endif
#endif
#if defined(CONFIG_SPL_MMC_SUPPORT)
diff --git a/board/toradex/apalis_imx6/apalis_imx6.c b/board/toradex/apalis_imx6/apalis_imx6.c
index ebc6c12..628a61d 100644
--- a/board/toradex/apalis_imx6/apalis_imx6.c
+++ b/board/toradex/apalis_imx6/apalis_imx6.c
@@ -29,7 +29,6 @@
#include <dm/platform_data/serial_mxc.h>
#include <dm/platdata.h>
#include <fsl_esdhc.h>
-#include <g_dnl.h>
#include <i2c.h>
#include <imx_thermal.h>
#include <linux/errno.h>
@@ -1224,18 +1223,6 @@ void reset_cpu(ulong addr)
{
}
-#ifdef CONFIG_SPL_USB_GADGET_SUPPORT
-int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
-{
- unsigned short usb_pid;
-
- usb_pid = TORADEX_USB_PRODUCT_NUM_OFFSET + 0xfff;
- put_unaligned(usb_pid, &dev->idProduct);
-
- return 0;
-}
-#endif
-
#endif
static struct mxc_serial_platdata mxc_serial_plat = {
diff --git a/board/toradex/colibri_imx6/colibri_imx6.c b/board/toradex/colibri_imx6/colibri_imx6.c
index 669d912..756e3f3 100644
--- a/board/toradex/colibri_imx6/colibri_imx6.c
+++ b/board/toradex/colibri_imx6/colibri_imx6.c
@@ -28,7 +28,6 @@
#include <dm/platform_data/serial_mxc.h>
#include <dm/platdata.h>
#include <fsl_esdhc.h>
-#include <g_dnl.h>
#include <i2c.h>
#include <imx_thermal.h>
#include <linux/errno.h>
@@ -1108,18 +1107,6 @@ void reset_cpu(ulong addr)
{
}
-#ifdef CONFIG_SPL_USB_GADGET_SUPPORT
-int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
-{
- unsigned short usb_pid;
-
- usb_pid = TORADEX_USB_PRODUCT_NUM_OFFSET + 0xfff;
- put_unaligned(usb_pid, &dev->idProduct);
-
- return 0;
-}
-#endif
-
#endif
static struct mxc_serial_platdata mxc_serial_plat = {
diff --git a/board/toradex/common/tdx-common.c b/board/toradex/common/tdx-common.c
index b4e4727..a7efeb8 100644
--- a/board/toradex/common/tdx-common.c
+++ b/board/toradex/common/tdx-common.c
@@ -5,7 +5,6 @@
*/
#include <common.h>
-#include <g_dnl.h>
#include <libfdt.h>
#include "tdx-cfg-block.h"
@@ -109,18 +108,6 @@ int show_board_info(void)
return 0;
}
-#ifdef CONFIG_USB_GADGET_DOWNLOAD
-int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
-{
- unsigned short usb_pid;
-
- usb_pid = TORADEX_USB_PRODUCT_NUM_OFFSET + tdx_hw_tag.prodid;
- put_unaligned(usb_pid, &dev->idProduct);
-
- return 0;
-}
-#endif
-
#if defined(CONFIG_OF_LIBFDT)
int ft_common_board_setup(void *blob, bd_t *bd)
{
--
2.7.4
More information about the U-Boot
mailing list