arm64: dts: qcom: sc7180-trogdor: Split out keyboard node and describe detachables

Trogdor devices that have a detachable keyboard still have a
non-detachable keyboard input device present because we include the
cros-ec-keyboard.dtsi snippet in the top-level sc7180-trogdor.dtsi file
that every variant board includes. We do this because the
keyboard-controller node also provides some buttons like the power
button and volume buttons. Unfortunately, this means we register a
keyboard input device that doesn't do anything on boards with a
detachable keyboard.

Change the node's compatible on detachables to the newly introduced
"google,cros-ec-keyb-switches" compatible to indicate that there are
only switches and no keyboard to register. Similarly, move the keyboard
include that defines the keyboard-controller node out of
sc7180-trogdor.dtsi to boards that actually have a keyboard so that the
matrix properties are not defined on boards with the switches
compatible. Future boards can either use the include approach or the
node definition approach to describe a keyboard with possible switches
or just some switches.

Cc: Benson Leung <bleung@chromium.org>
Cc: Guenter Roeck <groeck@chromium.org>
Cc: Douglas Anderson <dianders@chromium.org>
Cc: Hsin-Yi Wang <hsinyi@chromium.org>
Cc: "Joseph S. Barrera III" <joebar@chromium.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220627212802.3593012-1-swboyd@chromium.org
This commit is contained in:
Stephen Boyd 2022-06-27 14:28:02 -07:00 committed by Bjorn Andersson
parent b39961659f
commit a10b760b74
11 changed files with 33 additions and 2 deletions

View File

@ -81,6 +81,10 @@ &camcc {
};
&cros_ec {
keyboard-controller {
compatible = "google,cros-ec-keyb-switches";
};
cros_ec_proximity: proximity {
compatible = "google,cros-ec-mkbp-proximity";
label = "proximity-wifi";

View File

@ -114,6 +114,12 @@ &camcc {
status = "okay";
};
&cros_ec {
keyboard-controller {
compatible = "google,cros-ec-keyb-switches";
};
};
&panel {
compatible = "samsung,atna33xc20";
enable-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;

View File

@ -6,7 +6,7 @@
*/
/* This file must be included after sc7180-trogdor.dtsi */
#include <arm/cros-ec-keyboard.dtsi>
#include "sc7180-trogdor-lte-sku.dtsi"
&alc5682 {

View File

@ -6,6 +6,7 @@
*/
#include "sc7180-trogdor.dtsi"
#include <arm/cros-ec-keyboard.dtsi>
&ap_sar_sensor {
semtech,cs0-ground;

View File

@ -58,6 +58,12 @@ &camcc {
status = "okay";
};
&cros_ec {
keyboard-controller {
compatible = "google,cros-ec-keyb-switches";
};
};
&dsi0 {
panel: panel@0 {

View File

@ -6,6 +6,7 @@
*/
/* This file must be included after sc7180-trogdor.dtsi */
#include <arm/cros-ec-keyboard.dtsi>
&ap_sar_sensor {
compatible = "semtech,sx9324";

View File

@ -6,6 +6,8 @@
*/
#include "sc7180-trogdor.dtsi"
/* Must come after sc7180-trogdor.dtsi to modify cros_ec */
#include <arm/cros-ec-keyboard.dtsi>
#include "sc7180-trogdor-ti-sn65dsi86.dtsi"
/ {

View File

@ -46,6 +46,12 @@ &camcc {
status = "okay";
};
&cros_ec {
keyboard-controller {
compatible = "google,cros-ec-keyb-switches";
};
};
&dsi0 {
panel: panel@0 {
/* Compatible will be filled in per-board */

View File

@ -8,6 +8,8 @@
/dts-v1/;
#include "sc7180-trogdor.dtsi"
/* Must come after sc7180-trogdor.dtsi to modify cros_ec */
#include <arm/cros-ec-keyboard.dtsi>
#include "sc7180-trogdor-ti-sn65dsi86.dtsi"
/ {

View File

@ -104,6 +104,10 @@ &cros_ec {
base_detection: cbas {
compatible = "google,cros-cbas";
};
keyboard-controller {
compatible = "google,cros-ec-keyb-switches";
};
};
&dsi0 {

View File

@ -906,7 +906,6 @@ cros_ec_fp: ec@0 {
};
};
#include <arm/cros-ec-keyboard.dtsi>
#include <arm/cros-ec-sbs.dtsi>
&uart3 {