[PATCH] omap3_beagle: Finish current outstanding DM migrations

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


On Wed, Jul 01, 2020 at 08:50:19PM -0400, Tom Rini wrote:
> On Wed, Jul 01, 2020 at 07:17:04PM -0500, Derald D. Woods wrote:
> > 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<---------------------------------------------------
> 
> That's just very odd.  If you start from a clean tree and apply the
> patch is it reproducible?  Thanks!
> 
> -- 
> Tom

I cleaned up my cached configs and the defconfig builds properly now. My
redundancy was a bit too aggressive. All good.

Derald



More information about the U-Boot mailing list