Revision tags: v00.04.15, v00.04.14, v00.04.13, v00.04.12, v00.04.11, v00.04.10, v00.04.09, v00.04.08, v00.04.07, v00.04.06, v00.04.05, v00.04.04, v00.04.03, v00.04.02, v00.04.01, v00.04.00, v2021.04, v00.03.03, v2021.01, v2020.10, v2020.07, v00.02.13, v2020.04, v2020.01, v2019.10, v00.02.05, v00.02.04, v00.02.03, v00.02.02, v00.02.01, v2019.07, v00.02.00, v2019.04 |
|
#
1f92c074 |
| 25-Jan-2019 |
Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> |
dfu: mmc: call fs functions instead of run_command
This unbreaks dfu mmc_file_op which is currently broken since using the load cmd on a buffer from heap is not allowed - added with commit aa3c609e2
dfu: mmc: call fs functions instead of run_command
This unbreaks dfu mmc_file_op which is currently broken since using the load cmd on a buffer from heap is not allowed - added with commit aa3c609e2be5 ("fs: prevent overwriting reserved memory")
Fixes: commit aa3c609e2be5 ("fs: prevent overwriting reserved memory") Reported-by: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Tested-by: Stephen Warren <swarren@nvidia.com> Acked-by: Lukasz Majewski <lukma@denx.de>
show more ...
|
#
0da90255 |
| 26-Jan-2019 |
Tom Rini <trini@konsulko.com> |
Merge branch '2019-01-25-master-imports'
- snapdragon 820c improvements - poplar updates - DFU + SPL cleanups - Improve the mediatek mmc driver - Other minor cleanups / improvements
|
#
2d59ec84 |
| 17-Jan-2019 |
Andrew F. Davis <afd@ti.com> |
dfu: Make DFU support more SPL friendly
Do this by using $(SPL_) in Makefiles and CONFIG_IS_ENABLED in C code. This ensures the files and features are only built into the right build for which they
dfu: Make DFU support more SPL friendly
Do this by using $(SPL_) in Makefiles and CONFIG_IS_ENABLED in C code. This ensures the files and features are only built into the right build for which they are enabled. Using the macros to simplify this patch was made possible by the config symbol rename done in the last patch.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Lukasz Majewski <lukma@denx.de>
show more ...
|
Revision tags: v2018.07 |
|
#
83d290c5 |
| 06-May-2018 |
Tom Rini <trini@konsulko.com> |
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us.
In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style.
This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
Revision tags: v2018.03, v2018.01, v2017.11 |
|
#
211aaf30 |
| 29-Jul-2017 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-usb
|
#
15970d87 |
| 19-Jul-2017 |
Patrick Delaunay <patrick.delaunay@st.com> |
dfu: remove limitation on partition size
Change long (32 bits on arm) to u64 (same type than offset) for size and read offset r_left
So partition and device used for DFU can be greater than 4GB
Si
dfu: remove limitation on partition size
Change long (32 bits on arm) to u64 (same type than offset) for size and read offset r_left
So partition and device used for DFU can be greater than 4GB
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
show more ...
|
#
4de51201 |
| 19-Jul-2017 |
Patrick Delaunay <patrick.delaunay@st.com> |
dfu: allow dfu read on partition greater than 2GB
solve issue on get_medium_size() function the detection of error is a simple test < 0 but for ARM platform, long is 32bits and 2GB = 0x80000000 is s
dfu: allow dfu read on partition greater than 2GB
solve issue on get_medium_size() function the detection of error is a simple test < 0 but for ARM platform, long is 32bits and 2GB = 0x80000000 is seen as error.
I solve the issue by changing the prototype fo the function to separate size and result. This patch prepare the next patch with size change to u64.
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
show more ...
|
Revision tags: v2016.07, openbmc-20160624-1 |
|
#
fec26e72 |
| 24-Feb-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-usb
|
#
fc18f8d1 |
| 28-Jan-2016 |
Lukasz Majewski <l.majewski@samsung.com> |
dfu: usb: f_dfu: Set deferred call for dfu_flush() function
This patch fixes situation when one would like to write large file into medium with the file system (fat, ext4, etc). This change sets fil
dfu: usb: f_dfu: Set deferred call for dfu_flush() function
This patch fixes situation when one would like to write large file into medium with the file system (fat, ext4, etc). This change sets file size limitation to the DFU internal buffer size.
Since u-boot is not supporting interrupts and seek on file systems, it becomes challenging to store large file appropriately.
To reproduce this error - create large file (around 26 MiB) and sent it to the target board.
Lets examine the flow of USB transactions:
0. DFU uses EP0 with 64B MPS [Max Packet Size]
1. Send file - OUT (PC->target) - dat_26MiB.img is sent with 4096 B transactions
2. Get status - OUT (PC->target) - wait for DFU_STATE_dfuDNLOAD_IDLE (0x05) sent from target board - IN transaction (target->PC)
3. The whole file content is sent to target - OUT (PC->target) with ZLP [Zero Length Packet]
Now the interesting part starts:
4. OUT (PC->target) Setup transaction (request to share DFU state)
5. IN (target->PC) - reply the current DFU state - In the UDC driver the req->completion (with dfu_flush) is called after successful IN transfer. - The dfu_flush() (called from req->completion callback) saves the whole file at once (u-boot doesn't support seek on fs). Such operation takes considerable time. When the file is large - e.g. 26MiB - this time may be more than 5 seconds.
6. OUT (PC->target) - ZLP, is send in the same time when dfu_flush() writes data to eMMC memory. The dfu-util application has hard coded timeout on USB transaction completion set to 5 seconds (it uses libusb calls).
When the file to store is large (e.g. 26 MiB) the time needed to write it may excess the dfu-util timeout and following error message will be displayed: "unable to read DFU status" on the HOST PC console.
This change is supposed to leverage DFU's part responsible for storing files on file systems. Other DFU operations - i.e. raw/partition write to NAND and eMMC should work as before.
The only functional change is the error reporting. When dfu_flush() fails the u-boot prompt will exit with error information and dfu-util application exits afterwards as well.
Test HW: - Odroid XU3 (Exynos5433) - test with large file - Trats (Exynos4210) - test for regression - eMMC, raw,
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Reported-by: Alex Gdalevich <agdalevich@axion-biosystems.com> Tested-by: Stephen Warren <swarren@nvidia.com> Tested-by: Heiko Schocher <hs@denx.de>
show more ...
|
Revision tags: v2016.01-rc1, v2015.10, v2015.10-rc5, v2015.10-rc4, v2015.10-rc3 |
|
#
cdc7732f |
| 07-Sep-2015 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-usb
|
#
2092e461 |
| 23-Aug-2015 |
Lukasz Majewski <l.majewski@majess.pl> |
dfu: tftp: update: Add dfu_write_from_mem_addr() function
This function allows writing via DFU data stored from fixed buffer address (like e.g. loadaddr env variable).
Such predefined buffers are u
dfu: tftp: update: Add dfu_write_from_mem_addr() function
This function allows writing via DFU data stored from fixed buffer address (like e.g. loadaddr env variable).
Such predefined buffers are used in the update_tftp() code. In fact this function is a wrapper on the dfu_write() and dfu_flush().
Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
#
2d50d68a |
| 23-Aug-2015 |
Lukasz Majewski <l.majewski@majess.pl> |
dfu: tftp: update: Provide tftp support for the DFU subsystem
This commit adds initial support for using tftp for downloading and upgrading firmware on the device.
Signed-off-by: Lukasz Majewski <l
dfu: tftp: update: Provide tftp support for the DFU subsystem
This commit adds initial support for using tftp for downloading and upgrading firmware on the device.
Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
Revision tags: v2015.10-rc2, v2015.10-rc1, v2015.07, v2015.07-rc3, v2015.07-rc2, v2015.07-rc1, v2015.04, v2015.04-rc5, v2015.04-rc4 |
|
#
9b5b60a0 |
| 05-Mar-2015 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
|
Revision tags: v2015.04-rc3 |
|
#
57c6941b |
| 02-Mar-2015 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-usb
|
Revision tags: v2015.04-rc2 |
|
#
899a5282 |
| 17-Feb-2015 |
Przemyslaw Marczak <p.marczak@samsung.com> |
dfu: samsung: move call to set_dfu_alt_info() to dfu common code
This common call can be used for setting proper entities based on dfu command arguments. The config: CONFIG_SET_DFU_ALT_INFO, was use
dfu: samsung: move call to set_dfu_alt_info() to dfu common code
This common call can be used for setting proper entities based on dfu command arguments. The config: CONFIG_SET_DFU_ALT_INFO, was used only for few configs, and now it is common.
The board file should implement: - set_dfu_alt_info() function
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Tested-by: Lukasz Majewski <l.majewski@samsung.com> [Test HW: Odroid U3 (Exynos 4412)]
show more ...
|
Revision tags: v2015.04-rc1, v2015.01 |
|
#
4e0114d9 |
| 30-Dec-2014 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
Signed-off-by: Stefano Babic <sbabic@denx.de>
|
Revision tags: v2015.01-rc4 |
|
#
7a7ffeda |
| 18-Dec-2014 |
Tom Rini <trini@ti.com> |
Merge branch 'master' of git://git.denx.de/u-boot-usb
|
#
fe1b28c9 |
| 10-Dec-2014 |
Rob Herring <robh@kernel.org> |
usb, g_dnl: generalize DFU detach functions
In order to add detach functions for fastboot, make the DFU detach related functions common so they can be shared.
Signed-off-by: Rob Herring <robh@kerne
usb, g_dnl: generalize DFU detach functions
In order to add detach functions for fastboot, make the DFU detach related functions common so they can be shared.
Signed-off-by: Rob Herring <robh@kernel.org> Tested-by: Lukasz Majewski <l.majewski@samsung.com> [TestHW: Exynos4412-Trats2]
show more ...
|
Revision tags: v2015.01-rc3, v2015.01-rc2, v2015.01-rc1, v2014.10, v2014.10-rc3, v2014.10-rc2 |
|
#
48f892dc |
| 02-Sep-2014 |
Tom Rini <trini@ti.com> |
Merge git://git.denx.de/u-boot-usb
|
#
1cc03c5c |
| 25-Aug-2014 |
Lukasz Majewski <l.majewski@samsung.com> |
dfu: Provide means to find difference between dfu-util -e and -R
This commit provides distinction between DFU device detach and reset. The -R behavior is preserved with proper handling of the dfu-ut
dfu: Provide means to find difference between dfu-util -e and -R
This commit provides distinction between DFU device detach and reset. The -R behavior is preserved with proper handling of the dfu-util's -e switch, which detach the DFU device.
By running dfu-util -e; one can force device to finish the execution of dfu command on target and execute some other scripted commands.
Moreover, some naming has been changed - the dfu_reset() method now is known as dfu_detach(). New name better reflects the purpose of the code.
It was also necessary to increase the number of usb_gadget_handle_interrupts() calls since we also must wait for detection of the USB reset event.
Example usage: 1. -e (detach) switch dfu-util -a0 -D file1.bin;dfu-util -a3 -D uImage;dfu-util -e
access to u-boot prompt.
2. -R (reset) switch dfu-util -a0 -D file1.bin;dfu-util -R -a3 -D uImage
target board reset
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Reviewed-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
Revision tags: v2014.10-rc1, v2014.07, v2014.07-rc4 |
|
#
6f12ebf6 |
| 11-Jun-2014 |
Stephen Warren <swarren@nvidia.com> |
dfu: add SF backend
This allows SPI Flash to be programmed using DFU.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
|
#
cb7bd2e0 |
| 11-Jun-2014 |
Stephen Warren <swarren@nvidia.com> |
dfu: add free_entity() to struct dfu_entity
This allows the backend to free any resources allocated during the relevant dfu_fill_entity_*() call. This will soon be used by the SF backend.
Signed-of
dfu: add free_entity() to struct dfu_entity
This allows the backend to free any resources allocated during the relevant dfu_fill_entity_*() call. This will soon be used by the SF backend.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
#
7ac1b410 |
| 11-Jun-2014 |
Stephen Warren <swarren@nvidia.com> |
dfu: allow backend to specify a maximum buffer size
CONFIG_SYS_DFU_DATA_BUF_SIZE may be large to allow for FAT/ext layouts to transfer large files. However, this means that individual write operatio
dfu: allow backend to specify a maximum buffer size
CONFIG_SYS_DFU_DATA_BUF_SIZE may be large to allow for FAT/ext layouts to transfer large files. However, this means that individual write operations will take a long time. Allow backends to specify a maximum buffer size, so that each write operation is limited to a smaller data block. This prevents the DFU protocol from timing out when e.g. writing to SPI flash. I would guess that NAND might benefit from setting this value too, but I can't test that.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
#
dd64827e |
| 11-Jun-2014 |
Stephen Warren <swarren@nvidia.com> |
dfu: defer parsing of device string to IO backend
Devices are not all identified by a single integer. To support this, defer the parsing of the device string to the IO backed, so that it can apply t
dfu: defer parsing of device string to IO backend
Devices are not all identified by a single integer. To support this, defer the parsing of the device string to the IO backed, so that it can apply the appropriate rules.
SPI devices are specified as controller:chip_select. SPI/SF support will be added soon.
MMC devices can also be specified as controller[.hwpart][:partition] in many commands, although we don't support that syntax in DFU.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
#
0e285b50 |
| 11-Jun-2014 |
Stephen Warren <swarren@nvidia.com> |
dfu: fix some issues with reads/uploads
DFU read support appears to rely upon dfu->read_medium() updating the passed-by-reference len parameter to indicate the remaining size available for reading.
dfu: fix some issues with reads/uploads
DFU read support appears to rely upon dfu->read_medium() updating the passed-by-reference len parameter to indicate the remaining size available for reading.
dfu_read_medium_mmc() never does this, and the implementation of dfu_read_medium_nand() will only work if called just once; it hard-codes the value to the total size of the NAND device irrespective of read offset.
I believe that overloading dfu->read_medium() is confusing. As such, this patch introduces a new function dfu->get_medium_size() which can be used to explicitly find out the medium size, and nothing else. dfu_read() is modified to use this function to set the initial value for dfu->r_left, rather than attempting to use the side-effects of dfu->read_medium() for this purpose.
Due to this change, dfu_read() must initially set dfu->b_left to 0, since no data has been read.
dfu_read_buffer_fill() must also be modified not to adjust dfu->r_left when simply copying data from dfu->i_buf_start to the upload request buffer. r_left represents the amount of data left to be read from HW. That value is not affected by the memcpy(), but only by calls to dfu->read_medium().
After this change, I can read from either a 4MB or 1.5MB chunk of a 4MB eMMC boot partion with CONFIG_SYS_DFU_DATA_BUF_SIZE==1MB. Without this change, attempting to do that would result in DFU read returning no data at all due to r_left never being set.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|