All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ladislav Michl <ladis@linux-mips.org>
To: Erwin Rol <mailinglists@erwinrol.com>
Cc: Barebox List <barebox@lists.infradead.org>
Subject: Re: imx6ul (phytec Segin board) USB/DFU
Date: Wed, 28 Nov 2018 16:59:48 +0100	[thread overview]
Message-ID: <20181128155948.GA24013@lenoch> (raw)
In-Reply-To: <1543416825.5085.11.camel@erwinrol.com>

On Wed, Nov 28, 2018 at 03:53:45PM +0100, Erwin Rol wrote:
> Hallo All,
> 
> I am trying to get USB device (DFU) to work on my Phytec Segin board
> (imx6ul SOC). 
> 
> I can upload barebox with imx-usb-loader and it starts fine (so USB
> hardware is working)
> 
> Than when barebox runs I want to put that same USB port in DFU mode and
> update the nand flash (barebox, env, kernel, rootfs) via DFU.
> 
> But I can't get it to work, I assume USB device mode setup is missing
> from the board setup, but I can't really find info on how to add it.
> 
> Any hints are very welcome.

For custom AT91 based board I did:

$ cat arch/arm/boards/simear4/env/nv/usbgadget.dfu_function 
/dev/dataflash0.at91bootstrap(bootstrap)sr,/dev/dataflash0.barebox(bootloader)sr,/dev/nand0.bb(system)ru
EOF

$ cat arch/arm/boards/simear4/env/init/usbgadget 
#!/bin/sh

if [ ${fffa4000.gadget@fffa4000.vbus} != 1 ]
then
	echo "No USB Device cable plugged, normal boot"
	exit 0
fi

echo "USB Device cable plugged, waiting for DFU button"

global.autoboot_timeout=60

dfu_button=79
dfu=0

if gpio_get_value ${dfu_button}
then
	dfu=1
else
	timeout -s -a 1
	if gpio_get_value ${dfu_button}
	then
		dfu=1
	fi
fi

if [ ${dfu} -eq 1 ]
then
	led green 1
	led red 1
	echo "Activating DFU"
	usbgadget -a -D
else
	led green 1
	echo "Activating USB console"
	usbgadget -a
fi
EOF

Note that current DFU implemetation does not follow DFU 1.1 specification,
that's something courious reader should fix ;-)

	ladis

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2018-11-28 16:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-28 14:53 imx6ul (phytec Segin board) USB/DFU Erwin Rol
2018-11-28 15:59 ` Ladislav Michl [this message]
2018-11-29 10:59 ` Sascha Hauer
2018-11-29 11:28 ` Jan Lübbe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181128155948.GA24013@lenoch \
    --to=ladis@linux-mips.org \
    --cc=barebox@lists.infradead.org \
    --cc=mailinglists@erwinrol.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.