私のラップトップに記載されているタッチパッド/トラックパッドと会話しようとしています。デバイスツリー。私のUSBマウスのように、タッチパッドは/ dev /にまったく表示されません。私はメインラインカーネルであるDebian 9を実行しているAsus C201 Chromebook(コード名veyron speedy)を使用していますが、すべてのアカウントでタッチパッドが機能するはずですが、/ dev /では見えません。 Debianがそれを見ることができるかどうか疑問に思います。
対応するコンピュータ装置ツリーの関連部分は以下の通りである。
trackpad {
trackpad-int {
rockchip,pins = <0x7 0x3 0x0 0x6a>;
linux,phandle = <0x31>;
phandle = <0x31>;
};
};
これは次の出力ですcat /sys/kernel/debug/gpio
。
gpiochip0: GPIOs 0-23, parent: platform/pinctrl, gpio0:
gpio-5 ( |Power ) in hi
gpio-6 ( |Lid ) in hi
gpio-8 ( |gpio-charger ) in lo
gpio-11 ( |vcc5_host1 ) out hi
gpio-12 ( |vcc5_host2 ) out hi
gpio-13 ( |? ) out lo
gpiochip1: GPIOs 24-55, parent: platform/pinctrl, gpio1:
gpiochip2: GPIOs 56-87, parent: platform/pinctrl, gpio2:
gpio-65 ( |reset ) in lo
gpio-68 ( |backlight_regulator ) out hi
gpio-69 ( |vcc18_lcd ) out hi
gpiochip3: GPIOs 88-119, parent: platform/pinctrl, gpio3:
gpiochip4: GPIOs 120-151, parent: platform/pinctrl, gpio4:
gpio-148 ( |reset ) in lo
gpiochip5: GPIOs 152-183, parent: platform/pinctrl, gpio5:
gpio-171 ( |vcc50_hdmi ) out hi
gpiochip6: GPIOs 184-215, parent: platform/pinctrl, gpio6:
gpiochip7: GPIOs 216-247, parent: platform/pinctrl, gpio7:
gpio-218 ( |enable ) out hi
gpio-221 ( |cd ) in hi
gpio-230 ( |panel_regulator ) out hi
gpio-237 ( |vcc_5v ) out hi
gpiochip8: GPIOs 248-263, parent: platform/pinctrl, gpio8:
これらのGPIOの1つがdtbにリストされているタッチパッドですか?
答え1
完全なrk3288-veyron-chromebook.dtsi
声明
&i2c4 {
trackpad@15 {
compatible = "elan,ekth3000";
reg = <0x15>;
interrupt-parent = <&gpio7>;
interrupts = <RK_PA3 IRQ_TYPE_EDGE_FALLING>;
pinctrl-names = "default";
pinctrl-0 = <&trackpad_int>;
vcc-supply = <&vcc33_io>;
wakeup-source;
};
};
含まれているファイルを確認rk3288-veyron.dtsi
してください。
&i2c4 {
status = "okay";
clock-frequency = <400000>;
i2c-scl-falling-time-ns = <50>; /* 11ns measured */
i2c-scl-rising-time-ns = <300>; /* 225ns measured */
};
そしてさらに進むrk3288.dtsi
i2c4: i2c@ff160000 {
compatible = "rockchip,rk3288-i2c";
reg = <0x0 0xff160000 0x0 0x1000>;
interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
#address-cells = <1>;
#size-cells = <0>;
clock-names = "i2c";
clocks = <&cru PCLK_I2C4>;
pinctrl-names = "default";
pinctrl-0 = <&i2c4_xfer>;
status = "disabled";
};
だから、これはI2Cインターフェースに非常に似ているようです。いいえGPIOインターフェイスですが、ロックチップの一連の専用レジスタを使用します。
I2Cバスを探しました/sys/bus
か?/sys/class
?