-
Notifications
You must be signed in to change notification settings - Fork 67
Add Qualcomm IQ9075 recovery support and improve sparse image handling #94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -175,6 +175,13 @@ This USB cable needs to power up the board, ie it needs to have its internal VBU | |
| Set up your board to boot from USB DFU, connect the board to the USB device port, power the board if necessary. A new USB device should appear on your host system. | ||
| See the U-Boot RZ/N1 [documentation](https://docs.u-boot.org/en/latest/board/renesas/rzn1.html) for more information. | ||
|
|
||
| ### Qualcomm IQ9075 | ||
|
|
||
| To set up the board in recovery mode, refer to the section *"Force the device | ||
| into Emergency Download mode"* in the reference [documentation](https://docs.qualcomm.com/doc/80-70023-261/topic/iq9-ug-update-the-sw.html#panel-0-VWJ1bnR1tab$force-the-device-into-emergency-download-mode) | ||
|
|
||
| **Note:** The steps described in the reference documentation above are the same for both EVK and non-EVK boards, except for the DIP switch position. For the exact DIP switch position required to enable EDL mode on the IQ9075 EVK, refer to the board schematic. Other boards using this SoC may use a different method to enter EDL mode; refer to your board vendor's documentation. | ||
|
|
||
| ## Preparing recovery firmware | ||
|
|
||
| Snagrecover requires firmware binaries to successfully recover the board. Each | ||
|
|
@@ -607,6 +614,24 @@ cd u-boot | |
|
|
||
| **u-boot:** U-Boot proper in SPKG format. Must fit in internal RAM. | ||
|
|
||
| configuration: | ||
| * path | ||
|
|
||
| ### For Qualcomm IQ9075 devices | ||
|
|
||
| **xbl:** XBL is a Qualcomm proprietary image, which can be downloaded using the following steps: | ||
|
|
||
| 1. Download the [ZIP](https://softwarecenter.qualcomm.com/nexus/generic/product/chip/tech-package/QCS9100_bootbinaries.1.0/qcs9100_bootbinaries.1.0-test-device-public/00133/QCS9100_bootbinaries.zip) file | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this binary identical for all boards using this SoC? If not, please specify that this binary only works with board xyz and provide a generic description of how to get the binary for other boards such as "request the binary from your board vendor".
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, this XBL binary is generic to the IQ9075 SoC and is identical across all boards using it, so no board-specific note is needed here. |
||
|
|
||
| 2. Extract the ZIP file and locate the XBL image: | ||
| prog_snagboot_ddr.elf | ||
|
|
||
|
|
||
| configuration: | ||
| * path | ||
|
|
||
| **u-boot:** TBD: U-Boot support for Snagboot recovery is currently under upstream review. See the [patch series](https://marc.info/?l=u-boot&m=178577211945398&w=2) for more information. | ||
|
|
||
| configuration: | ||
| * path | ||
|
|
||
|
|
@@ -647,4 +672,3 @@ Examples: | |
| snagrecover -s stm32mp15 -f stm32mp15.yaml | ||
| snagrecover -s stm32mp15 -F "{'tf-a': {'path': 'binaries/tf-a-stm32.bin'}}" -F "{'fip': {'path': 'binaries/u-boot.stm32'}}" | ||
| ``` | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Snagrecover is supposed to be SoC agnostic; of course it's completely fine to add a board-specific example, but you should specify that it's board-specific (in this case for the EVK).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added a note clarifying that the reference documentation steps are the same for both EVK and non-EVK boards, except for the DIP switch position — which is EVK-specific and requires checking the board schematic. Other boards should refer to their vendor's documentation for the equivalent step.