내 노트북에 나열된 터치패드/트랙패드와 대화하려고 합니다.장치 트리. 내 USB 마우스처럼 터치패드가 /dev/에 전혀 표시되지 않습니다. 나는 메인라인 커널인 Debian 9를 실행하는 Asus C201 Chromebook(코드명 veyron speedy)을 사용하고 있으며 모든 계정에서 터치패드가 작동해야 하지만 /dev/에서는 볼 수 없습니다. 데비안이 그것을 볼 수 있을지 궁금합니다.
해당 컴퓨터 장치 트리의 관련 부분은 다음과 같습니다.
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 중 하나가 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 인터페이스이지만 rockchip의 일련의 전용 레지스터를 사용합니다.
I2C 버스를 찾아보셨나요 /sys/bus
? /sys/class
?