On 1/25/2023 11:38 PM, Jakub Kicinski wrote:
On Wed, 25 Jan 2023 16:03:37 +0530 Kumar, M Chetan wrote:
I don't know what fastboot is, and reading this doc I see it used in
three forms:
- fastboot protocol
- fastboot mode
- fastboot command & response
The fastboot is sort of a tool. It implements the protocol for
programming the device flash or getting device information. The device
implements the fastboot commands and host issue those commands for
programming the firmware to device flash or to obtain device
information. Inorder to execute those commands, first the device needs
to be put into fastboot mode.
More details on fastboot can be found in links [1].
In the end - I have no idea what the devlink param you're adding does.
"fastboot" devlink param is used to put the device into fastboot mode
to program firmware to device flash or to obtain device information.
[1]
https://en.wikipedia.org/wiki/Fastboot
https://android.googlesource.com/platform/system/core/+/refs/heads/master/fastboot/README.md
As Ilpo mentions, please add this info into the doc, including
the links.
Sure. In the next patch, I will detail out the fastboot and include
those links for reference.
The most confusing part is that "fastboot" sounds like it's going
to boot fast, while IIUC the behavior is the opposite - it's not going
to boot at all and just expose an interface to load the FW, is that
right?
On device side, the fastboot protocol is implemented in bootloader. When
the host request the device to enter fastboot mode, the device is reset.
Post reset, the host will be able to communicate with device bootloader
using fastboot protocol.
Fastboot protocol implements a set of commands for various operations.
The "flash" is one such command used for programming firmware.
Please also clarify what the normal operation for the device is.
It means fully functional mode.
In this mode wwan functionalities like AT, MBIM, modem trace collection
& data path are operational.
In what scenarios does the fastboot mode get used?
It is used in 2 scenarios.
1> Firmware update, when user/app wants to update firmware.
2> Core dump collection, when device encounters an exception.
And just to double confirm - that the FW loaded in fastboot mode is
persistently stored on the device, and will be used after power cycle.
Rather than it being an upload into RAM.
That's correct.
The firmware is permanently stored on the device & it will be used after
power cycle.
--
Chetan