Commit dbcbeed9 authored by Stephen Boyd's avatar Stephen Boyd Committed by Bjorn Andersson

arm64: dts: qcom: sc7280-herobrine: Drop outputs on fpmcu pins

Having these pins with outputs is good on a fresh boot because it puts
the boot and reset pins in a known "good" state. Unfortunately, that
conflicts with the fingerprint firmware flashing code. The firmware
flashing process binds and unbinds the cros-ec and spidev drivers and
that reapplies the pin output values after the flashing code has
overridden the gpio values. This causes a problem because we try to put
the device into bootloader mode, bind the spidev driver and that
inadvertently puts it right back into normal boot mode, breaking the
flashing process.

Fix this by removing the outputs. We'll introduce a binding for
fingerprint cros-ec specifically to set the gpios properly via gpio APIs
during cros-ec driver probe instead.

Cc: Douglas Anderson <dianders@chromium.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Cc: Alexandru M Stan <amstan@chromium.org>
Fixes: 116f7cc4 ("arm64: dts: qcom: sc7280: Add herobrine-r1")
Signed-off-by: default avatarStephen Boyd <swboyd@chromium.org>
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Reviewed-by: default avatarMatthias Kaehlcke <mka@chromium.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220317010640.2498502-2-swboyd@chromium.org
parent 9464b00e
......@@ -727,7 +727,6 @@ fp_rst_l: fp-rst-l {
function = "gpio";
bias-disable;
drive-strength = <2>;
output-high;
};
fp_to_ap_irq_l: fp-to-ap-irq-l {
......@@ -741,7 +740,6 @@ fpmcu_boot0: fpmcu-boot0 {
pins = "gpio68";
function = "gpio";
bias-disable;
output-low;
};
gsc_ap_int_odl: gsc-ap-int-odl {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment