blob: 0a6baf722b69f2b972595e594d7f1683c73cfec4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
#!/bin/sh
button_name="dfu_bp"
button_wait=5
product_id=0x1234
vendor_id=0x4321
dfu_config="/dev/nand0.barebox.bb(barebox)sr,/dev/nand0.kernel.bb(kernel)r,/dev/nand0.rootfs.bb(rootfs)r"
if [ $at91_udc0.vbus != 1 ]
then
echo "No USB Device cable plugged, normal boot"
exit
fi
gpio_get_value ${dfu_button}
if [ $? != 0 ]
then
autoboot_timeout=16
echo "enable tty over USB Device, increase the boot delay to ${autoboot_timeout}s"
usbserial
exit
fi
echo "${button_name} pressed detected wait ${button_wait}s"
timeout -s -a ${button_wait}
if [ $at91_udc0.vbus != 1 ]
then
echo "No USB Device cable plugged, normal boot"
exit
fi
gpio_get_value ${dfu_button}
if [ $? != 0 ]
then
echo "${button_name} released, normal boot"
autoboot_timeout=16
echo "enable tty over USB Device, increase the boot delay to ${autoboot_timeout}s"
usbserial
exit
fi
echo ""
echo "Start DFU Mode"
echo ""
dfu ${dfu_config} -P ${product_id} -V ${vendor_id}
|