[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