[U-Boot] [PATCH 0/2] Enable DFU for RAM on Allwinner devices

Piotr Król piotr.krol at 3mdeb.com
Wed Oct 28 00:27:48 CET 2015


On Tue, Oct 27, 2015 at 06:31:24AM +0200, Siarhei Siamashka wrote:
> On Mon, 26 Oct 2015 12:18:35 +0100
> Piotr Król <piotr.krol at 3mdeb.com> wrote:
> 
> > On Sun, Oct 25, 2015 at 06:44:45AM +0200, Siarhei Siamashka wrote:
> > > Hello,
> > > 
> > > DFU allows to transfer large files (such as initrd images) much
> > > faster than FEL.
> > > 
> > > Siarhei Siamashka (2):
> > >   sunxi: Enable DFU for RAM
> > >   musb: sunxi: Implement dfu_usb_get_reset()
> > > 
> > >  drivers/usb/musb-new/sunxi.c   | 12 ++++++++++++
> > >  include/configs/sunxi-common.h | 30 +++++++++++++++++++++++++-----
> > >  2 files changed, 37 insertions(+), 5 deletions(-)
> > 
> > Siarhei,
> > can you give some pointers how to test those patches. I have
> > A20-OLinuXino-Micro and Cubietruck and would be glad to give them a try.
> 
> Hello,
> 
> I tried to provide some basic usage instructions as a part of
> the commit message:
>     https://patchwork.ozlabs.org/patch/535535/
> 

Hi Siarhei,
unfortunately I'm not able to compile even clean master with enabled
CONFIG_USB_MUSB_GADGET. I'm using Linaro toolchain and get this error:

arm-linux-gnueabihf-ld.bfd: error:
/home/pietrushnic/storage/wdc/projects/3mdeb/cubietruck/toolchains/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/4.9.3/libgcc.a(_udivmoddi4.o) uses VFP register arguments, u-boot does not
arm-linux-gnueabihf-ld.bfd: failed to merge target specific data of file
/home/pietrushnic/storage/wdc/projects/3mdeb/cubietruck/toolchains/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/4.9.3/libgcc.a(_udivmoddi4.o)
Makefile:1183: recipe for target 'u-boot' failed
make: *** [u-boot] Error 1

CONFIG_USB_MUSB_GADGET automatically enable CONFIG_USB_MUSB_SUNXI. When
I try with CONFIG_USB_MUSB_SUNXI not set I'm getting other failure:

(...)
drivers/usb/musb-new/musb_gadget.c:133:8: error: 'DMA_TO_DEVICE' undeclared (first use in this function)
(...)
drivers/usb/musb-new/musb_gadget.c:134:8: error: 'DMA_FROM_DEVICE' undeclared (first use in this function)
      : DMA_FROM_DEVICE);
        ^
(...)
drivers/usb/musb-new/musb_gadget.c:164:7: error: 'DMA_TO_DEVICE' undeclared (first use in this function)
     ? DMA_TO_DEVICE
       ^
drivers/usb/musb-new/musb_gadget.c:165:7: error: 'DMA_FROM_DEVICE' undeclared (first use in this function)
     : DMA_FROM_DEVICE);

My steps:
make CROSS_COMPILE=arm-linux-gnueabihf- Cubietruck_defconfig
make CROSS_COMPILE=arm-linux-gnueabihf- menuconfig 
# enable CONFIG_USB_MUSB_GADGET
make CROSS_COMPILE=arm-linux-gnueabihf- -j$(nproc)

Any idea how to narrow VFP problem ?

> But you also need the "sunxi: cubietruck: Enable the USB OTG
> controller" patch from Maxime Ripard to enable USB OTG on the
> Cubietruck:
>     https://patchwork.ozlabs.org/patch/530656/
> 

Cannot apply this series to master cleanly. Should I try different tree ?

> > I think it would be interested to combine this method with Boris NAND support
> > and get much better solution then {Live,Phoenix}Suit.
> 
> At this stage I'm only interested in the DFU usage as a speed
> booster for FEL. Booting over USB via FEL allows us to temporarily
> run more or less complete system (kernel and rootfs on ramdisk)
> on any Allwinner device without modifying existing pre-installed
> software on non-volatile storage. This already works fine, but
> we were not quite happy about the data transfer speed.
> 
> If you are interested in flashing NAND, then you can probably
> have a look at the recent fastboot patches from Maxime.
> 
> DFU means "Device Firmware Upgrade" and it can be also used for
> flashing NAND or writing images to SD cards over USB (if we
> hook up this part of the DFU functionality). The main question
> is how many alternative NAND flashing methods do we need?

IMHO one method that works would be great.

Best Regards,
-- 
Piotr Król
Embedded Systems Consultant
http://3mdeb.com | @3mdeb_com


More information about the U-Boot mailing list