There are other users than myself of this, so don't hard code the conmux
id as "bjorn" but rather base it on $USER.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
There are cases where fastboot simply disconnects, where it makes sense
to maintain the cdba connection, so return gracefully from
fastboot_download() when this happens.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
When a conmux is already attached the motd becomes quite long,
surpassing the 128 bytes, bump the max response length.
This solves the problem sometimes seen as:
bad: parsing reqistry lookup response: truncated percent-encoding
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Grab a flock() in order to prohibit multiple clients from controlling
the same board at any point in time.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Use vbus to trigger boot of the devices and release the fastboot key
once we see traces of fastboot.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
For some devices it's not possible to use fastboot boot and
as such they will not enter fastboot unless the fastboot key
is held. Expose this functionality in the device api.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Support specifying a timeout -t in order to limit the execution time of
stalling test runs.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Device attached to conmux can be controlled as well. The interface
depends on the conmux exposing the two control commands "hardreset" and
"off".
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
In order to support multiple control boards make all operations follow
indirections in the device context.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
We're not dereferencing the cdb pointer, so make it void * in order to
support alternative controllers.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Boards implementing a/b partitioning even for fastboot boot might
sometimes expire the counter and fail the boot. By always setting the
active image to 'a' we're catching this case and flipping it back, and
in other cases the operation becomes a nop.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
On Ubuntu the library link directive must come last for the libudev
references to be satisfied.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
In some occations dev_path is not valid and we therefor can't
dereference it. Check for this and ignore any events without a dev_path.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Register the stdin pipe with the write fdset in order to know when it's
appropriate to send commands over the pipe.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>