[PATCH] omap3_beagle: Finish current outstanding DM migrations

Derald D. Woods woods.technical at gmail.com
Thu Jul 2 02:17:04 CEST 2020


On Tue, Jun 30, 2020 at 03:02:27PM -0400, Tom Rini wrote:
> At this point in time we can now remove our legacy code and switch to
> enabling DM for USB and Ethernet.
> 
> Cc: Derald D. Woods <woods.technical at gmail.com>
> Cc: Adam Ford <aford173 at gmail.com>
> Signed-off-by: Tom Rini <trini at konsulko.com>
> ---
>  board/ti/beagle/beagle.c       | 70 ----------------------------------
>  configs/omap3_beagle_defconfig |  5 ++-
>  2 files changed, 4 insertions(+), 71 deletions(-)
> 
> diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
> index 9139ad87d400..9ccd566da370 100644
> --- a/board/ti/beagle/beagle.c
> +++ b/board/ti/beagle/beagle.c
> @@ -40,11 +40,6 @@
>  #include "beagle.h"
>  #include <command.h>
>  
> -#ifdef CONFIG_USB_EHCI_HCD
> -#include <usb.h>
> -#include <asm/ehci-omap.h>
> -#endif
> -
>  #define TWL4030_I2C_BUS			0
>  #define EXPANSION_EEPROM_I2C_BUS	1
>  #define EXPANSION_EEPROM_I2C_ADDRESS	0x50
> @@ -297,33 +292,6 @@ static void beagle_dvi_pup(void)
>  }
>  #endif
>  
> -#ifdef CONFIG_USB_MUSB_OMAP2PLUS
> -static struct musb_hdrc_config musb_config = {
> -	.multipoint     = 1,
> -	.dyn_fifo       = 1,
> -	.num_eps        = 16,
> -	.ram_bits       = 12,
> -};
> -
> -static struct omap_musb_board_data musb_board_data = {
> -	.interface_type	= MUSB_INTERFACE_ULPI,
> -};
> -
> -static struct musb_hdrc_platform_data musb_plat = {
> -#if defined(CONFIG_USB_MUSB_HOST)
> -	.mode           = MUSB_HOST,
> -#elif defined(CONFIG_USB_MUSB_GADGET)
> -	.mode		= MUSB_PERIPHERAL,
> -#else
> -#error "Please define either CONFIG_USB_MUSB_HOST or CONFIG_USB_MUSB_GADGET"
> -#endif
> -	.config         = &musb_config,
> -	.power          = 100,
> -	.platform_ops	= &omap2430_ops,
> -	.board_data	= &musb_board_data,
> -};
> -#endif
> -
>  /*
>   * Routine: misc_init_r
>   * Description: Configure board specific parts
> @@ -506,10 +474,6 @@ int misc_init_r(void)
>  	omap3_dss_enable();
>  #endif
>  
> -#ifdef CONFIG_USB_MUSB_OMAP2PLUS
> -	musb_register(&musb_plat, &musb_board_data, (void *)MUSB_BASE);
> -#endif
> -
>  	if (generate_fake_mac)
>  		omap_die_id_usbethaddr();
>  
> @@ -548,37 +512,3 @@ void board_mmc_power_init(void)
>  	twl4030_power_mmc_init(0);
>  }
>  #endif
> -
> -#if defined(CONFIG_USB_EHCI_HCD) && !defined(CONFIG_SPL_BUILD)
> -/* Call usb_stop() before starting the kernel */
> -void show_boot_progress(int val)
> -{
> -	if (val == BOOTSTAGE_ID_RUN_OS)
> -		usb_stop();
> -}
> -
> -static struct omap_usbhs_board_data usbhs_bdata = {
> -	.port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
> -	.port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
> -	.port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED
> -};
> -
> -int ehci_hcd_init(int index, enum usb_init_type init,
> -		struct ehci_hccr **hccr, struct ehci_hcor **hcor)
> -{
> -	return omap_ehci_hcd_init(index, &usbhs_bdata, hccr, hcor);
> -}
> -
> -int ehci_hcd_stop(int index)
> -{
> -	return omap_ehci_hcd_stop();
> -}
> -
> -#endif /* CONFIG_USB_EHCI_HCD */
> -
> -#if defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)
> -int board_eth_init(bd_t *bis)
> -{
> -	return usb_eth_initialize(bis);
> -}
> -#endif
> diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
> index ed7cb8f2ff63..b08ffc062d29 100644
> --- a/configs/omap3_beagle_defconfig
> +++ b/configs/omap3_beagle_defconfig
> @@ -3,11 +3,11 @@ CONFIG_ARM=y
>  # CONFIG_SPL_USE_ARCH_MEMSET is not set
>  CONFIG_ARCH_OMAP2PLUS=y
>  CONFIG_SYS_MALLOC_F_LEN=0x4000
> +CONFIG_SPL_TEXT_BASE=0x40200000
>  CONFIG_TARGET_OMAP3_BEAGLE=y
>  CONFIG_SPL_SYS_MALLOC_F_LEN=0x400
>  CONFIG_NR_DRAM_BANKS=2
>  CONFIG_SPL=y
> -CONFIG_SPL_TEXT_BASE=0x40200000
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_BOOTCOMMAND="run findfdt; run distro_bootcmd"
>  CONFIG_USE_PREBOOT=y
> @@ -73,10 +73,13 @@ CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
>  CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
>  CONFIG_SYS_NAND_U_BOOT_OFFS=0x80000
>  CONFIG_SPL_NAND_SIMPLE=y
> +CONFIG_DM_ETH=y
>  CONFIG_SPI=y
>  CONFIG_DM_SPI=y
>  CONFIG_OMAP3_SPI=y
>  CONFIG_USB=y
> +CONFIG_DM_USB=y
> +# CONFIG_SPL_DM_USB is not set
>  CONFIG_USB_EHCI_HCD=y
>  CONFIG_USB_OMAP3=y
>  CONFIG_USB_MUSB_GADGET=y
> -- 
> 2.17.1
> 

I tested this patch on my BeagleBoard Rev. C4 and BeagleBoard xM.

Tested-by: Derald D. Woods <woods.technical at gmail.com>

NOTE:

I did have to perform a 'make menuconfig' and set DM_ETH and DM_USB
manually though. It may be something cached in my build environment. I
mention this because I did perform an additional operation before build.

After first use of defconfig:
---8<---------------------------------------------------

[...]
arm-cortexa8-linux-gnueabihf-ld.bfd: drivers/usb/host/built-in.o: in function `usb_lowlevel_stop':
u-boot/drivers/usb/host/ehci-hcd.c:1138: undefined reference to `ehci_hcd_stop'
arm-cortexa8-linux-gnueabihf-ld.bfd: drivers/usb/host/built-in.o: in function `usb_lowlevel_init':
u-boot/drivers/usb/host/ehci-hcd.c:1153: undefined reference to `ehci_hcd_init'
make[2]: *** [u-boot/Makefile:1755: u-boot] Error 1
make[1]: *** [Makefile:167: sub-make] Error 2

---8<---------------------------------------------------

Derald



More information about the U-Boot mailing list