mirror of
https://github.com/balena-io/etcher.git
synced 2025-11-10 18:59:27 +00:00
feat: implement usbboot adapter (#1686)
This commit installs `node-usb` v1.3.0 from GitHub, since that version was never published to NPM, and is the only one that works with Visual Studio 2015 (see https://github.com/tessel/node-usb/issues/109). The usbboot communicates with a Raspberry Pi / Amber through USB and eventually mounts it as a block device we can write to. This feature bundles bootcode.bin and start.elf from the original usbboot implementation. The flow is the following: - On each scan, the usbboot scanner will try to get a usbboot compatible USB device to the next "phase", until they are all transformed to block devices the user can flash to as usual Change-Type: minor Changelog-Entry: Integrate Raspberry Pi's usbboot technology. Fixes: https://github.com/resin-io/etcher/issues/1541 See: https://github.com/raspberrypi/usbboot Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
This commit is contained in:
30
lib/blobs/usbboot/LICENSE
Normal file
30
lib/blobs/usbboot/LICENSE
Normal file
@@ -0,0 +1,30 @@
|
||||
Copyright (c) 2006, Broadcom Corporation.
|
||||
Copyright (c) 2015, Raspberry Pi (Trading) Ltd
|
||||
All rights reserved.
|
||||
|
||||
Redistribution. Redistribution and use in binary form, without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
* This software may only be used for the purposes of developing for,
|
||||
running or using a Raspberry Pi device.
|
||||
* Redistributions must reproduce the above copyright notice and the
|
||||
following disclaimer in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
* Neither the name of Broadcom Corporation nor the names of its suppliers
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
|
||||
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGE.
|
||||
|
||||
5
lib/blobs/usbboot/README.md
Normal file
5
lib/blobs/usbboot/README.md
Normal file
@@ -0,0 +1,5 @@
|
||||
usbboot
|
||||
=======
|
||||
|
||||
The files in this directory were taken from
|
||||
https://github.com/raspberrypi/usbboot.
|
||||
BIN
lib/blobs/usbboot/bootcode.bin
Normal file
BIN
lib/blobs/usbboot/bootcode.bin
Normal file
Binary file not shown.
BIN
lib/blobs/usbboot/start.elf
Executable file
BIN
lib/blobs/usbboot/start.elf
Executable file
Binary file not shown.
Reference in New Issue
Block a user