重现步骤
就是在加庐山派的3.1寸屏幕的触摸驱动的时候,不知道为什么,明明i2c那些都配置好了,但就是搜不到,很奇怪
期待结果和实际结果
软硬件版本信息
linux+rt-smart系统,版本为k230_canmv_lckfb_defconfig v1.9
错误日志
尝试解决过程
补充材料
重现步骤
就是在加庐山派的3.1寸屏幕的触摸驱动的时候,不知道为什么,明明i2c那些都配置好了,但就是搜不到,很奇怪
期待结果和实际结果
软硬件版本信息
linux+rt-smart系统,版本为k230_canmv_lckfb_defconfig v1.9
错误日志
尝试解决过程
补充材料
src/little/linux/arch/riscv/boot/dts/kendryte/k230_canmv_lckfb.dts 里面增加类似 如下代码试下
i2c3 = &i2c3;
aliases {
serial3 = &uart3;
mmc0 = &mmc_sd0;
mmc1 = &mmc_sd1;
i2c0 = &i2c4;
i2c1 = &i2c3;
};
i2c3的初始化是好了,但是还是没法解析scl-gpio这是为什么,i2c数据不能正常写
k230_canmv_lckfb.dts
/* Copyright (c) 2023, Canaan Bright Sight Co., Ltd
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include "k230.dtsi"
#include "clock_provider.dtsi" /* k230 soc clock tree */
#include "clock_consumer.dtsi" /* k230 soc clock consumer */
#include "reset_provider.dtsi" /* k230 soc reset provider */
#include "reset_consumer.dtsi" /* k230 soc reset consumer */
#include "power_provider.dtsi" /* k230 soc power provider */
#include "power_consumer.dtsi" /* k230 soc power consumer */
#include "gpio_provider.dtsi" /* k230 soc gpio provider */
#include "gpio_consumer.dtsi" /* k230 soc gpio consumer */
#include "display_st7701_480*800.dtsi"
#include <dt-bindings/interrupt-controller/irq.h>
/ {
aliases {
serial0 = &uart0;
i2c3 = &i2c3;
};
chosen {
bootargs = "";
linux,initrd-start = <0x0 0xa100000>;
linux,initrd-end = <0x0 0x0>;
stdout-path = "serial0:115200";
};
sound {
status = "disable";
compatible = "canaan,k230-audio-inno";
canaan,model = "CANAAN_K230_I2S_INNO";
canaan,k230-i2s-controller = <&i2s>;
canaan,k230-audio-codec = <&inno_codec>;
};
};
&ddr {
reg = <0x0 0x8200000 0x0 0x7dff000>; /*linux memory config*/
};
&usbotg0 {
status = "okay";
};
&usbotg1 {
dr_mode = "host";
status = "okay";
};
&mmc_sd0{
status = "okay";
rx_delay_line = <0x0d>;
tx_delay_line = <0xc0>;
};
&mmc_sd1{
status = "okay";
no-1-8-v;
cap-sd-highspeed;
mshc_ctrl_r = <0x00>;
};
/*&dsi {
status = "okay";
panel@0 {
compatible = "canaan,hx8399";
reg = <0>;
display-timings {
timing-0 {
clock-frequency = <74250000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <88>;
hback-porch = <148>;
hsync-len = <44>;
vfront-porch = <36>;
vback-porch = <4>;
vsync-len = <5>;
};
};
};
};*/
&uart0 {
status = "okay";
};
&pinctrl {
jtag_pins: jtag-pins {
jtag-tck-cfg {
pinmux = <K230_PINMUX(2, 1)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-pull-down;
input-schmitt-enable;
};
jtag-tdi-cfg {
pinmux = <K230_PINMUX(3, 1)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-disable;
};
jtag-tdo-cfg {
pinmux = <K230_PINMUX(4, 1)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
};
jtag-tms-cfg {
pinmux = <K230_PINMUX(5, 1)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-pull-up;
};
};
uart2_pins: uart2-pins {
uart2-pins-cfg {
pinmux = <K230_PINMUX(5, 3)>, /* uart2 txd */
<K230_PINMUX(6, 3)>; /* uart2 rxd */
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-disable;
};
};
pwm2_pins: pwm2-pins {
pwm2-pin-cfg {
pinmux = <K230_PINMUX(7, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-disable;
input-schmitt-enable;
};
};
pwm3_pins: pwm3-pins {
pwm3-pin-cfg {
pinmux = <K230_PINMUX(8, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-disable;
input-schmitt-enable;
};
};
pwm4_pins: pwm4-pins {
pwm4-pin-cfg {
pinmux = <K230_PINMUX(9, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-disable;
input-schmitt-enable;
};
};
iis_pins: iis-pins {
iis-clk-cfg {
pinmux = <K230_PINMUX(32, 2)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
};
iis-ws-cfg {
pinmux = <K230_PINMUX(33, 2)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
};
iis-din0-cfg {
pinmux = <K230_PINMUX(34, 2)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-disable;
};
iis-dout0-cfg {
pinmux = <K230_PINMUX(35, 2)>;
slew-rate = <0>;
drive-strength = <4>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
};
};
uart4_pins: uart4-pins {
uart4-txd-cfg {
pinmux = <K230_PINMUX(36, 4)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
input-schmitt-enable;
};
uart4-rxd-cfg {
pinmux = <K230_PINMUX(37, 4)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-disable;
input-schmitt-enable;
};
};
uart0_pins: uart0-pins {
uart0-txd-cfg {
pinmux = <K230_PINMUX(38, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
output-enable;
bias-disable;
input-schmitt-enable;
};
uart0-rxd-cfg {
pinmux = <K230_PINMUX(39, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
bias-disable;
input-schmitt-enable;
};
};
iic1_pins: iic1-pins {
iic1-pins-cfg {
pinmux = <K230_PINMUX(40, 2)>, /* iic1 scl */
<K230_PINMUX(41, 2)>; /* iic1 sda */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
};
iic3_pins: iic3-pins {
iic3-pins-cfg {
pinmux = <K230_PINMUX(44, 2)>, /* iic3 scl */
<K230_PINMUX(45, 2)>; /* iic3 sda */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
};
iic4_pins: iic4-pins {
iic4-pins-cfg {
pinmux = <K230_PINMUX(46, 3)>, /* iic4 scl */
<K230_PINMUX(47, 3)>; /* iic4 sda */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
};
iic0_pins: iic0-pins {
iic0-pins-cfg {
pinmux = <K230_PINMUX(48, 3)>, /* iic0 scl */
<K230_PINMUX(49, 3)>; /* iic0 sda */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_1V8>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
};
uart3_pins: uart3-pins {
uart3-txd-cfg {
pinmux = <K230_PINMUX(50, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
output-enable;
bias-disable;
input-schmitt-enable;
};
uart3-rxd-cfg {
pinmux = <K230_PINMUX(51, 1)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
input-enable;
bias-disable;
input-schmitt-enable;
};
};
key_pins: key-pins {
key-pins-cfg {
pinmux = <K230_PINMUX(52, 0)>, /* key0 */
<K230_PINMUX(53, 0)>; /* key1 */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
input-enable;
output-enable;
bias-disable;
input-schmitt-enable;
};
};
mmc1_pins: mmc1-pins {
mmc1-cmd-cfg {
pinmux = <K230_PINMUX(54, 2)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
mmc1-clk-cfg {
pinmux = <K230_PINMUX(55, 2)>;
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
output-enable;
bias-disable;
input-schmitt-enable;
};
mmc1-data-cfg {
pinmux = <K230_PINMUX(56, 2)>, /* mmc1 data0 */
<K230_PINMUX(57, 2)>, /* mmc1 data1 */
<K230_PINMUX(58, 2)>, /* mmc1 data2 */
<K230_PINMUX(59, 2)>; /* mmc1 data3 */
slew-rate = <0>;
drive-strength = <7>;
power-source = <K230_MSC_3V3>;
input-enable;
output-enable;
bias-pull-up;
input-schmitt-enable;
};
};
};
&i2c3 {
status = "okay";
clock-frequency = <400000>;
pinctrl-names = "default";
pinctrl-0 = <&iic3_pins>;
cst128a: touchscreen@38{
status = "okay";
compatible = "hyn,cst128a";
reg = <0x38>;
interrupt-parent = <&port23>;
interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&port24 0 IRQ_TYPE_EDGE_FALLING>;
irq-gpios = <&port23 0 GPIO_ACTIVE_LOW>;
};
};
k230.dtsi
/* Copyright (c) 2023, Canaan Bright Sight Co., Ltd
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
/dts-v1/;
#include <dt-bindings/interrupt-controller/irq.h>
#include "k230-pinctrl.h"
/ {
model = "kendryte,k230";
compatible = "kendryte,k230";
#address-cells = <2>;
#size-cells = <2>;
ddr: memory@0 {
device_type = "memory";
};
cpus {
#address-cells = <1>;
#size-cells = <0>;
timebase-frequency = <27000000>;
cpu@0 {
device_type = "cpu";
reg = <0>;
status = "okay";
compatible = "riscv";
riscv,isa = "rv64imafdcvxthead";
mmu-type = "riscv,sv39";
cpu0_intc: interrupt-controller {
#interrupt-cells = <1>;
compatible = "riscv,cpu-intc";
interrupt-controller;
};
};
};
soc {
#address-cells = <2>;
#size-cells = <2>;
compatible = "simple-bus";
ranges;
clint0: clint@f04000000 {
compatible = "riscv,clint0";
interrupts-extended = <
&cpu0_intc 3 &cpu0_intc 7
>;
reg = <0xf 0x04000000 0x0 0x04000000>;
clint,has-no-64bit-mmio;
};
intc: interrupt-controller@f00000000 {
#interrupt-cells = <1>;
compatible = "riscv,plic0";
interrupt-controller;
interrupts-extended = <
&cpu0_intc 0xffffffff &cpu0_intc 9
>;
reg = <0xf 0x00000000 0x0 0x04000000>;
reg-names = "control";
riscv,max-priority = <7>;
riscv,ndev = <200>;
};
dummy_apb: apb-clock {
compatible = "fixed-clock";
clock-frequency = <50000000>;
clock-output-names = "dummy_apb";
#clock-cells = <0>;
};
dummy_sd: apb-sdclock {
compatible = "fixed-clock";
clock-frequency = <100000000>;
clock-output-names = "dummy_sd";
#clock-cells = <0>;
};
pinctrl: pinctrl@91105000 {
compatible = "canaan,k230-pinctrl";
reg = <0x0 0x91105000 0x0 0x100>;
};
uart0: serial@91400000 {
compatible = "snps,dw-apb-uart";
reg = <0x0 0x91400000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <16>;
clock-frequency = <50000000>;
clocks = <&dummy_apb>;
clock-names = "baudclk";
reg-shift = <2>;
reg-io-width = <4>;
current-speed = <115200>;
status = "disabled";
};
uart1: serial@91401000 {
compatible = "snps,dw-apb-uart";
reg = <0x0 0x91401000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <17>;
clock-frequency = <50000000>;
clocks = <&dummy_apb>;
clock-names = "baudclk";
reg-shift = <2>;
reg-io-width = <4>;
current-speed = <115200>;
status = "disabled";
};
uart2: serial@91402000 {
compatible = "snps,dw-apb-uart";
reg = <0x0 0x91402000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <18>;
clock-frequency = <50000000>;
clocks = <&dummy_apb>;
clock-names = "baudclk";
reg-shift = <2>;
reg-io-width = <4>;
current-speed = <115200>;
status = "disabled";
};
uart3: serial@91403000 {
compatible = "snps,dw-apb-uart";
reg = <0x0 0x91403000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <19>;
clock-frequency = <50000000>;
clocks = <&dummy_apb>;
clock-names = "baudclk";
reg-shift = <2>;
reg-io-width = <4>;
current-speed = <115200>;
status = "disabled";
};
uart4: serial@91404000 {
compatible = "snps,dw-apb-uart";
reg = <0x0 0x91404000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <20>;
clock-frequency = <50000000>;
clocks = <&dummy_apb>;
clock-names = "baudclk";
reg-shift = <2>;
reg-io-width = <4>;
current-speed = <115200>;
status = "disabled";
};
mmc_sd0: sdhci0@91580000 {
compatible = "kendryte,k230-dw-mshc";
reg = <0x0 0x91580000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <142>;
interrupt-names = "sdhci0irq";
max-frequency = <200000000>;
bus-width = <8>;
sdhci,auto-cmd12;
status = "disabled";
};
mmc_sd1: sdhci1@91581000 {
compatible = "kendryte,k230-dw-mshc";
reg = <0x0 0x91581000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <144>;
interrupt-names = "sdhci1irq";
clocks = <&dummy_sd>,<&dummy_sd>;
clock-names = "core", "bus";
max-frequency = <50000000>;
bus-width = <4>;
sdhci,auto-cmd12;
status = "disabled";
};
spi0: spi@91584000 {
compatible = "snps,dwc-ssi-1.01a";
reg = <0x0 0x91584000 0x0 0x1000>;
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&intc>;
interrupts = <146>,<147>,<148>,<149>,<150>,<151>,<152>,<153>,<154>;
rx-sample-delay-ns = <5>;
num-cs = <1>;
reg-io-width = <4>;
status = "disabled";
};
spi1: spi@91582000 {
compatible = "snps,dwc-ssi-1.01a";
reg = <0x0 0x91582000 0x0 0x1000>;
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&intc>;
interrupts = <155>,<156>,<157>,<158>,<159>,<160>,<161>,<162>,<163>;
num-cs = <1>;
reg-io-width = <4>;
status = "disabled";
};
spi2: spi@91583000 {
compatible = "snps,dwc-ssi-1.01a";
reg = <0x0 0x91583000 0x0 0x1000>;
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&intc>;
interrupts = <164>,<165>,<166>,<167>,<168>,<169>,<170>,<171>,<172>;
num-cs = <1>;
reg-io-width = <4>;
status = "disabled";
};
ipcm: ipcm@91104000 {
compatible = "canaan,ipcm-interrupt";
reg = <0x0 0x91104000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <109>,<110>,<111>,<112>;
clocks = <&dummy_apb>;
status = "okay";
};
vpu: vpu@0x90400000 {
status = "okay";
compatible = "armChina,linlon-v5","armChina,linlon-v8";
reg = <0x0 0x90400000 0x0 0x10000>;
interrupt-parent = <&intc>;
interrupts = <132>;
};
/* peri dma */
pdma: pdma@80804000 {
#dma-cells = <4>;
dma-channels = <8>;
dma-requests = <35>;
status = "okay";
compatible = "canaan,k230-pdma";
reg = <0x0 0x80804000 0x0 0x400>;
interrupt-parent = <&intc>;
/*interrupts = <139>,<196>,<197>,<198>,<199>,<200>,<201>,<202>;*/
interrupts = <203>;
hardlock = <9>;
};
i2s: i2s@0x9140f000 {
status = "okay";
compatible = "snps,designware-i2s";
reg = <0x0 0x9140f000 0x0 0x400>;
dmas = <&pdma 1 0xfff 0 0x14>, <&pdma 1 0xfff 0 0x15>;
dma-names = "tx", "rx";
};
/* audio */
audio: audio@0x9140f400 {
status = "okay";
compatible = "canaan,k230-audio";
reg = <0x0 0x9140f400 0x0 0xc00>;
};
inno_codec:inno_codec@0x9140e000{
status = "okay";
compatible = "k230,inno-codec";
reg = <0x0 0x9140e000 0x0 0x1000>;
};
pmu_thead: pmu_thead {
interrupt-parent = <&cpu0_intc>;
interrupts = <17>;
compatible = "thead,c900_pmu";
};
pmu: pmu@91000000 {
compatible = "kendryte, k230-pmu";
reg = <0x0 0x91000000 0x0 0xb0>;
interrupt-parent = <&intc>;
interrupts = <175>;
status = "disabled";
/*
int0 {
force-powerdown-value = <320000>;
power-event-value = <96000>;
debounce-value = <256>;
type = <IRQ_TYPE_EDGE_RISING>;
wakeup;
event;
};
int1 {
debounce-value = <256>;
edge-cnt-type = <IRQ_TYPE_EDGE_RISING>;
edge-cnt-value = <1>;
edge-cnt-wakeup;
edge-cnt-event;
type = <IRQ_TYPE_EDGE_RISING>;
wakeup;
event;
};
int2 {
debounce-value = <256>;
type = <IRQ_TYPE_EDGE_RISING>;
wakeup;
event;
};
int3 {
debounce-value = <256>;
type = <IRQ_TYPE_EDGE_RISING>;
wakeup;
event;
};
int4 {
type = <IRQ_TYPE_EDGE_FALLING>;
wakeup;
event;
};
int5 {
type = <IRQ_TYPE_EDGE_RISING>;
wakeup;
event;
};
rtc {
alarm-wakeup;
alarm-event;
tick-wakeup;
tick-event;
};
*/
};
gpu: gpu@90800000 {
compatible = "verisilicon,gc8000ul";
reg = <0x0 0x90800000 0x0 0x4000>;
interrupt-parent = <&intc>;
interrupts = <135>;
};
i2c0: i2c@91405000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,designware-i2c";
reg = <0x0 0x91405000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <21>;
clock-frequency = <100000>;
status = "disabled";
};
i2c1: i2c@91406000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,designware-i2c";
reg = <0x0 0x91406000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <22>;
clock-frequency = <400000>;
status = "disabled";
};
i2c2: i2c@91407000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,designware-i2c";
reg = <0x0 0x91407000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <23>;
clock-frequency = <400000>;
status = "disabled";
};
i2c3: i2c@91408000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,designware-i2c";
reg = <0x0 0x91408000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <24>;
clock-frequency = <400000>;
status = "disabled";
};
i2c4: i2c@91409000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,designware-i2c";
reg = <0x0 0x91409000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <25>;
clock-frequency = <400000>;
status = "disabled";
};
usbotg0: usb-otg@91500000 {
compatible = "kendryte,k230-otg";
reg = <0x0 0x91500000 0x0 0x10000>;
interrupt-parent = <&intc>;
interrupts = <173>;
g-rx-fifo-size = <512>;
g-np-tx-fifo-size = <64>;
g-tx-fifo-size = <512 1024 64 64 64 64>;
dr_mode = "otg";
otg-rev = <0x200>;
status = "disabled";
};
usbotg1: usb-otg@91540000 {
compatible = "kendryte,k230-otg";
reg = <0x0 0x91540000 0x0 0x10000>;
interrupt-parent = <&intc>;
interrupts = <174>;
g-rx-fifo-size = <512>;
g-np-tx-fifo-size = <64>;
g-tx-fifo-size = <512 1024 64 64 64 64>;
dr_mode = "otg";
otg-rev = <0x200>;
status = "disabled";
};
sysctl: sysctl {
status = "okay";
#address-cells = <2>;
#size-cells = <2>;
compatible = "simple-bus";
ranges;
sysctl_clock: sysctl_clock@91100000 {
status = "okay";
compatible = "simple-bus";
reg = <0x0 0x91100000 0x0 0x1000>;
};
sysctl_reset: sysctl_reset@91101000 {
status = "okay";
compatible = "simple-bus";
reg = <0x0 0x91101000 0x0 0x1000>;
};
sysctl_boot: sysctl_boot@91102000 {
status = "okay";
compatible = "simple-bus";
reg = <0x0 0x91102000 0x0 0x1000>;
};
sysctl_power: sysctl_power@91103000 {
status = "okay";
compatible = "simple-bus";
reg = <0x0 0x91103000 0x0 0x1000>;
};
};
security: security {
status = "okay";
compatible = "simple-bus";
#address-cells = <2>;
#size-cells = <2>;
ranges;
aes: aes@91210200 {
status = "okay";
compatible = "canaan,k230-crypto";
reg = <0x0 0x91210200 0x0 0x0100>;
hardlock = <7>;
};
hash: hash@91210800 {
status = "okay";
compatible = "canaan,k230-hash";
reg = <0x0 0x91210800 0x0 0x0100>;
hardlock = <6>;
};
rsa: rsa@91211000 {
status = "okay";
compatible = "canaan,k230-rsa";
reg = <0x0 0x91211000 0x0 0x1000>;
};
trng: trng@91213000 {
status = "okay";
compatible = "canaan,k230-rng";
reg = <0x0 0x91213000 0x0 0x2AC>;
};
otp: otp@91213500 {
status = "okay";
compatible = "canaan,k230-otp";
reg = <0x0 0x91213500 0x0 0x300>;
};
};
tsensor: tsensor@91107000 {
status = "okay";
compatible = "canaan,k230-tsensor";
reg = <0x0 0x91107000 0x0 0x800>;
hardlock = <2>;
};
hardlock: canaan-hardlock@91104000 {
compatible = "canaan,k230-hardlock";
reg = <0x0 0x91104000 0x0 0x01000>;
};
adc: adc@9140d000 {
compatible = "canaan,k230-adc";
reg = <0x0 0x9140d000 0x0 0x1000>;
#io-channel-cells = <1>;
};
pwm: pwm@9140a000 {
compatible = "canaan,k230-pwm";
reg = <0x0 0x9140a000 0x0 0x1000>;
#pwm-cells = <2>;
};
watchdog0: wdt0@91106000 {
compatible = "snps,dw-wdt";
reg = <0x0 0x91106000 0x0 0x800>;
interrupt-parent = <&intc>;
interrupts = <107>;
};
timer0: timer0@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <0>;
};
timer1: timer1@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <1>;
};
timer2: timer2@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <2>;
};
timer3: timer3@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <3>;
};
timer4: timer4@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <4>;
};
timer5: timer5@91105800 {
compatible = "canaan,k230-hwtimer";
reg = <0x0 0x91105800 0x0 0x800>;
index = <5>;
};
display: display-subsystem {
compatible = "canaan,display-subsystem";
ports = <&vo_out>;
status = "okay";
};
ws2812: ws2812@9140f000 {
status = "disabled";
compatible = "canaan,i2s-ws2812";
reg = <0x0 0x9140F000 0x0 0x1000>;
interrupt-parent = <&intc>;
interrupts = <96>;
};
vo: vo@90840000 {
compatible = "canaan,k230-vo";
reg = <0x0 0x90840000 0x0 0x10000 >;
interrupt-parent = <&intc>;
interrupts = <133>;
status = "okay";
vo_out: port {
#address-cells = <1>;
#size-cells = <0>;
};
};
dsi: dsi@90850000 {
compatible = "canaan,k230-mipi-dsi";
reg = <0x0 0x90850000 0x0 0x1000>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
panel@0 {
compatible = "canaan,hx8399";
reg = <0>;
panel-width-mm = <68>;
panel-height-mm = <120>;
display-timings {
timing-0 {
clock-frequency = <74437200>;
hactive = <1080>;
vactive = <1920>;
hfront-porch = <40>;
hback-porch = <20>;
hsync-len = <20>;
vfront-porch = <206>;
vback-porch = <8>;
vsync-len = <5>;
};
};
};
};
amp: amp {
status = "disabled";
compatible = "canaan,k230-amp";
};
};
};
/home/k230_sdk/src/little/linux/drivers/input/touchscreen/Kconfig
/home/k230_sdk/src/little/linux/drivers/input/touchscreen/Makefile
以上都是我触摸相关的配置,请问一下为什么会出现这种情况,为什么没法解析scl-gpios