Don't make PPPS path exclusive to the driver USB control. Allow both to
be used at the same time in case the setup uses both PPPS-hubs and
driver-specific control.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Some build configurations are switching to 64-bit time_t, breaking
builds on 32-bit architectures. Always use %lld and perform an explicit
conversion to (long long int) in order to make the code compile on all
architectures.
../status.c: In function 'status_send_values':
../status.c:46:53: error: format '%ld' expects argument of type 'long int', but argument 4 has type '__time64_t' {aka 'long long int'} [-Werror=format=]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Ubuntu Mantic has been removed from the mirros, drop it from the CI
workflow. At the same time add new Ubuntu Oracular release.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
The purpose for providing different exit codes (2 vs 110) for timeout
before or after fastboot was to allow tools invoking cdba to detect if
the device arrived at and performed fastboot or not.
In most cases relying on the fastboot (USB) disconnect notification
works fine, but in cases where the provided image fails to decompress
the standard fastboot implementation will OKAY the transfer, fail to
process the image and then return to process further fastboot requests.
This has been observed in cases where the image is too big, or when it
contains a big endian kernel.
Change the logic to rely on the "FASTBOOT_DOWNLOAD" response to
determine that we did reach fastboot and where able to upload the image
and then something happened - i.e. "there's a problem with the image" vs
"there's a setup problem".
Signed-off-by: Bjorn Andersson <bjorn.andersson@oss.qualcomm.com>
Observed instability in controlling devices when OUTPUT_ENABLE wasn't
enabled in the first step. I couldn't find any documented reason why
this is, but the documentation does say: "FtdiOutput Pin always kept at
1".
Alpaca always keeps OUTUT_ENABLE as 1, and never turns it off. The
documentation seems to imply it should always be left on. This change
updates the open sequence so that the OUTPUT_ENABLE bit is set first.
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
Loop around the flock(), sleeping in the middle. This allows CDBA to
break early if user closes the terminal (by killing SSH or by Ctrl-A-Q
sequence).
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fixes Github deprecation warning:
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
It is easy to forget to roll to new Ubuntu (or Fedora) release, so
always test on the latest Ubuntu version as well.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Refresh the list of distros used for testing: add new Fedora 40 and
Ubuntu 23.10 and 24.04, while dropping unsupported Ubuntu 23.04 (Lunar).
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
For some devices it might be desirable to leave device powered on after
the cdba exits (e.g. to run some long-running tests). Add the
'power_always_on' option that tells cdba server to leave device powered
on after exiting and to toggle power (to reset the device) when
connecting.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Create new function calling fastboot_open so that device_open doesn't
have dependency on the fastboot_ops or udev.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>