Install driver for Silead Capacitive Touchscreen

Post Reply
RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Install driver for Silead Capacitive Touchscreen

Post by RFLX »

Hey there!

I am trying to get the Silead GSL Capacitive Touchscreen to work!
Specs:
-> Odroid C4
-> Android 9.0
-> Kernel Version: 4.9.113

The Touchscreen is connected via I2C, I installed i2c-tools to check:

Code: Select all

130|odroidc4:/ # i2cdetect -l
i2c-1	i2c       	Meson I2C adapter               	I2C adapter
i2c-0	i2c       	Meson I2C adapter               	I2C adapter
And for i2c-0 i get:

Code: Select all

odroidc4:/ # i2cdetect -y 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: 40 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --  
The touchscreen will always reply on 0x40:

Code: Select all

odroidc4:/ # i2cget 0 0x40                                                                                                                                                            
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will read from device file /dev/i2c-0, chip address 0x40, current data
address, using read byte.
Continue? [Y/n] y
0xfa
I downloaded the kernel (https://wiki.odroid.com/odroid-c4/softw ... __android1) and found a kernel module named "silead" in the menuconfig (Device Drivers -> Input device support -> Touchscreens -> Silead I2C touchscreen)
I compiled everyting and looked for the silead.ko. Then I uploaded the kernel object to the C4 and did insmod silead.ko:

Code: Select all

:~/kernel/linux$ find . -name '*ko' | grep silead
./drivers/input/touchscreen/silead.ko

~/kernel/linux$ adb push drivers/input/touchscreen/silead.ko /sdcard
drivers/input/touchscreen/silead.ko: 1 file pushed, 0 skipped. 706.0 MB/s (304328 bytes in 0.000s)

odroidc4:/ # insmod /sdcard/silead.ko                                                                                                                                                 
odroidc4:/ # dmesg | grep silead
[   90.792407] type=1400 audit(1613722955.576:240): avc: denied { module_load } for pid=4686 comm="insmod" path="/storage/emulated/0/silead.ko" dev="sdcardfs" ino=4572 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
[   90.796631] type=1400 audit(1613722955.576:240): avc: denied { module_load } for pid=4686 comm="insmod" path="/storage/emulated/0/silead.ko" dev="sdcardfs" ino=4572 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
odroidc4:/ # lsmod
Module                  Size  Used by
silead                 16384  0 
vpu                    49152  0 
encoder                53248  0 
amvdec_avs2           200704  0 
amvdec_vp9            122880  0 
amvdec_vc1             57344  0 
amvdec_real            40960  0 
amvdec_mmpeg4          40960  0 
amvdec_mpeg4           57344  0 
amvdec_mmpeg12         45056  0 
amvdec_mpeg12          90112  0 
amvdec_mmjpeg          28672  0 
amvdec_mjpeg           36864  0 
amvdec_h265           147456  0 
amvdec_h264mvc         49152  0 
amvdec_mh264          159744  0 
amvdec_h264           131072  0 
amvdec_avs             61440  0 
stream_input          192512  10 amvdec_avs2,amvdec_vp9,amvdec_real,amvdec_mmpeg12,amvdec_mpeg12,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs
decoder_common        188416  17 encoder,amvdec_avs2,amvdec_vp9,amvdec_vc1,amvdec_real,amvdec_mmpeg4,amvdec_mpeg4,amvdec_mmpeg12,amvdec_mpeg12,amvdec_mmjpeg,amvdec_mjpeg,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input
firmware               28672  18 encoder,amvdec_avs2,amvdec_vp9,amvdec_vc1,amvdec_real,amvdec_mmpeg4,amvdec_mpeg4,amvdec_mmpeg12,amvdec_mpeg12,amvdec_mmjpeg,amvdec_mjpeg,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input,decoder_common
media_clock            45056  12 vpu,encoder,amvdec_avs2,amvdec_vp9,amvdec_mpeg12,amvdec_h265,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input,decoder_common,firmware
spi_meson_spicc        20480  0 
spidev                 20480  0 
mali_kbase            569344  22 

As you can see I get a avc: denied { module_load } from dmesg and the touchscreen is not working either.

/proc/bus/input/devices also does not show the silead touchscreen:

Code: Select all

odroidc4:/ # cat /proc/bus/input/devices                                                                                                                                              
I: Bus=0010 Vendor=0001 Product=0001 Version=0100
N: Name="aml_keypad"
P: Phys=keypad/input0
S: Sysfs=/devices/platform/ff808040.rc/input/input0
U: Uniq=
H: Handlers=mouse0 event0 
B: PROP=0
B: EV=7
B: KEY=ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffff00000000 70000 ffffffffffffffff ffffffffffffffff ffffffffffffffff fffffffffffffffe
B: REL=103

I: Bus=0000 Vendor=0001 Product=0001 Version=0100
N: Name="aml_vkeypad"
P: Phys=keypad/input0
S: Sysfs=/devices/platform/rtc/input/input1
U: Uniq=
H: Handlers=event1 
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0010 Vendor=1b8e Product=0cec Version=0001
N: Name="cec_input"
P: Phys=
S: Sysfs=/devices/virtual/input/input2
U: Uniq=
H: Handlers=event2 
B: PROP=0
B: EV=3
B: KEY=1 0 0 10000000000000 0

I: Bus=0019 Vendor=16b4 Product=0701 Version=0001
N: Name="vt-input"
P: Phys=vt-input/input0
S: Sysfs=/devices/virtual/input/input3
U: Uniq=
H: Handlers=event3 
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0003 Vendor=18f8 Product=1485 Version=0111
N: Name="USB OPTICAL MOUSE "
P: Phys=usb-xhci-hcd.0.auto-1.4/input0
S: Sysfs=/devices/platform/ff500000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.4/1-1.4:1.0/0003:18F8:1485.0001/input/input4
U: Uniq=
H: Handlers=mouse1 event4 
B: PROP=0
B: EV=17
B: KEY=1f0000 0 0 0 0
B: REL=103
B: MSC=10
Something weird: I dont get the right output from

Code: Select all

odroidc4:/ # cat /sys/bus/i2c/devices/i2c-0/0-0051/name                                                                                                                               
pcf8563
PCF8563 is some real-time clock (regarding to google)

Things I found on the internet (idk if that is useful):
https://github.com/onitake/gsl-firmware
https://github.com/sigboe/gslX68X
https://linux-sunxi.org/GSL1680

I am stuck on this problem for many hours now, I would be very thankful for any help. :)
Last edited by RFLX on Tue Apr 20, 2021 10:16 pm, edited 1 time in total.

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
These users thanked the author tobetter for the post:
RFLX (Tue Mar 23, 2021 1:23 am)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Mon Mar 22, 2021 4:10 am
What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
Thank you for the reply!

Any Idea where that should be enabled?

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Tue Mar 23, 2021 1:23 am
tobetter wrote:
Mon Mar 22, 2021 4:10 am
What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
Thank you for the reply!

Any Idea where that should be enabled?
What do you want to enable SELinux?
If you do not familar to SELinux or does not have file based security concern, do not try and enable it.
These users thanked the author tobetter for the post:
RFLX (Fri Apr 09, 2021 7:59 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Tue Mar 23, 2021 2:23 am
RFLX wrote:
Tue Mar 23, 2021 1:23 am
tobetter wrote:
Mon Mar 22, 2021 4:10 am
What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
Thank you for the reply!

Any Idea where that should be enabled?
What do you want to enable SELinux?
If you do not familar to SELinux or does not have file based security concern, do not try and enable it.
I meant more like how / where to edit the device tree with the information (https://github.com/hardkernel/linux/blo ... sl1680.txt)

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Tue Mar 23, 2021 2:29 am
tobetter wrote:
Tue Mar 23, 2021 2:23 am
RFLX wrote:
Tue Mar 23, 2021 1:23 am
tobetter wrote:
Mon Mar 22, 2021 4:10 am
What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
Thank you for the reply!

Any Idea where that should be enabled?
What do you want to enable SELinux?
If you do not familar to SELinux or does not have file based security concern, do not try and enable it.
I meant more like how / where to edit the device tree with the information (https://github.com/hardkernel/linux/blo ... sl1680.txt)
Ah, sorry. You can refert to another touch driver in the kernel tree already.
https://github.com/hardkernel/linux/blo ... x-i2c1.dts

Based on the document, I would go with this change if I have the device. Since I do not have the device, I cannot test it but you could try. :)

Code: Select all

diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
index bca7777992d1..864cee19528b 100644
--- a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
@@ -25,7 +25,8 @@ dtbo-$(CONFIG_ARCH_MESON64_ODROIDC4) += spi0.dtbo             \
                                        pwm_a-pwmfan.dtbo       \
                                        pwm_b-backlight.dtbo    \
                                        gpio-joystick0.dtbo     \
-                                       gpio-joystick1.dtbo
+                                       gpio-joystick1.dtbo     \
+                                       gsl1680-i2c1.dts
 
 targets        += $(dtbo-y)
 always := $(dtbo-y)
diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts
new file mode 100644
index 000000000000..35cc1269b123
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts
@@ -0,0 +1,32 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/meson-g12a-gpio.h>
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+       fragment@0 {
+               // i2c3 aliased with i2c1.
+               target = <&i2c3>;
+
+               __overlay__ {
+                       status = "okay";
+
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       gsl1680: touchscreen@40 {
+                               compatible = "silead,gsl1680";
+                               reg = <0x40>;
+                               interrupt-parent = <&pio>;
+                               interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>;
+                               power-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_LOW>;
+                               touchscreen-size-x = <480>;
+                               touchscreen-size-y = <800>;
+                               touchscreen-inverted-x;
+                               touchscreen-swapped-x-y;
+                               silead,max-fingers = <5>;
+                       };
+               };
+       };
+};
These users thanked the author tobetter for the post:
RFLX (Tue Mar 23, 2021 3:02 am)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Tue Mar 23, 2021 2:47 am
RFLX wrote:
Tue Mar 23, 2021 2:29 am
tobetter wrote:
Tue Mar 23, 2021 2:23 am
RFLX wrote:
Tue Mar 23, 2021 1:23 am
tobetter wrote:
Mon Mar 22, 2021 4:10 am
What I read from your post, the missing part to enable the touch screen is the device tree which is not mentioned and included. I think you have to creat one like the reference and load it on booting, so at least kernel will try to initiate the driver.
https://github.com/hardkernel/linux/blo ... sl1680.txt

You can ignore the error with avc: denied { module_load } since Android for ODROID does not use SELinux and the message is just a warning when the SELinux kernel parameter is given with permissive
Thank you for the reply!

Any Idea where that should be enabled?
What do you want to enable SELinux?
If you do not familar to SELinux or does not have file based security concern, do not try and enable it.
I meant more like how / where to edit the device tree with the information (https://github.com/hardkernel/linux/blo ... sl1680.txt)
Ah, sorry. You can refert to another touch driver in the kernel tree already.
https://github.com/hardkernel/linux/blo ... x-i2c1.dts

Based on the document, I would go with this change if I have the device. Since I do not have the device, I cannot test it but you could try. :)

Code: Select all

diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
index bca7777992d1..864cee19528b 100644
--- a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/Makefile
@@ -25,7 +25,8 @@ dtbo-$(CONFIG_ARCH_MESON64_ODROIDC4) += spi0.dtbo             \
                                        pwm_a-pwmfan.dtbo       \
                                        pwm_b-backlight.dtbo    \
                                        gpio-joystick0.dtbo     \
-                                       gpio-joystick1.dtbo
+                                       gpio-joystick1.dtbo     \
+                                       gsl1680-i2c1.dts
 
 targets        += $(dtbo-y)
 always := $(dtbo-y)
diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts
new file mode 100644
index 000000000000..35cc1269b123
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc4/gsl1680-i2c1.dts
@@ -0,0 +1,32 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/meson-g12a-gpio.h>
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+       fragment@0 {
+               // i2c3 aliased with i2c1.
+               target = <&i2c3>;
+
+               __overlay__ {
+                       status = "okay";
+
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       gsl1680: touchscreen@40 {
+                               compatible = "silead,gsl1680";
+                               reg = <0x40>;
+                               interrupt-parent = <&pio>;
+                               interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>;
+                               power-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_LOW>;
+                               touchscreen-size-x = <480>;
+                               touchscreen-size-y = <800>;
+                               touchscreen-inverted-x;
+                               touchscreen-swapped-x-y;
+                               silead,max-fingers = <5>;
+                       };
+               };
+       };
+};
Hey,
I synced the full android and did the changes you provided.
I built the image, installed it on a sd card and booted android, unfortunately the touchscreen is not working.
I ran lsmod:

Code: Select all

patrick@ubuntu:~/Desktop/odroid-c4$ adb shell
odroidc4:/ # lsmod                                                                                                                                     
Module                  Size  Used by
vpu                    49152  0 
encoder                53248  0 
amvdec_avs2           200704  0 
amvdec_vp9            122880  0 
amvdec_vc1             57344  0 
amvdec_real            40960  0 
amvdec_mmpeg4          40960  0 
amvdec_mpeg4           57344  0 
amvdec_mmpeg12         45056  0 
amvdec_mpeg12          90112  0 
amvdec_mmjpeg          28672  0 
amvdec_mjpeg           36864  0 
amvdec_h265           147456  0 
amvdec_h264mvc         49152  0 
amvdec_mh264          159744  0 
amvdec_h264           131072  0 
amvdec_avs             61440  0 
stream_input          188416  10 amvdec_avs2,amvdec_vp9,amvdec_real,amvdec_mmpeg12,amvdec_mpeg12,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs
decoder_common        188416  17 encoder,amvdec_avs2,amvdec_vp9,amvdec_vc1,amvdec_real,amvdec_mmpeg4,amvdec_mpeg4,amvdec_mmpeg12,amvdec_mpeg12,amvdec_mmjpeg,amvdec_mjpeg,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input
firmware               28672  18 encoder,amvdec_avs2,amvdec_vp9,amvdec_vc1,amvdec_real,amvdec_mmpeg4,amvdec_mpeg4,amvdec_mmpeg12,amvdec_mpeg12,amvdec_mmjpeg,amvdec_mjpeg,amvdec_h265,amvdec_h264mvc,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input,decoder_common
media_clock            45056  12 vpu,encoder,amvdec_avs2,amvdec_vp9,amvdec_mpeg12,amvdec_h265,amvdec_mh264,amvdec_h264,amvdec_avs,stream_input,decoder_common,firmware
spi_meson_spicc        20480  0 
spidev                 20480  0 
mali_kbase            548864  29 
Maybe because in the changes it says gslx1680 (i have the gslx5680)?
Does the silead entry in the kernel menuconfig suit the gslx5680? (Also tried that, didn't work either)

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

@RFLX, you would not able to use "gslx5680' since it's not supported symbol in the driver source.
https://github.com/hardkernel/linux/blo ... ead.c#L543

You have to check if the device tree change is applied and if the device driver is proved with the device tree, also you have to check the hardware connection of I2C bus and its slave address for sure.
These users thanked the author tobetter for the post:
RFLX (Fri Apr 09, 2021 7:58 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Fri Mar 26, 2021 8:07 pm
@RFLX, you would not able to use "gslx5680' since it's not supported symbol in the driver source.
https://github.com/hardkernel/linux/blo ... ead.c#L543

You have to check if the device tree change is applied and if the device driver is proved with the device tree, also you have to check the hardware connection of I2C bus and its slave address for sure.
I tried it now for many days, no positive outcome yet.
So I can't use the silead driver?
I checked the hardware connection of I2C and i am getting a response on 0x40
How can I check if the device tree change is applied and if the device driver is proved with the device tree?

Thanks for helping!

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Thu Apr 08, 2021 10:31 pm
tobetter wrote:
Fri Mar 26, 2021 8:07 pm
@RFLX, you would not able to use "gslx5680' since it's not supported symbol in the driver source.
https://github.com/hardkernel/linux/blo ... ead.c#L543

You have to check if the device tree change is applied and if the device driver is proved with the device tree, also you have to check the hardware connection of I2C bus and its slave address for sure.
I tried it now for many days, no positive outcome yet.
So I can't use the silead driver?
I checked the hardware connection of I2C and i am getting a response on 0x40
How can I check if the device tree change is applied and if the device driver is proved with the device tree?

Thanks for helping!
Since I do not know exactly what source code you made, not sure what's the problem is.
If you like to see if the device tree overlay is applied, check the directory /proc/device-tree and look up if there is an entry for the device tree you made.
Also check out the kernel log with dmesg if there is a clue for the device tree and device driver, you can add 'printk' to the device driver if it's been loaded on booting.
These users thanked the author tobetter for the post:
RFLX (Fri Apr 09, 2021 7:58 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Thu Apr 08, 2021 10:59 pm
RFLX wrote:
Thu Apr 08, 2021 10:31 pm
tobetter wrote:
Fri Mar 26, 2021 8:07 pm
@RFLX, you would not able to use "gslx5680' since it's not supported symbol in the driver source.
https://github.com/hardkernel/linux/blo ... ead.c#L543

You have to check if the device tree change is applied and if the device driver is proved with the device tree, also you have to check the hardware connection of I2C bus and its slave address for sure.
I tried it now for many days, no positive outcome yet.
So I can't use the silead driver?
I checked the hardware connection of I2C and i am getting a response on 0x40
How can I check if the device tree change is applied and if the device driver is proved with the device tree?

Thanks for helping!
Since I do not know exactly what source code you made, not sure what's the problem is.
If you like to see if the device tree overlay is applied, check the directory /proc/device-tree and look up if there is an entry for the device tree you made.
Also check out the kernel log with dmesg if there is a clue for the device tree and device driver, you can add 'printk' to the device driver if it's been loaded on booting.
I checked /proc/device-tree and searched for gsl, but could not find anything.
I tried to manually load the ko file and the reply was: Module already loaded
I used this driver I found online:
https://github.com/hansiglaser/linux_ke ... lx680_ds.c
https://github.com/hansiglaser/linux_ke ... 0_ds.inc.c
https://github.com/hansiglaser/linux_ke ... lx680_ds.h

I had to edit gslx680_ds.c (using <linux/gpio.h> instead of <asm/gpio.h> and added <linux/module.h>) so it would compile successfully.

I put them into common/drivers/input/touchscreen/GSL5680 and created a Makefile and Kconfig:

Makefile:

Code: Select all

obj-$(CONFIG_TOUCHSCREEN_GSL5680) += gslx680_ds.o
Kconfig:

Code: Select all

config  TOUCHSCREEN_GSL5680

       tristate  "gsl5680 touchscreen driver"

       depends on INPUT && I2C

       default m

       help

         gsl5680 touchscreen driver
I added obj-$(CONFIG_INPUT_TOUCHSCREEN) += gsl5680/ to the Makefile in common/drivers/touchscreen and the source in Kconfig in .../touchscreen

I added gslx680-i2c.dts in common/arch/arm64/boot/dts/amlogic/overlays/odroidc4/ (maybe that is wrong?):

Code: Select all

/dts-v1/;

/plugin/;


#include <dt-bindings/gpio/meson-g12a-gpio.h>

#include <dt-bindings/gpio/gpio.h>


/ {

       fragment@0 {

               // i2c3 aliased with i2c1.

               target = <&i2c3>;


               __overlay__ {

                       status = "okay";


                       #address-cells = <1>;

                       #size-cells = <0>;


                       touchscreen: gslx680@40 {

                                compatible = "silead,gslx680";

                                reg = <0x40>;

                                interrupt-parent = <&gpio1>;

                                power-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;

                                pinctrl-0 = <&pinctrl_gslx680>;

                                pinctrl-names = "default";

                       };

               };

       };

};
Then I added it in the Makefile.

Then I edited the odroidc4_android_defconfig with make menuconfig and enabled the GSL5680 driver with 'y'

After building the image and installing it on a sdcard, I booted the system.

Dmesg also showed nothing, even though the driver should print some kernel messages.

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

1. After kernel compilation, do you have gslx680-i2c.dtbo? Where/how did you copy the file to Android memory card?
2. What makes you to add these lines?

Code: Select all

pinctrl-0 = <&pinctrl_gslx680>;
pinctrl-names = "default";
3. I guess the .dts file is wrong...since gpio1 is not valid symbol
4. Since your touch screen driver is compiled as built-in kernel driver, there is no .ko file.
5. There would be no logs from the driver until kernel found the same compatible property in the device tree.
6. Do you have kernel logs through UART?
These users thanked the author tobetter for the post:
RFLX (Fri Apr 09, 2021 7:58 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Fri Apr 09, 2021 7:21 pm
1. After kernel compilation, do you have gslx680-i2c.dtbo? Where/how did you copy the file to Android memory card?
2. What makes you to add these lines?

Code: Select all

pinctrl-0 = <&pinctrl_gslx680>;
pinctrl-names = "default";
3. I guess the .dts file is wrong...since gpio1 is not valid symbol
4. Since your touch screen driver is compiled as built-in kernel driver, there is no .ko file.
5. There would be no logs from the driver until kernel found the same compatible property in the device tree.
6. Do you have kernel logs through UART?
1. Yes in the overlays/odroidc4 directory there is now a gslx680-i2c1.dtbo
I compiled android with make -j4 && make -j4 selfinstall
I used win32DiskImager to install the selfinstall image on the sdcard

2&3. I thought because of that commit: https://github.com/hansiglaser/linux_ke ... 6671466d1b

4. I also compiled the kernel with the driver marked as 'm' so i can try to insmod the .ko file

5. Yeah, that makes sense :D

6. Do you mean that?

Code: Select all

130|odroidc4:/ # dmesg | grep uart                                                                                                                       
[    0.000000] Kernel command line: rootfstype=ramfs init=/init console=ttyS0,115200n8 no_console_suspend earlyprintk=aml-uart,0xff803000 quiet ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 max_freq_a55=2016 modeline=1360,768,85500,47712,60,1360,1436,1579,1792,768,771,774,798,1,1,1 customwidth=1360 customheight=768 disable_vu7=false touch_invert_x=false touch_invert_y=false zoom_rate=100 test_mt_vid=0000 test_mt_pid=0000 backlight_pwm=yes suspend_hdmiphy=1 usb-xhci.tablesize=2 prevent_sleep=1 boot_device=mmcblk1 androidboot.selinux=permissive androidboot.firstboot= jtag=disable androidboot.hardware=odroidc4 otg_device=1 buildvariant=eng colorattribute=444,8bit disablehpd=false logo=osd0,loaded,0x3d800000 hdmimode=custombuilt voutmode=hdmi osd_reverse=0 video_reverse=0 gpiopower= enable_wol=0 otg_device=1 buildvariant=eng
[    0.907609] meson_uart ff803000.serial: ==uart0 reg addr = ffffff8008609000
[    0.907667] ff803000.serial: ttyS0 at MMIO 0xff803000 (irq = 23, base_baud = 1500000) is a meson_uart
[    0.907686] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 0 to 115200
[    1.002606] meson_uart ffd24000.serial: ==uart1 reg addr = ffffff800860b000
[    1.002675] ffd24000.serial: ttyS1 at MMIO 0xffd24000 (irq = 34, base_baud = 1500000) is a meson_uart
[    1.782448] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 115200 to 115200

User avatar
joerg
Posts: 1348
Joined: Tue Apr 01, 2014 2:14 am
languages_spoken: german, english, español
ODROIDs: C1, C1+, C2, N1, N2, C4
Location: Germany
Has thanked: 86 times
Been thanked: 197 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by joerg »

No, he means a log with usb serial adapter connected to the debug port. But if you make a dmesg at adb console it would be the same.
Make a dmesg without grep. Then you will have the whole boot process log that you can upload here.
These users thanked the author joerg for the post:
RFLX (Fri Apr 09, 2021 7:58 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

joerg wrote:
Fri Apr 09, 2021 7:52 pm
No, he means a log with usb serial adapter connected to the debug port. But if you make a dmesg at adb console it would be the same.
Make a dmesg without grep. Then you will have the whole boot process log that you can upload here.
Thank you, here is the whole dmesg output:

Code: Select all

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.113-00005-g0700d749eced-dirty (patrick@ubuntu) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05) ) #4 SMP PREEMPT Thu Apr 8 01:06:24 PDT 2021
[    0.000000] Boot CPU: AArch64 Processor [411fd050]
[    0.000000] Machine model: Hardkernel ODROID-C4
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] \x0907400000 - 07500000,     1024 KB, ramoops@0x07400000
[    0.000000] __reserved_mem_alloc_size, start:0x0000000005000000, end:0x0000000005400000, len:4 MiB
[    0.000000] \x0905000000 - 05400000,     4096 KB, linux,secmon
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000ed800000, size 0 MiB
[    0.000000] \x09ed800000 - ed800000,        0 KB, linux,ppmgr
[    0.000000] __reserved_mem_alloc_size, start:0x000000007f800000, end:0x0000000080000000, len:8 MiB
[    0.000000] \x097f800000 - 80000000,     8192 KB, linux,meson-fb
[    0.000000] \x09e5800000 - ed800000,   131072 KB, linux,ion-dev
[    0.000000] \x09e3000000 - e5800000,    40960 KB, linux,di_cma
[    0.000000] __reserved_mem_alloc_size, start:0x0000000065000000, end:0x0000000078400000, len:308 MiB
[    0.000000] \x0965000000 - 78400000,   315392 KB, linux,codec_mm_cma
[    0.000000] \x09e3000000 - e3000000,        0 KB, linux,codec_mm_reserved
[    0.000000] \x09e1000000 - e3000000,    32768 KB, linux,vm0_cma
[    0.000000] cma: Reserved 8 MiB at 0x00000000e0800000
[    0.000000] On node 0 totalpages: 972800
[    0.000000] DMA zone: 15200 pages used for memmap
[    0.000000] DMA zone: 0 pages reserved
[    0.000000] DMA zone: 972800 pages, LIFO batch:31
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] percpu: Embedded 26 pages/cpu @ffffffc0e072e000 s69080 r8192 d29224 u106496
[    0.000000] pcpu-alloc: s69080 r8192 d29224 u106496 alloc=26*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 957600
[    0.000000] Kernel command line: rootfstype=ramfs init=/init console=ttyS0,115200n8 no_console_suspend earlyprintk=aml-uart,0xff803000 quiet ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 max_freq_a55=2016 modeline=1360,768,85500,47712,60,1360,1436,1579,1792,768,771,774,798,1,1,1 customwidth=1360 customheight=768 disable_vu7=false touch_invert_x=false touch_invert_y=false zoom_rate=100 test_mt_vid=0000 test_mt_pid=0000 backlight_pwm=yes suspend_hdmiphy=1 usb-xhci.tablesize=2 prevent_sleep=1 boot_device=mmcblk1 androidboot.selinux=permissive androidboot.firstboot= jtag=disable androidboot.hardware=odroidc4 otg_device=1 buildvariant=eng colorattribute=444,8bit disablehpd=false logo=osd0,loaded,0x3d800000 hdmimode=custombuilt voutmode=hdmi osd_reverse=0 video_reverse=0 gpiopower= enable_wol=0 otg_device=1 buildvariant=eng
[    0.000000] max cpufreq of cluster0 : 2016000kHz
[    0.000000] fmt_para.timing
[    0.000000] - pixel_freq 85500, frac_freq 85500
[    0.000000] - h_freq 47712, v_freq 60000
[    0.000000] - hsync_polarity 1, vsync_polarity 1
[    0.000000] - h_active 1360, h_total 1792
[    0.000000] - h_blank 432, h_front 76, h_sync 143, h_back 213
[    0.000000] - v_active 768, v_total 798
[    0.000000] - v_blank 30, v_front 3, v_sync 3, v_back 24
[    0.000000] - v_sync_ln 1
[    0.000000] fmt_para.hdmitx_vinfo
[    0.000000] - name custombuilt, mode 0
[    0.000000] - width 1360, height 768, field_height 768
[    0.000000] - aspect_ratio_num 16, aspect_ratio_den 9
[    0.000000] - video_clk 85500000
[    0.000000] - htotal 1792, vtotal 798
[    0.000000] - viu_color_fmt 2, viu_mux 2
[    0.000000] hid: -test_mt_vid_setup test_mt_vid : 0x0
[    0.000000] hid: +test_mt_pid_setup test_mt_pid : 0x0
[    0.000000] fb: osd0
[    0.000000] fb: loaded
[    0.000000] fb: 0x3d800000
[    0.000000] vout: get hdmimode: custombuilt
[    0.000000] hdmitx: voutmode : 1
[    0.000000] vpp_axis_reverse: bootargs is 0
[    0.000000] DI: di_read_canvas_reverse: bootargs is 0.
[    0.000000] phlock_phase_config: bootargs is 0.
[    0.000000] gpio-keypad: gpiopower_setup gpiopower : 0
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] Memory: 3251548K/3891200K available (13500K kernel code, 1804K rwdata, 5532K rodata, 5248K init, 1526K bss, 98980K reserved, 540672K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000] modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000] vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000   (   250 GB)
[    0.000000] .text : 0xffffff8009080000 - 0xffffff8009db0000   ( 13504 KB)
[    0.000000] .rodata : 0xffffff8009db0000 - 0xffffff800a320000   (  5568 KB)
[    0.000000] .init : 0xffffff800a320000 - 0xffffff800a840000   (  5248 KB)
[    0.000000] .data : 0xffffff800a840000 - 0xffffff800aa03200   (  1805 KB)
[    0.000000] .bss : 0xffffff800aa03200 - 0xffffff800ab80b4c   (  1527 KB)
[    0.000000] fixed   : 0xffffffbefe7fd000 - 0xffffffbefec00000   (  4108 KB)
[    0.000000] PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000   (    16 MB)
[    0.000000] vmemmap : 0xffffffbf00000000 - 0xffffffc000000000   (     4 GB maximum)
[    0.000000] 0xffffffbf00000000 - 0xffffffbf03b60000   (    59 MB actual)
[    0.000000] memory  : 0xffffffc000000000 - 0xffffffc0ed800000   (  3800 MB)
[    0.000000] can't find symbol:arm_dma_alloc
[    0.000000] can't find symbol:__alloc_from_contiguous
[    0.000000] can't find symbol:cma_allocator_alloc
[    0.000000] 0, addr:ffffff8009a516f8 +  140, aml_cma_alloc_post_hook
[    0.000000] 1, addr:ffffff8009551ac0 +   78, dma_alloc_from_contiguous
[    0.000000] 2, addr:ffffff8009212040 +  388, cma_alloc
[    0.000000] 3, addr:ffffff800920ba28 +  2d8, __kmalloc_track_caller
[    0.000000] 4, addr:ffffff8009208d98 +  2d8, __kmalloc
[    0.000000] 5, addr:ffffff8009208a78 +  258, kmem_cache_alloc_trace
[    0.000000] 6, addr:ffffff8009208828 +  250, kmem_cache_alloc
[    0.000000] 7, addr:ffffff80092087a0 +   88, __slab_alloc.isra.24.constprop.28
[    0.000000] 8, addr:ffffff8009208418 +  388, ___slab_alloc.constprop.29
[    0.000000] 9, addr:ffffff8009206150 +  440, new_slab
[    0.000000] 10, addr:ffffff80091f96f8 +   70, vmalloc
[    0.000000] 11, addr:ffffff80091f9610 +   70, vzalloc
[    0.000000] 12, addr:ffffff80091f90b8 +  2a8, __vmalloc_node_range
[    0.000000] 13, addr:ffffff80091deb18 +  110, kmalloc_order_trace
[    0.000000] 14, addr:ffffff80091de9a8 +  170, kmalloc_order
[    0.000000] 15, addr:ffffff80091bfbb0 +  168, __alloc_page_frag
[    0.000000] 16, addr:ffffff80091bfb48 +   68, alloc_pages_exact
[    0.000000] 17, addr:ffffff80091bfb18 +   30, get_zeroed_page
[    0.000000] 18, addr:ffffff80091bfac0 +   58, __get_free_pages
[    0.000000] 19, addr:ffffff80091beca0 +  e20, __alloc_pages_nodemask
[    0.000000] 20, addr:ffffff800909c610 +  250, __dma_alloc
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] \x09Build-time adjustment of leaf fanout to 64.
[    0.000000] \x09RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] irq_meson_gpio: 100 to 8 gpio interrupt mux initialized
[    0.000000] g12a_aoclkc_init: register ao clk ok!
[    0.000000] Meson chip version = RevC (2B:C - 10:0)
[    0.000000] meson_g12a_sdemmc_init: register amlogic sdemmc clk
[    0.000000] meson_g12a_sdemmc_init: register amlogic sdemmc clk
[    0.000000] meson_g12a_gpu_init: register meson gpu clk
[    0.000000] meson_g12a_media_init: register meson media clk
[    0.000000] meson_g12a_misc_init: register amlogic g12a misc clks
[    0.000000] meson_g12a_misc_init: done.
[    0.000000] g12a_clkc_init initialization complete
[    0.000000] sm1 clk probe ok
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000003] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000031] meson_bc_timer: mclk->mux_reg =ffffff800800c190,mclk->reg =ffffff800800e194
[    0.000405] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[    0.000414] pid_max: default: 32768 minimum: 301
[    0.000451] thread_stack_cache_init, vmap:ffffffc0dbc3c000, bitmap:ffffffc0dbc73000, cache page:dbc80
[    0.000458] thread_stack_cache_init, allocation vm area:ffffffc0dbc3aa40, addr:ffffff8020000000, size:20001000
[    0.000461] cpu 0, vmap_stack:[ffffffc0e0738aa0-ffffffc0e073ca90]
[    0.000464] cpu 0, irq_stack: [ffffffc0e072e060-ffffffc0e0732050]
[    0.000467] cpu 1, vmap_stack:[ffffffc0e0752aa0-ffffffc0e0756a90]
[    0.000470] cpu 1, irq_stack: [ffffffc0e0748060-ffffffc0e074c050]
[    0.000473] cpu 2, vmap_stack:[ffffffc0e076caa0-ffffffc0e0770a90]
[    0.000475] cpu 2, irq_stack: [ffffffc0e0762060-ffffffc0e0766050]
[    0.000478] cpu 3, vmap_stack:[ffffffc0e0786aa0-ffffffc0e078aa90]
[    0.000480] cpu 3, irq_stack: [ffffffc0e077c060-ffffffc0e0780050]
[    0.000527] Security Framework initialized
[    0.000534] SELinux:  Initializing.
[    0.000562] SELinux:  Starting in permissive mode
[    0.000602] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.000609] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.001204] ftrace: allocating 44685 entries in 175 pages
[    0.073792] sched-energy: CPU device node has no sched-energy-costs
[    0.073802] CPU0: update cpu_capacity 1024
[    0.073815] ASID allocator initialised with 65536 entries
[    0.119718] secmon: can't fine clear_range
[    0.120347] EFI services will not be available.
[    0.166250] Detected VIPT I-cache on CPU1
[    0.166294] CPU1: update cpu_capacity 1024
[    0.166297] CPU1: Booted secondary processor [411fd050]
[    0.198339] Detected VIPT I-cache on CPU2
[    0.198370] CPU2: update cpu_capacity 1024
[    0.198373] CPU2: Booted secondary processor [411fd050]
[    0.230450] Detected VIPT I-cache on CPU3
[    0.230477] CPU3: update cpu_capacity 1024
[    0.230479] CPU3: Booted secondary processor [411fd050]
[    0.230579] Brought up 4 CPUs
[    0.230585] SMP: Total of 4 processors activated.
[    0.230592] CPU features: detected feature: Privileged Access Never
[    0.230597] CPU features: detected feature: User Access Override
[    0.230602] CPU features: detected feature: Virtualization Host Extensions
[    0.230607] CPU features: detected feature: 32-bit EL0 Support
[    0.230771] CPU: All CPU(s) started at EL2
[    0.230792] alternatives: patching kernel code
[    0.232531] addr:ffffff802008be10 is in kernel, size fix 4096->10, data:mode=0755
[    0.232652] devtmpfs: initialized
[    0.252926] DMI not present or invalid.
[    0.253328] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.253345] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.253535] pinctrl core: initialized pinctrl subsystem
[    0.254602] NET: Registered protocol family 16
[    0.256880] schedtune: init normalization constants...
[    0.256885] schedtune: no energy model data
[    0.256889] schedtune: disabled!
[    0.266246] cpuidle: using governor menu
[    0.266368] register canvas platform driver
[    0.266404] register rdma platform driver
[    0.268702] vdso: 2 pages (1 code @ ffffff8009db7000, 1 data @ ffffff800a845000)
[    0.268717] hw-breakpoint: found 6 breakpoint and 2 watchpoint registers.
[    0.269667] DMA: preallocated 2048 KiB pool for atomic allocations
[    0.269928] clkmsr: clkmsr: driver init
[    0.269933] codec_mm_module_init
[    0.269981] media_configs_system_init
[    0.270361] aml_watch_point_probe, in, wp:2
[    0.271001] pstore: using zlib compression
[    0.271084] console [pstore-1] enabled
[    0.271090] pstore: Registered ramoops as persistent store backend
[    0.271096] ramoops: attached 0x100000@0x7400000, ecc: 0/0
[    0.273549] aml_iomap: amlogic iomap probe done
[    0.274206] vpu: driver version: v20190329(10-sm1)
[    0.274215] vpu: load vpu_clk: 666666667Hz(7)
[    0.274511] vpu: clktree_init
[    0.274587] vpu: vpu_probe OK
[    0.280198] clkmsr: msr_clk_reg0=ffffff8008451004,msr_clk_reg2=ffffff800845300c
[    0.280215] clkmsr: msr_ring_reg0=ffffff80084555fc
[    0.284436] audio_clocks: audio_clocks_probe done
[    0.286191] aml_snd_reg_map[0], reg:ff661000, size:400
[    0.286216] aml_snd_reg_map[1], reg:ff660000, size:1000
[    0.286238] aml_snd_reg_map[2], reg:ff661400, size:400
[    0.286260] aml_snd_reg_map[3], reg:ff662000, size:1000
[    0.286282] aml_snd_reg_map[4], reg:ffd01000, size:1000
[    0.286303] aml_snd_reg_map[5], reg:ff661800, size:400
[    0.286324] aml_snd_reg_map[6], reg:ff661c00, size:104
[    0.286345] aml_snd_reg_map[7], reg:ff664000, size:104
[    0.286351] amlogic auge_snd_iomap probe done
[    0.288347] aml_vdac_config_probe: cpu_id:6, name:meson-sm1-vdac
[    0.288558] aml_vdac_probe: ok
[    0.288752] canvas_probe reg=00000000ff638000,size=2000
[    0.288771] canvas maped reg_base =ffffff800846a000
[    0.297024] rdma_probe,cpu_type:1, ver:0, len:8
[    0.297279] rdma_register, rdma_table_addr ffffff80084a1000 rdma_table_addr_phy e0a00000 reg_buf ffffffc0db468000
[    0.297286] rdma_register success, handle 1 table_size 32768
[    0.297291] set_rdma_handle video rdma handle = 1.
[    0.297323] classs created ok
[    0.297337] classs file created ok
[    0.300078] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma
[    0.300191] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma
[    0.300196] codec_mm_probe ok
[    0.301276] cvbs_out: cvbsout_probe, cpu_id:7,name:meson-sm1-cvbsout
[    0.301298] cvbs_out: clk path:0
[    0.301303] cvbs_out: error: failed to get vdac_config
[    0.301467] vout: vout1: register server: cvbs_vout_server
[    0.301473] cvbs_out: register cvbs module server ok
[    0.301478] vout: vout2: register server: cvbs_vout2_server
[    0.301483] cvbs_out: register cvbs module vout2 server ok
[    0.301490] cvbs_out: chrdev devno 264241152 for disp
[    0.301743] cvbs_out: create cdev cvbs
[    0.301749] cvbs_out: cvbsout_probe OK
[    0.537679] vgaarb: loaded
[    0.537990] SCSI subsystem initialized
[    0.538213] libata version 3.00 loaded.
[    0.538548] usbcore: registered new interface driver usbfs
[    0.538618] usbcore: registered new interface driver hub
[    0.538707] usbcore: registered new device driver usb
[    0.538915] Linux video capture interface: v2.00
[    0.539025] pps_core: LinuxPPS API ver. 1 registered
[    0.539031] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.539064] PTP clock support registered
[    0.539779] dmi: Firmware registration failed.
[    0.540201] secmon: reserve_mem_size:0x300000
[    0.540278] secmon secmon: assigned reserved memory node linux,secmon
[    0.540619] secmon: get page:ffffffbf00140000, 5000
[    0.540627] secmon: share in base: 0xffffffc0050fe000, share out base: 0xffffffc0050ff000
[    0.540632] secmon: phy_in_base: 0x50fe000, phy_out_base: 0x50ff000
[    0.541504] hdmitx: system: amhdmitx_probe start
[    0.541510] hdmitx: system: Ver: 20190815
[    0.541541] hdmitx: system: hdmitx_device.chip_type : 12
[    0.541596] hdmitx: system: not find match pwr-ctl
[    0.541641] hdmitx: system: not find drm_amhdmitx
[    0.541672] hdmitx: system: hpd irq = 35
[    0.541787] hdmitx: system: hdcp22_tx_skp failed to probe
[    0.541795] hdmitx: system: hdcp22_tx_esm failed to probe
[    0.542293] vout: vout1: register server: hdmitx_vout_server
[    0.542300] vout: vout2: register server: hdmitx_vout2_server
[    0.543041] hdmitx: hdmitx20: Mapped PHY: 0xffd00000
[    0.543059] hdmitx: hdmitx20: Mapped PHY: 0xff634400
[    0.543072] hdmitx: hdmitx20: Mapped PHY: 0xff900000
[    0.543086] hdmitx: hdmitx20: Mapped PHY: 0xff800000
[    0.543095] hdmitx: hdmitx20: Mapped PHY: 0xff63c000
[    0.543103] hdmitx: hdmitx20: Mapped PHY: 0xffd00000
[    0.543110] hdmitx: hdmitx20: Mapped PHY: 0xff608000
[    0.543117] hdmitx: hdmitx20: Mapped PHY: 0xff600000
[    0.543125] hdmitx: hdmitx20: Mapped PHY: 0xffe01000
[    0.543136] hdmitx: hw: alread display in uboot 0x10
[    0.543164] hdmitx: hw: avmute set to 1
[    0.543171] hdmitx: system: fmt_attr 444,8bit
[    0.543176] hdmitx: system: fmt_attr 444,8bit
[    0.543333] hdmitx: system: amhdmitx_probe end
[    0.543810] vout: create vout attribute OK
[    0.543987] vout: vout_fops_create OK
[    0.543993] vout: vout1: register server: nulldisp_vout_server
[    0.544115] vout: tvout monitor interval:500(ms), timeout cnt:20
[    0.544147] hdmitx: hdmitx_set_current_vmode[4036]
[    0.544152] hdmitx: system: recalc before custombuilt 60 1
[    0.544159] hdmitx: system: recalc after custombuilt 60 1
[    0.544166] hdmitx: system: get current mode: custombuilt
[    0.544171] hdmitx: system: update physcial size: 16 9
[    0.547641] hdmitx: video: already init VIC = 0  Now VIC = 797
[    0.547649] hdmitx: video: rx edid only support RGB format
[    0.547653] hdmitx: hdmitx: VESA only support RGB format
[    0.547659] hdmitx: hw: div40: 0
[    0.565406] hdmitx: hw: ddc timeout
[    0.577685] hdmitx: ddc w1b error 0x54 0x20 0x00
[    0.577698] hdmitx: this mode doesn't have frac_rate
[    0.577703] hdmitx: frac_rate = 1
[    0.577711] hdmitx: [hdmitx_set_clk_] vic == HDMI_CUSTOMBUILT, frac_freq 85500
[    0.577717] hdmitx: hpll_clk_out 3420000, od1 4, od2 1, od3 2
[    0.577723] hdmitx: config HPLL = 3420000 frac_rate = 0
[    0.577729] hdmitx: NO HPLL candidate - clk: 3420000, calculate HPLL
[    0.577734] hdmitx: m1 0x0, m2 0x0, m 0x8e
[    0.577739] hdmitx: m 0x8e, frac 0x0
[    0.577795] hdmitx: HPLL: 0xdb00048e
[    0.577800] hdmitx: [set_g12a_hpll_clk_out] HPLL set OK!
[    0.577804] hdmitx: config HPLL done
[    0.577811] hdmitx: set_hpll_od3_clk_div[643] div = 6
[    0.577820] hdmitx: j = 34  vid_clk_div = 1
[    0.585423] hdmitx: hw: ddc timeout
[    0.605439] hdmitx: hw: ddc timeout
[    0.619750] hdmitx: hw:  config hdmitx IP vic = 797 cd:4 cs: 0
[    0.625455] hdmitx: hw: ddc timeout
[    0.629850] hdmitx: video: Sink is HDMI device
[    0.629888] hdmitx: hw: set audio
[    0.629893] hdmitx: hw: hdmitx tx_aud_src = 0
[    0.629909] hdmitx: fs = 0, cd = 4, tmds_clk = 85500
[    0.629915] hdmitx: hw: aud_n_para = 6144
[    0.629925] hdmitx: hw: set channel status
[    0.629960] hdmitx: system: update rx hdr info 0
[    0.629966] vout: init mode custombuilt set ok
[    0.629971] vout: aml_tvout_mode_monitor
[    0.629978] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    0.630000] vout: aml_vout_probe OK
[    0.631058] chip type:0x2b
[    0.631520] MEMORY:[0+ed800000]
[    0.631529] ramdump_probe, storage device:data
[    0.631534] NO valid ramdump args:0 0
[    0.631551] ramdump_probe, set sticky to 8ed8
[    0.631857] Advanced Linux Sound Architecture Driver Initialized.
[    0.632449] Bluetooth: Core ver 2.22
[    0.632503] NET: Registered protocol family 31
[    0.632509] Bluetooth: HCI device and connection manager initialized
[    0.632523] Bluetooth: HCI socket layer initialized
[    0.632533] Bluetooth: L2CAP socket layer initialized
[    0.632576] Bluetooth: SCO socket layer initialized
[    0.639418] NetLabel: Initializing
[    0.639428] NetLabel:  domain hash size = 128
[    0.639432] NetLabel:  protocols = UNLABELED CIPSOv4
[    0.639525] NetLabel:  unlabeled traffic allowed by default
[    0.643066] clocksource: Switched to clocksource arch_sys_counter
[    0.645476] hdmitx: hw: ddc timeout
[    0.665501] hdmitx: hw: ddc timeout
[    0.685527] hdmitx: hw: ddc timeout
[    0.705551] hdmitx: hw: ddc timeout
[    0.725574] hdmitx: hw: ddc timeout
[    0.730195] VFS: Disk quotas dquot_6.6.0
[    0.730286] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.734453] dtv_dmd:[amldtvdemod..]aml_dtvdemod_init.
[    0.735369] NET: Registered protocol family 2
[    0.736135] TCP established hash table entries: 32768 (order: 6, 262144 bytes)
[    0.736350] TCP bind hash table entries: 32768 (order: 7, 524288 bytes)
[    0.736806] TCP: Hash tables configured (established 32768 bind 32768)
[    0.736935] UDP hash table entries: 2048 (order: 4, 65536 bytes)
[    0.737001] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes)
[    0.737282] NET: Registered protocol family 1
[    0.737321] PCI: CLS 0 bytes, default 64
[    0.740616] Unpacking initramfs...
[    0.745602] hdmitx: hw: ddc timeout
[    0.765625] hdmitx: hw: ddc timeout
[    0.785649] hdmitx: hw: ddc timeout
[    0.800622] Freeing initrd memory: 1592K
[    0.803836] hw perfevents: clusterb_enabled = 0
[    0.803847] hw perfevents: cpumasks 0xf, 0x0
[    0.803886] hw perfevents: cluster A irq = 10
[    0.803992] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
[    0.805674] hdmitx: hw: ddc timeout
[    0.807990] audit: initializing netlink subsys (disabled)
[    0.808110] audit: type=2000 audit(0.748:1): initialized
[    0.813516] workingset: timestamp_bits=62 max_order=20 bucket_order=0
[    0.825702] hdmitx: hw: ddc timeout
[    0.829893] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.830280] exFAT: Version 1.2.9
[    0.831491] Registering sdcardfs 0.1
[    0.832818] ntfs: driver 2.1.32 [Flags: R/O].
[    0.833176] jffs2: version 2.2. (NAND) (SUMMARY)  \xc2\xa9 2001-2006 Red Hat, Inc.
[    0.834036] fuse init (API version 7.26)
[    0.835106] SELinux:  Registering netfilter hooks
[    0.841318] NET: Registered protocol family 38
[    0.841335] Key type asymmetric registered
[    0.841342] Asymmetric key parser 'x509' registered
[    0.841660] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
[    0.841670] io scheduler noop registered (default)
[    0.841676] io scheduler deadline registered
[    0.841889] io scheduler cfq registered
[    0.844890] meson-pwm ff802000.pwm: pwm pinmux : can't get pinctrl
[    0.845731] hdmitx: hw: ddc timeout
[    0.856935] random: fast init done
[    0.856979] random: crng init done
[    0.857995] gpiomem-aml ff634000.gpiomem: Initialised: Registers at 0xff634000
[    0.858288] Unable to detect cache hierarchy for CPU 0
[    0.866780] loop: module loaded
[    0.868246] zram: Added device: zram0
[    0.869439] mtdoops: mtd device (mtddev=name/number) must be supplied
[    0.870220] libphy: Fixed MDIO Bus: probed
[    0.870536] tun: Universal TUN/TAP device driver, 1.6
[    0.870544] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    0.870893] vcan: Virtual CAN interface driver
[    0.870903] slcan: serial line CAN interface driver
[    0.870908] slcan: 10 dynamic interface channels.
[    0.870919] CAN device driver interface
[    0.871823] REG0:Addr = ffffff8008601540
[    0.871841] ee eth reset:Addr = ffffff8008603008
[    0.871857] read auto_cali_idx fail
[    0.871866] Not set  cali_val for REG1
[    0.872481] meson6-dwmac ff3f0000.ethernet: no reset control found
[    0.872491] stmmac - user ID: 0x11, Synopsys ID: 0x37
[    0.872496] Ring mode enabled
[    0.872502] DMA HW capability register supported
[    0.872508] Normal descriptors
[    0.872512] RX Checksum Offload Engine supported
[    0.872517] \x09COE Type 2
[    0.872521] TX Checksum insertion supported
[    0.872525] Wake-Up On Lan supported
[    0.872583] Enable RX Mitigation via HW Watchdog Timer
[    0.876123] libphy: stmmac: probed
[    0.876137] eth%d: PHY ID 001cc916 at 0 IRQ POLL (stmmac-0:00) active
[    0.876144] eth%d: PHY ID 001cc916 at 7 IRQ POLL (stmmac-0:07)
[    0.878167] PPP generic driver version 2.4.2
[    0.878477] PPP BSD Compression module registered
[    0.878486] PPP Deflate Compression module registered
[    0.878514] PPP MPPE Compression module registered
[    0.878521] NET: Registered protocol family 24
[    0.878652] usbcore: registered new interface driver asix
[    0.878788] usbcore: registered new interface driver ax88179_178a
[    0.878900] usbcore: registered new interface driver cdc_ether
[    0.879008] usbcore: registered new interface driver net1080
[    0.879145] usbcore: registered new interface driver cdc_subset
[    0.879246] usbcore: registered new interface driver zaurus
[    0.879350] usbcore: registered new interface driver cdc_ncm
[    0.880439] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.880449] ehci-pci: EHCI PCI platform driver
[    0.880576] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.880614] ohci-pci: OHCI PCI platform driver
[    0.881546] usbcore: registered new interface driver cdc_acm
[    0.881553] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    0.881665] usbcore: registered new interface driver usb-storage
[    0.881850] usbcore: registered new interface driver usbserial
[    0.882492] mousedev: PS/2 mouse device common for all mice
[    0.882883] usbcore: registered new interface driver appletouch
[    0.882999] usbcore: registered new interface driver bcm5974
[    0.884136] usbcore: registered new interface driver iforce
[    0.885091] usbcore: registered new interface driver xpad
[    0.885284] usbcore: registered new interface driver dwav_usb_mt
[    0.885647] i2c /dev entries driver
[    0.887826] lirc_helper: wakeupkey 0xffffffff, protocol 0x1
[    0.888087] usbcore: registered new interface driver uvcvideo
[    0.888093] USB Video Class driver (1.1.1)
[    0.888536] md: linear personality registered for level -1
[    0.889119] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com
[    0.889638] Bluetooth: HCI UART driver ver 2.3
[    0.889648] Bluetooth: HCI UART protocol H4 registered
[    0.889654] Bluetooth: HCI UART protocol BCSP registered
[    0.889659] Bluetooth: HCI UART protocol LL registered
[    0.889665] Bluetooth: HCI UART protocol ATH3K registered
[    0.889670] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    0.889924] Bluetooth: HCI UART protocol Intel registered
[    0.890138] Bluetooth: HCI UART protocol Broadcom registered
[    0.890144] Bluetooth: HCI UART protocol QCA registered
[    0.890149] Bluetooth: HCI UART protocol AG6XX registered
[    0.890154] Bluetooth: HCI UART protocol Marvell registered
[    0.890261] usbcore: registered new interface driver bcm203x
[    0.890348] usbcore: registered new interface driver bpa10x
[    0.890453] usbcore: registered new interface driver bfusb
[    0.890539] usbcore: registered new interface driver btusb
[    0.890546] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
[    0.890686] usbcore: registered new interface driver ath3k
[    0.894078] ledtrig-cpu: registered to indicate activity on CPUs
[    0.894993] hidraw: raw HID events driver (C) Jiri Kosina
[    0.896173] usbcore: registered new interface driver usbhid
[    0.896182] usbhid: USB HID core driver
[    0.896471] ashmem: initialized
[    0.898315] value of voltage_tolerance 0
[    0.898326] meson_cpufreq_init:don't find the node <dynamic_gp1_clk>
[    0.898346] value of gp1_clk_target 0
[    0.900365] dvfs [meson_cpufreq_init] - cluster 0 freq 2100000
[    0.900389] cpu cpu0: meson_cpufreq_init: CPU 0 initialized
[    0.904188] ff803000.serial: clock gate not found
[    0.904277] meson_uart ff803000.serial: ==uart0 reg addr = ffffff8008609000
[    0.904333] ff803000.serial: ttyS0 at MMIO 0xff803000 (irq = 23, base_baud = 1500000) is a meson_uart
[    0.904352] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 0 to 115200
[    0.972550] hdmitx: hw: ddc timeout
[    0.992571] hdmitx: hw: ddc timeout
[    0.998368] console [ttyS0] enabled
[    0.999879] meson_uart ffd24000.serial: ==uart1 reg addr = ffffff800860b000
[    0.999956] ffd24000.serial: ttyS1 at MMIO 0xffd24000 (irq = 34, base_baud = 1500000) is a meson_uart
[    1.002356] amlogic-new-usb2-v2 ffe09000.usb2phy: USB2 phy probe:phy_mem:0xffe09000, iomap phy_base:0xffffff800860d000
[    1.003482] amlogic-new-usb3-v2 ffe09080.usb3phy: USB3 phy probe:phy_mem:0xffe09080, iomap phy_base:0xffffff800862b080
[    1.006515] rtc-pcf8563 0-0051: pcf8563_write_block_data: err=-6 addr=0e, data=03
[    1.008575] rtc-pcf8563 0-0051: pcf8563_probe: write error
[    1.012589] hdmitx: hw: ddc timeout
[    1.014379] rtc-pcf8563: probe of 0-0051 failed with error -5
[    1.018835] aml_dma ff63e000.aml_dma: Aml dma
[    1.020699] aml_aes_dma ff63e000.aml_dma:aml_aes: Aml AES_dma
[    1.022266] aml_sha_dma ff63e000.aml_dma:aml_sha: Aml SHA1/SHA224/SHA256 dma
[    1.022804] gpio-keypad ff800000.gpio_keypad: failed to get gpio index from dts
[    1.024758] gpio-keypad: probe of ff800000.gpio_keypad failed with error -22
[    1.024874] meson-remote: Driver init
[    1.025298] meson-remote: remote_probe
[    1.025321] meson-remote ff808040.rc: protocol = 0x1
[    1.025327] meson-remote ff808040.rc: led_blink = 1
[    1.025332] meson-remote ff808040.rc: led_blink_frq  = 100
[    1.025376] meson-remote ff808040.rc: platform_data irq =33
[    1.025460] meson-remote ff808040.rc: custom_number = 1
[    1.025496] meson-remote ff808040.rc: ptable->map_size = 12
[    1.025501] meson-remote ff808040.rc: ptable->custom_name = hardkernel-remote
[    1.025505] meson-remote ff808040.rc: ptable->custom_code = 0x4db2
[    1.025510] meson-remote ff808040.rc: ptable->release_delay = 80
[    1.025520] meson-remote ff808040.rc: default protocol = 0x1 and id = 0
[    1.025524] meson-remote ff808040.rc: reg=0x0, val=0x1f40190
[    1.025528] meson-remote ff808040.rc: reg=0x4, val=0x12c00c8
[    1.025532] meson-remote ff808040.rc: reg=0x8, val=0x960050
[    1.025536] meson-remote ff808040.rc: reg=0xc, val=0x480028
[    1.025539] meson-remote ff808040.rc: reg=0x10, val=0x70fa0013
[    1.025543] meson-remote ff808040.rc: reg=0x18, val=0x8616800
[    1.025547] meson-remote ff808040.rc: reg=0x1c, val=0x9f00
[    1.025551] meson-remote ff808040.rc: reg=0x20, val=0x0
[    1.025554] meson-remote ff808040.rc: reg=0x24, val=0x0
[    1.025558] meson-remote ff808040.rc: reg=0x28, val=0x0
[    1.026147] input: aml_keypad as /devices/platform/ff808040.rc/input/input0
[    1.026794] meson-remote: IR XMP protocol handler initialized
[    1.027505] efusekeynum: 1
[    1.027549] efusekeyname:            uuid\x09offset:     0\x09size:    32
[    1.027841] efuse efuse: probe OK!
[    1.030617] ion_dev soc:ion_dev: assigned reserved memory node linux,ion-dev
[    1.031393] ge2d: ge2d_init_module
[    1.031770] ge2d: ge2d_dev major:236
[    1.032239] ge2d: clock source clk_ge2d_gate ffffffc0990e9b80
[    1.032286] ge2d: clock clk_ge2d source ffffffc0990e9c00
[    1.032307] ge2d: clock source clk_vapb_0 ffffffc0990e9c80
[    1.032313] ge2d: ge2d init clock is 500000000 HZ, VPU clock is 666666656 HZ
[    1.032518] ge2d: ge2d clock is 499 MHZ
[    1.032540] ge2d: find address resource
[    1.032561] ge2d: map io source 0x00000000ff940000,size=65536 to 0xffffff8008810000
[    1.032566] ge2d: reserved mem init failed
[    1.032570] ge2d: ge2d: pdev=ffffffc0db5bdc00, irq=39, clk=ffffffc0990e9b80
[    1.032606] hdmitx: hw: ddc timeout
[    1.032633] ge2d: ge2d start monitor
[    1.032748] ge2d: ge2d workqueue monitor start
[    1.033256] [tsync_pcr_init]init success.
[    1.033644] amvideom vsync irq: 40
[    1.033710] create_ge2d_work_queue video task ok
[    1.034652] fb: osd_init_module
[    1.035321] fb: viu vsync irq: 40
[    1.035336] fb: viu2 vsync irq: 57
[    1.035487] 0x000000db:Y=db,U=0,V=0
[    1.035491] 0x000000dc:Y=dc,U=0,V=0
[    1.035494] 0x000000dd:Y=dd,U=0,V=0
[    1.035497] 0x000000de:Y=de,U=0,V=0
[    1.035500] 0x000000df:Y=df,U=0,V=0
[    1.035503] 0x000000e0:Y=e0,U=0,V=0
[    1.035980] fb: osd_rdma_init: rdma_table p=0xe0a08000,op=0xe0a08000 , v=0xffffff80086e5000
[    1.036040] rdma_register, rdma_table_addr ffffff80086e7000 rdma_table_addr_phy e0a09000 reg_buf ffffffc0db404000
[    1.036045] rdma_register success, handle 2 table_size 4096
[    1.036048] fb: osd_rdma_init:osd rdma handle = 2.
[    1.036067] fb: mem_size: 0x800000
[    1.036070] fb: mem_size: 0x1980000
[    1.036072] fb: mem_size: 0x100000
[    1.036075] fb: mem_size: 0x100000
[    1.036077] fb: mem_size: 0x800000
[    1.036085] fb: failed to init reserved memory
[    1.036157] fb: fb def : 1360 768 1360 1536 32
[    1.036160] fb: init fbdev bpp is:32
[    1.037495] fb: set osd0 reverse as NONE
[    1.047873] fb: osd probe OK
[    1.048077] hdmitx: hdcp: hdmitx_hdcp_init
[    1.048680] vout: vout2: create vout2 attribute OK
[    1.048924] vout: vout2: vout2_fops_create OK
[    1.049334] vout: vout2: clktree_init
[    1.049340] vout: vout2: register server: nulldisp_vout2_server
[    1.049484] vout: vout2: init mode null set ok
[    1.049489] vout: vout2: aml_vout2_probe OK
[    1.049707] DI: di_module_init ok.
[    1.050105] DI: di_probe:
[    1.050114] DI: di_probe: major 510
[    1.050487] deinterlace deinterlace: assigned reserved memory node linux,di_cma
[    1.050498] di:flag_cma=1
[    1.050503] DI: CMA size 0x2800000.
[    1.050538] pre_irq:55
[    1.050550] post_irq:56
[    1.050553] DI: di_probe allocate rdma channel 0.
[    1.050564] di_get_vpu_clkb: get clk vpu error.
[    1.050605] DI: vpu clkb <334000000, 667000000>
[    1.050707] get clkb rate:333333328
[    1.050716] DI:enable vpu clkb.
[    1.050735] 0x000000e1:Y=e1,U=0,V=0
[    1.050738] 0x000000e2:Y=e2,U=0,V=0
[    1.050741] 0x000000e3:Y=e3,U=0,V=0
[    1.050744] 0x000000f0:Y=f0,U=0,V=0
[    1.050747] 0x000000f1:Y=f1,U=0,V=0
[    1.050750] 0x000000f2:Y=f2,U=0,V=0
[    1.050753] 0x000000f3:Y=f3,U=0,V=0
[    1.050756] 0x000000f4:Y=f4,U=0,V=0
[    1.050759] 0x000000f5:Y=f5,U=0,V=0
[    1.050762] 0x000000f6:Y=f6,U=0,V=0
[    1.050770] 0x000000f7:Y=f7,U=0,V=0
[    1.050773] 0x000000f8:Y=f8,U=0,V=0
[    1.050776] 0x000000f9:Y=f9,U=0,V=0
[    1.050778] 0x000000fa:Y=fa,U=0,V=0
[    1.050781] 0x000000fb:Y=fb,U=0,V=0
[    1.050784] 0x000000fc:Y=fc,U=0,V=0
[    1.050791] 0x000000fd:Y=fd,U=0,V=0
[    1.050794] 0x000000fe:Y=fe,U=0,V=0
[    1.050797] 0x000000ff:Y=ff,U=0,V=0
[    1.050800] 0x0000003a:Y=3a,U=0,V=0
[    1.050802] 0x0000003b:Y=3b,U=0,V=0
[    1.050805] 0x0000003c:Y=3c,U=0,V=0
[    1.050810] 0x0000003d:Y=3d,U=0,V=0
[    1.050813] 0x0000003e:Y=3e,U=0,V=0
[    1.050816] 0x0000003f:Y=3f,U=0,V=0
[    1.050819] DI: support multi decoding 61~62~63.
[    1.051035] DI: di_probe:Di use HRTIMER
[    1.051424] DI: di_probe:ok
[    1.051570] dim:dim_module_init
[    1.052055] dim:dim_module_init finish
[    1.052060] dil:dil_init.
[    1.052460] dil:dil_init ok.
[    1.052514] vdin_drv_init: major 509
[    1.052632] hdmitx: hw: ddc timeout
[    1.052933] vdin_drv_init: vdin driver init done
[    1.052937] [viuin..]viuin_init_module viuin module init
[    1.053430] [viuin..]viuin_probe probe ok.
[    1.054339] [RX]-hdmirx: hdmirx_init.
[    1.054346] ESM HLD: Initializing...
[    1.054605] tvin_afe: tvafe_drv_init: major 507
[    1.055584] tvafe_vbi: vbi: vbi_init.
[    1.055988] amlvid:info: amlvideo_init called
[    1.055994] amlvid:info: amlvideo_create_instance called
[    1.056000] amlvid:info: v4l2_dev.name=:amlvideo-000
[    1.056264] amlvideo-000: V4L2 device registered as video10
[    1.056268] amlvid:info: amlvideo_create_instance called
[    1.056274] amlvid:info: v4l2_dev.name=:amlvideo-001
[    1.056436] amlvideo-001: V4L2 device registered as video23
[    1.056844] PPMGRDRV: warn: ppmgr module init func called
[    1.057169] PPMGRDRV: info: ppmgr_driver_probe called
[    1.057289] Reserved memory: failed to init DMA memory pool at 0x00000000ed800000, size 0 MiB
[    1.060470] PPMGRDRV: info: ppmgr_dev major:505
[    1.061954] ionvideo-000: V4L2 device registered as video13
[    1.062157] ionvideo-001: V4L2 device registered as video14
[    1.062342] ionvideo-002: V4L2 device registered as video15
[    1.062500] ionvideo-003: V4L2 device registered as video16
[    1.062678] ionvideo-004: V4L2 device registered as video17
[    1.062833] ionvideo-005: V4L2 device registered as video18
[    1.063007] ionvideo-006: V4L2 device registered as video19
[    1.063202] ionvideo-007: V4L2 device registered as video20
[    1.063354] ionvideo-008: V4L2 device registered as video21
[    1.063359] ionvid: info: Video Technology Magazine Ion Video
[    1.063362] ionvid: info: Capture Board ver 1.0 successfully loaded
[    1.064188] videosync_create_instance dev_s ffffffc09912a800,dev_s->dev ffffffc099124400
[    1.064221] videosync_create_instance reg videosync.0
[    1.064325] aml_vecm_init:module init
[    1.064736] \x0a VECM probe start
[    1.064902] videosync_thread started
[    1.065094] vlock_status_init vlock_en:0
[    1.065140] Can't find  wb_sel.
[    1.065145] hdr:Can't find  cfg_en_osd_100.
[    1.065154] amlogic, vecm
[    1.065159] vlock dt support: 1
[    1.065163] vlock dt new_fsm: 0
[    1.065166] vlock dt hwver: 0
[    1.065168] vlock dt phlock_en: 0
[    1.065173] Can't find  vlock_en.
[    1.065176] Can't find  vlock_mode.
[    1.065179] Can't find  vlock_pll_m_limit.
[    1.065183] Can't find  vlock_line_limit.
[    1.065187] param_config vlock_en:0
[    1.065194] aml_vecm_probe: ok
[    1.065317] amdolby_vision_init:module init
[    1.065783] \x0a amdolby_vision probe start & ver: 20181220
[    1.065790] \x0a cpu_id=2 tvmode=0
[    1.066020] dolby_vision_init_receiver(dvel)
[    1.066034] dolby_vision_init_receiver: dvel
[    1.066259] amdolby_vision_probe: ok
[    1.066382] prime_sl module init
[    1.067610] meson-mmc: mmc driver version: 3.02, 2017-05-15: New Emmc Host Controller
[    1.068865] meson-mmc: >>>>>>>>hostbase ffffff8008809000, dmode 
[    1.069999] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[    1.070004] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[    1.072656] hdmitx: hw: ddc timeout
[    1.092680] hdmitx: hw: ddc timeout
[    1.107198] meson-mmc: meson_mmc_probe() : success!
[    1.112703] hdmitx: hw: ddc timeout
[    1.114468] meson-mmc: >>>>>>>>hostbase ffffff8008823000, dmode 
[    1.115303] meson-mmc: gpio_cd = 1ca
[    1.118310] meson-mmc: emmc: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[    1.121601] meson-mmc: emmc: err: wait for irq service, bus_fsm:0x8
[    1.128030] meson-mmc: meson_mmc_irq_thread_v3() 642: set 1st retry!
[    1.132725] hdmitx: hw: ddc timeout
[    1.134626] meson-mmc: retry cmd 1 the 3-th time(s)
[    1.140669] meson-mmc: emmc: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[    1.146125] meson-mmc: emmc: err: wait for irq service, bus_fsm:0x8
[    1.152551] meson-mmc: retry cmd 1 the 2-th time(s)
[    1.152739] hdmitx: hw: ddc timeout
[    1.158641] meson-mmc: emmc: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[    1.164152] meson-mmc: emmc: err: wait for irq service, bus_fsm:0x8
[    1.170578] meson-mmc: retry cmd 1 the 1-th time(s)
[    1.171101] meson-mmc: meson_mmc_probe() : success!
[    1.171346] amlogic mtd driver init
[    1.172321] aml_vrtc rtc: rtc core: registered aml_vrtc as rtc0
[    1.172480] input: aml_vkeypad as /devices/platform/rtc/input/input1
[    1.172753] hdmitx: hw: ddc timeout
[    1.173635] cectx ff80023c.aocec: cec driver date:2019/12/09:sm1 bus check reg define err\x0a
[    1.173837] cectx ff80023c.aocec: compatible:amlogic, aocec-sm1
[    1.173839] cectx ff80023c.aocec: cecb_ver:0x2
[    1.173842] cectx ff80023c.aocec: line_reg:0x1
[    1.173844] cectx ff80023c.aocec: line_bit:0x3
[    1.173846] cectx ff80023c.aocec: ee_to_ao:0x1
[    1.173965] input: cec_input as /devices/virtual/input/input2
[    1.174097] cectx ff80023c.aocec: not find 'port_num'
[    1.174100] cectx ff80023c.aocec: using cec:1
[    1.174134] cectx ff80023c.aocec: no hdmirx regs
[    1.174136] cectx ff80023c.aocec: no hhi regs
[    1.175437] irq cnt:2, a:38, b37
[    1.179878] cectx ff80023c.aocec: wakeup_reason:0x0
[    1.179964] cectx ff80023c.aocec: cev val1: 0x0;val2: 0x0
[    1.179967] cectx ff80023c.aocec: aml_cec_probe success end
[    1.180337] unifykey: storage in base: 0xffffffc005000000
[    1.180339] unifykey: storage out base: 0xffffffc005040000
[    1.180341] unifykey: storage block base: 0xffffffc005080000
[    1.180342] unifykey: probe done!
[    1.180836] unifykey: no efuse-version set, use default value: -1
[    1.180838] unifykey: key unify config unifykey-num is 14
[    1.180912] unifykey: key unify fact unifykey-num is 17
[    1.180920] unifykey: unifykey_devno: 1f400000
[    1.182485] unifykey: device unifykeys created ok
[    1.182578] unifykey: aml_unifykeys_init done!
[    1.182878] meson ts init
[    1.182951] tsensor id: 0
[    1.183181] r1p1_tsensor_read  valid cnt is 0
[    1.183202] tsensor trim info: 0xfa000030!
[    1.183205] tsensor hireboot: 0xc0ff2a70
[    1.183300] meson ts init
[    1.183339] tsensor id: 1
[    1.183495] r1p1_tsensor_read  valid cnt is 0
[    1.183506] tsensor trim info: 0xfa000077!
[    1.183508] tsensor hireboot: 0xc0ff2a30
[    1.183628] audio_dsp: [dsp]register dsp to char divece(257)
[    1.183849] amaudio: amaudio: driver amaudio init!
[    1.184196] amaudio: amaudio_init - amaudio: driver amaudio succuess!
[    1.184971] amlkaraoke init success!
[    1.185201] sysled: module init
[    1.185875] meson_wdt ffd0f0d0.watchdog: AML Watchdog Timer probed done
[    1.186490] amlogic rfkill init
[    1.187129] meson-saradc ff809000.saradc: set delay per tick to <1ms> by default.
[    1.187133] meson-saradc ff809000.saradc: set ticks per period to <1> by default.
[    1.189978] dmc_monitor_probe
[    1.190196] page_trace_module_init, create sysfs failed
[    1.192778] hdmitx: hw: ddc timeout
[    1.208178] atv_demod: aml_atvdemod_init: OK, atv demod version: V2.15.
[    1.208459] defendkey ff630218.defendkey: Reserved memory is not enough!
[    1.208471] defendkey: probe of ff630218.defendkey failed with error -22
[    1.208967] input: vt-input as /devices/virtual/input/input3
[    1.209435] Virtual-Key input driver registered!!
[    1.209906] usbcore: registered new interface driver snd-usb-audio
[    1.212801] hdmitx: hw: ddc timeout
[    1.212848] aml_codec_T9015 ff632000.t9015: aml_T9015_audio_codec_probe
[    1.212873] T9015 acodec used by auge, tdmout:2
[    1.216029] Error: Driver 'spdif-dit' is already registered, aborting...
[    1.216617] asoc debug: aml_audio_controller_probe-130
[    1.217276] aml_tdm_platform_probe, tdm ID = 1, lane_cnt = 8
[    1.217307] TDM id 1 i2s2hdmi:0
[    1.217321] snd_tdm ff660000.audiobus:tdm@1: lane_mask_out = 1, lane_oe_mask_out = 0
[    1.217678] TDM id 1 output clk enable:1
[    1.217784] aml_tdm_platform_probe(), share en = 1
[    1.217784] No channel mask node Channel_Mask
[    1.217807] TDM id 1 tuning clk enable:1
[    1.217858] aml_tdm_platform_probe, tdm ID = 2, lane_cnt = 4
[    1.217886] TDM id 2 i2s2hdmi:1
[    1.217896] snd_tdm ff660000.audiobus:tdm@2: lane_mask_out = 1, lane_oe_mask_out = 0
[    1.218020] snd_tdm ff660000.audiobus:tdm@2: neither mclk_pad nor mclk2pad set
[    1.218029] snd_tdm ff660000.audiobus:tdm@2: aml_tdm_get_pins error!
[    1.218034] aml_tdm_platform_probe(), share en = 1
[    1.218034] No channel mask node Channel_Mask
[    1.218649] aml_spdif_platform_probe, spdif ID = 0
[    1.219610] SPDIF id 0 asrc_id:0 auto_asrc:0
[    1.219812] aml_spdif_platform_probe, register soc platform
[    1.220915] audio-ddr-manager ff660000.audiobus:ddr_manager: 0, irqs toddr 24, frddr 28
[    1.220940] audio-ddr-manager ff660000.audiobus:ddr_manager: 1, irqs toddr 25, frddr 29
[    1.220964] audio-ddr-manager ff660000.audiobus:ddr_manager: 2, irqs toddr 26, frddr 30
[    1.220988] audio-ddr-manager ff660000.audiobus:ddr_manager: 3, irqs toddr 27, frddr 31
[    1.222042] audiolocker_platform_probe
[    1.224089] Register vad
[    1.232828] hdmitx: hw: ddc timeout
[    1.252852] hdmitx: hw: ddc timeout
[    1.265401] meson-mmc: emmc: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[    1.270927] meson-mmc: emmc: err: wait for irq service, bus_fsm:0x8
[    1.272868] hdmitx: hw: ddc timeout
[    1.272879] hdmitx: edid: EDID Parser:
[    1.272881] hdmitx: edid: PLUGIN_DVI_OUT
[    1.272883] hdmitx: hdmitx: reach vesa idx MAX
[    1.272884] hdmitx: hdmitx: reach vesa idx MAX
[    1.272886] hdmitx: hdmitx: reach vesa idx MAX
[    1.272899] [RX]-up_phy_addr = 0
[    1.272905] hdmitx: edid: not find IEEEOUT
[    1.272907] hdmitx: edid: set default vic
[    1.272922] hdmitx: edid: check sum invalid
[    1.272926] hdmitx: edid: check sum invalid
[    1.272930] hdmitx: edid: blk0 raw data
[    1.272948] hdmitx: edid: \x0a00ffffffffffffff00ffffffffffffff00ffffffffffffff00ffffffffffffff\x0a00ffffffffffffff00ffffffffffffff00ffffffffffffff00ffffffffffffff\x0a00ffffffffffffff00ffffffffffffff00ffffffffffffff00ffffffffffffff\x0a00ffffffffffffff00ffffffffffffff00ffffffffffffff00ffffffffffffff\x0a\x0a
[    1.272953] hdmitx: system: update rx hdr info 0
[    1.277356] meson-mmc: Command retried failed line:664, cmd:1
[    1.277402] hdmitx: system: irq 2 0
[    1.307533] clear:c3800000, free:c3800000, tick:650574 us
[    1.307561] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    1.375164] meson-mmc: card IN
[    1.431092] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC
[    1.433454] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLP_SEL_DACL -> Lineout left P switch
[    1.444474] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC
[    1.452441] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLP_SEL_DACL_INV -> Lineout left P switch
[    1.463794] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC
[    1.471766] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLN_SEL_DACL_INV -> Lineout left N switch
[    1.479275] meson-mmc: normal card in
[    1.483122] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC
[    1.491095] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLN_SEL_DACL -> Lineout left N switch
[    1.502100] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC
[    1.510160] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORP_SEL_DACR -> Lineout right P switch
[    1.521340] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC
[    1.529401] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORP_SEL_DACR_INV -> Lineout right P switch
[    1.540928] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC
[    1.548987] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORN_SEL_DACR_INV -> Lineout right N switch
[    1.560515] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC
[    1.568573] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORN_SEL_DACR -> Lineout right N switch
[    1.579875] aml_dai_spdif_probe
[    1.579898] asoc-aml-card auge_sound: control 2:0:0:I2SIn CLK:0 is already present
[    1.587472] snd_tdm ff660000.audiobus:tdm@1: ASoC: Failed to add I2SIn CLK: -16
[    1.594920] aml_dai_tdm_probe, failed add snd tdm controls
[    1.600559] set normal 512 fs /4 fs
[    1.600617] \x09 set spdifout clk:6144000, mpll:24576000
[    1.600620] \x09 get spdifout clk:6143997, mpll:24575987
[    1.600630] aml_dai_set_spdif_fmt , fmt 0x4010
[    1.600732] aml_spdif_new spdif_a, clk continuous:1
[    1.600735] spdifout_play_with_zerodata_free, spdif id:0
[    1.601456] asoc-aml-card auge_sound: dit-hifi <-> SPDIF mapping ok
[    1.601477] set mclk:12288000, mpll:24576000, get mclk:12287994, mpll:24575987
[    1.601482] aml_dai_set_tdm_slot(), txmask(0x3), rxmask(0x3)
[    1.601485] \x09lanes_out_cnt(1), lanes_in_cnt(1)
[    1.601487] \x09lanes_lb_cnt(0)
[    1.601491] \x09slots(2), slot_width(32)
[    1.601494] \x09lanes_oe_out_cnt(0), lanes_oe_in_cnt(0)
[    1.601509] asoc aml_dai_set_tdm_fmt, 0x4011, ffffffc0991f8e18, id(2), clksel(2)
[    1.601516] master_mode(1), binv(1), finv(1) out_skew(2), in_skew(3)
[    1.601815] asoc-aml-card auge_sound: T9015-audio-hifi <-> TDM-C mapping ok
[    1.601820] aml_dai_set_tdm_sysclk(), mpll no change, keep clk
[    1.601823] aml_dai_set_tdm_sysclk(), mclk no change, keep clk
[    1.601827] set mclk:12288000, mpll:24576000, get mclk:12287994, mpll:24575987
[    1.601831] aml_dai_set_tdm_slot(), txmask(0x3), rxmask(0x3)
[    1.601834] \x09lanes_out_cnt(1), lanes_in_cnt(1)
[    1.601837] \x09lanes_lb_cnt(0)
[    1.601839] \x09slots(2), slot_width(32)
[    1.601842] \x09lanes_oe_out_cnt(0), lanes_oe_in_cnt(0)
[    1.601849] asoc aml_dai_set_tdm_fmt, 0x4011, ffffffc0991f8618, id(1), clksel(1)
[    1.601855] master_mode(1), binv(1), finv(1) out_skew(2), in_skew(3)
[    1.602180] asoc-aml-card auge_sound: dummy <-> TDM-B mapping ok
[    1.602278] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout left P switch has no paths
[    1.608812] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout left N switch has no paths
[    1.611168] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[    1.611171] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[    1.617032] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout right P switch has no paths
[    1.625355] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout right N switch has no paths
[    1.636897] snd_card_add_kcontrols card:ffffffc0990fd018
[    1.636911] effect_v2 is not init
[    1.636914] Not init vad
[    1.636917] Failed to add VAD controls
[    1.636932] eq/drc v1 function enable
[    1.636938] no node audio_effect for eq/drc info!
[    1.636941] Failed to add audio effects v1 controls
[    1.637080] GACT probability NOT on
[    1.637092] Mirror/redirect action on
[    1.637101] u32 classifier
[    1.637103] Actions configured
[    1.637109] Netfilter messages via NETLINK v0.30.
[    1.637296] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[    1.637539] ctnetlink v0.93: registering with nfnetlink.
[    1.638348] xt_time: kernel timezone is -0000
[    1.638399] ipip: IPv4 and MPLS over IPv4 tunneling driver
[    1.638757] IPv4 over IPsec tunneling driver
[    1.639243] ip_tables: (C) 2000-2006 Netfilter Core Team
[    1.639393] arp_tables: arp_tables: (C) 2002 David S. Miller
[    1.639451] Initializing XFRM netlink socket
[    1.639903] NET: Registered protocol family 10
[    1.640790] mip6: Mobile IPv6
[    1.640813] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    1.641385] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    1.642101] NET: Registered protocol family 17
[    1.642120] NET: Registered protocol family 15
[    1.642145] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    1.642148] can: controller area network core (rev 20120528 abi 9)
[    1.642191] NET: Registered protocol family 29
[    1.642198] can: raw protocol (rev 20120528)
[    1.642202] can: broadcast manager protocol (rev 20161123 t)
[    1.642209] can: netlink gateway (rev 20130117) max_hops=1
[    1.642399] Bluetooth: RFCOMM TTY layer initialized
[    1.642408] Bluetooth: RFCOMM socket layer initialized
[    1.642428] Bluetooth: RFCOMM ver 1.11
[    1.642438] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    1.642441] Bluetooth: BNEP filters: protocol multicast
[    1.642449] Bluetooth: BNEP socket layer initialized
[    1.642452] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    1.642459] Bluetooth: HIDP socket layer initialized
[    1.642483] l2tp_core: L2TP core driver, V2.0
[    1.642493] l2tp_ppp: PPPoL2TP kernel driver, V2.0
[    1.642496] l2tp_ip: L2TP IP encapsulation support (L2TPv3)
[    1.642513] l2tp_netlink: L2TP netlink interface
[    1.642545] l2tp_eth: L2TP ethernet pseudowire support (L2TPv3)
[    1.642563] l2tp_debugfs: L2TP debugfs support
[    1.642566] l2tp_ip6: L2TP IP encapsulation support for IPv6 (L2TPv3)
[    1.642593] NET: Registered protocol family 35
[    1.642735] Key type dns_resolver registered
[    1.644104] Registered swp emulation handler
[    1.644116] Registered cp15_barrier emulation handler
[    1.644124] Registered setend emulation handler
[    1.644154] disable EAS feature
[    1.644699] registered taskstats version 1
[    1.654943] dwc3 ff500000.dwc3: Configuration mismatch. dr_mode forced to host
[    1.657684] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    1.657702] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    1.658023] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228fe6c hci version 0x110 quirks 0x20010010
[    1.658067] xhci-hcd xhci-hcd.0.auto: irq 14, io mem 0xff500000
[    1.658688] hub 1-0:1.0: USB hub found
[    1.658718] hub 1-0:1.0: 2 ports detected
[    1.659032] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    1.659043] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    1.659164] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    1.659713] hub 2-0:1.0: USB hub found
[    1.659739] hub 2-0:1.0: 1 port detected
[    1.660298] aml_vrtc rtc: setting system clock to 2021-04-08 11:51:13 UTC (1617882673)
[    1.660567] dwc_otg ff400000.dwc2_a: dwc_otg_driver_probe(ffffffc0db570000)
[    1.660597] dwc_otg: usb0: type: 2 speed: 0, config: 0, dma: 0, id: 0, phy: ffe09000, ctrl: 0
[    1.660614] dwc_otg ff400000.dwc2_a: base=0xffffff8008c40000
[    1.660618] dwc_otg ff400000.dwc2_a: dwc_otg_device=0xffffffc099312000
[    1.719109] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[    1.719114] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[    1.737334] meson-aml-mmc ffe05000.sd: divider requested rate 200000000 != actual rate 199999997: ret=0
[    1.737339] meson-mmc: actual_clock :199999997, HHI_nand: 0x80
[    1.737342] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000245
[    1.737347] meson-mmc: Data 1 aligned delay is 0
[    1.737352] meson-mmc: sd: clk 199999997 tuning start
[    1.744538] meson-mmc: sd: adj_win: < 0 1 2 3 >
[    1.744544] meson-mmc: step:4, delay1:0x4104104, delay2:0x4004104
[    1.751359] meson-mmc: sd: adj_win: < 0 1 2 3 >
[    1.751364] meson-mmc: step:8, delay1:0x8208208, delay2:0x8008208
[    1.758197] meson-mmc: sd: adj_win: < 0 1 2 3 >
[    1.758201] meson-mmc: step:12, delay1:0xc30c30c, delay2:0xc00c30c
[    1.760826] dwc_otg: Core Release: 3.30a
[    1.760831] dwc_otg: Setting default values for core params
[    1.760842] dwc_otg: curmode: 0, host_only: 0
[    1.760859] dwc_otg ff400000.dwc2_a: DMA config: BURST_DEFAULT
[    1.765062] meson-mmc: sd: adj_win: < 0 1 2 3 >
[    1.765067] meson-mmc: step:16, delay1:0x10410410, delay2:0x10010410
[    1.771911] meson-mmc: sd: adj_win: < 1 2 3 4 >
[    1.771917] meson-mmc: left:3, right:0, mid:4, size:4
[    1.771920] meson-mmc: step:0, delay1:0x0, delay2:0x0
[    1.771925] meson-mmc: sd: sd_emmc_regs->gclock=0x10000245,sd_emmc_regs->gadjust=0x22000
[    1.771928] meson-mmc: delay1:0x0, delay2:0x0
[    1.771940] sd: new ultra high speed SDR104 SDXC card at address aaaa
[    1.771943] sd: clock 199999997, 4-bit-bus-width\x0a 
[    1.772366] mmcblk1: sd:aaaa SC64G 59.5 GiB 
[    1.773132] dwc_otg: Using Buffer DMA mode
[    1.773138] dwc_otg: OTG VER PARAM: 1, OTG VER FLAG: 1
[    1.773142] dwc_otg: Working on port type = SLAVE
[    1.773147] dwc_otg: Dedicated Tx FIFOs mode
[    1.774981] magic - MPT
[    1.774985] version - 01.00.00
[    1.774989] checksum - 76672151, result - 76672151
[    1.775003] mmcblk1: p1 p2\x0a p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 p20 p21
[    1.775311] meson_cdev probe
[    1.775325] thermal: read gpupp failed
[    1.775457] meson_cdev index: 0
[    1.775583] thermal: read gpupp failed
[    1.777622] meson_cdev index: 1
[    1.777631] cpucore_cooling_register, max_cpu_core_num:4
[    1.777799] meson_cdev index: 2
[    1.777806] thermal: read gpupp failed
[    1.781469] meson_cdev index: 3
[    1.781514] find tzd id: 0
[    1.781620] find tzd id: 0
[    1.781657] meson_cdev probe done
[    1.781852] gxbb_pm: enter meson_pm_probe!
[    1.781857] no vddio3v3_en pin
[    1.781870] pm-meson aml_pm: Can't get switch_clk81
[    1.786491] gxbb_pm: meson_pm_probe done
[    1.786973] ALSA device list:
[    1.786977] #0: AML-AUGESOUND
[    1.787150] hdmitx: system: plugin
[    1.787167] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 115200 to 115200
[    1.788813] Freeing unused kernel memory: 5248K
[    1.791099] hdmitx: system: update rx hdr info 0
[    1.792729] init: init first stage started!
[    1.793005] init: Using Android DT directory /proc/device-tree/firmware/android/
[    1.795577] init: [libfs_mgr]fs_mgr_read_fstab_default(): failed to find device default fstab
[    1.857534] FAT-fs (mmcblk1p15): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[    1.857650] init: [libfs_mgr]__mount(source=/dev/block/odm,target=/odm,type=vfat)=0: Success
[    1.860045] EXT4-fs (mmcblk1p18): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[    1.860152] init: [libfs_mgr]__mount(source=/dev/block/product,target=/product,type=ext4)=0: Success
[    1.863549] EXT4-fs (mmcblk1p16): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[    1.863636] init: [libfs_mgr]__mount(source=/dev/block/system,target=/system,type=ext4)=0: Success
[    1.866974] EXT4-fs (mmcblk1p17): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[    1.867069] init: [libfs_mgr]__mount(source=/dev/block/vendor,target=/vendor,type=ext4)=0: Success
[    1.867283] init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
[    1.867522] init: Loading SELinux policy
[    1.875648] init: No precompiled sepolicy: No such file or directory
[    1.919540] hdmitx: edid: EDID Parser:
[    1.919546] hdmitx: hdmitx: reach vesa idx MAX
[    1.919549] hdmitx: hdmitx: reach vesa idx MAX
[    1.919551] hdmitx: hdmitx: reach vesa idx MAX
[    1.919567] [RX]-up_phy_addr = 1
[    1.919578] hdmitx: edid: get dtd0 vic: 18
[    1.919582] hdmitx: hdmitx: reach vesa idx MAX
[    1.919586] hdmitx: edid: find IEEEOUT
[    1.919605] hdmitx: edid: check sum valid
[    1.919608] hdmitx: edid: check sum valid
[    1.919612] hdmitx: edid: check sum valid
[    1.919615] hdmitx: edid: check sum valid
[    1.919619] hdmitx: edid: blk0 raw data
[    1.919639] hdmitx: edid: \x0a00ffffffffffff0012e51018502d310115120103812213782ab370a255489827\x0a155054bfee005940614c81c001010101010101010101662156aa51001e30468f\x0a330029170000001e000000ff00300a0a0a0a0a0a0a0a0a0a0a0a000000fd0037\x0a4b1e3c08000a202020202020000000fc0048444d490a0a0a0a0a0a0a0a0a0146\x0a\x0a
[    1.919642] hdmitx: edid: blk1 raw data
[    1.919661] hdmitx: edid: \x0a020321714e0607020315961112130414051f90230907078301000065030c0010\x0a008c0ad090204031200c405500b98821000018011d8018711c1620582c2500b9\x0a882100009e011d80d0721c1620102c2580b9882100009e011d00bc52d01e20b8\x0a285540b9882100001e023a80d072382d40102c4580b9882100001e00000000d0\x0a\x0a
[    1.919665] hdmitx: system: update physcial size: 340 190
[    1.919668] hdmitx: video: Sink is HDMI device
[    1.919673] hdmitx: hw: set audio
[    1.919679] hdmitx: hw: hdmitx tx_aud_src = 0
[    1.919692] hdmitx: fs = 0, cd = 4, tmds_clk = 85500
[    1.919695] hdmitx: hw: aud_n_para = 6144
[    1.919704] hdmitx: hw: set channel status
[    1.919800] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    2.011120] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[    2.171535] hub 1-1:1.0: USB hub found
[    2.171732] hub 1-1:1.0: 4 ports detected
[    2.295310] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
[    2.331517] hub 2-1:1.0: USB hub found
[    2.331787] hub 2-1:1.0: 4 ports detected
[    2.423109] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    2.915112] usb 1-1.4: new low-speed USB device number 3 using xhci-hcd
[    2.935106] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    2.990887] SELinux: 8192 avtab hash slots, 19830 rules.
[    2.999735] SELinux: 8192 avtab hash slots, 19830 rules.
[    2.999748] SELinux:  1 users, 4 roles, 1446 types, 0 bools, 1 sens, 1024 cats
[    2.999758] SELinux:  93 classes, 19830 rules
[    3.001519] SELinux:  Completing initialization.
[    3.001524] SELinux:  Setting up existing superblocks.
[    3.098164] audit: type=1403 audit(1617882674.932:2): policy loaded auid=4294967295 ses=4294967295
[    3.102055] input: USB OPTICAL MOUSE  as /devices/platform/ff500000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.4/1-1.4:1.0/0003:18F8:1485.0001/input/input4
[    3.102597] hid-generic 0003:18F8:1485.0001: input,hidraw0: USB HID v1.11 Mouse [USB OPTICAL MOUSE ] on usb-xhci-hcd.0.auto-1.4/input0
[    3.106355] init: 4 output lines suppressed due to ratelimiting
[    3.108451] init: init second stage started!
[    3.121604] init: Using Android DT directory /proc/device-tree/firmware/android/
[    3.122546] audit: type=1400 audit(1617882674.956:3): avc:  denied  { read } for  pid=1 comm="init" name="uuid" dev="sysfs" ino=15979 scontext=u:r:init:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=1
[    3.122570] audit: type=1400 audit(1617882674.956:4): avc:  denied  { open } for  pid=1 comm="init" path="/sys/class/efuse/uuid" dev="sysfs" ino=15979 scontext=u:r:init:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=1
[    3.125557] selinux: SELinux: Loaded file_contexts\x0a
[    3.125585] init: Running restorecon...
[    3.131860] init: waitid failed: No child processes
[    3.138547] audit: type=1400 audit(1617882674.972:5): avc:  denied  { read } for  pid=1 comm="init" name="default.prop" dev="mmcblk1p15" ino=3 scontext=u:r:init:s0 tcontext=u:object_r:vfat:s0 tclass=file permissive=1
[    3.138572] audit: type=1400 audit(1617882674.972:6): avc:  denied  { open } for  pid=1 comm="init" path="/odm/default.prop" dev="mmcblk1p15" ino=3 scontext=u:r:init:s0 tcontext=u:object_r:vfat:s0 tclass=file permissive=1
[    3.138593] audit: type=1400 audit(1617882674.972:7): avc:  denied  { getattr } for  pid=1 comm="init" path="/odm/default.prop" dev="mmcblk1p15" ino=3 scontext=u:r:init:s0 tcontext=u:object_r:vfat:s0 tclass=file permissive=1
[    3.140748] init: Created socket '/dev/socket/property_service', mode 666, user 0, group 0
[    3.141434] init: Forked subcontext for 'u:r:vendor_init:s0' with pid 2376
[    3.141970] init: Forked subcontext for 'u:r:vendor_init:s0' with pid 2377
[    3.142073] init: Parsing file /init.rc...
[    3.142372] init: Added '/init.environ.rc' to import list
[    3.225181] ueventd: ueventd started!
[    3.227796] selinux: SELinux: Loaded file_contexts\x0a
[    3.227855] watchdogd: watchdogd started (interval 10, margin 20)!
[    3.227858] ueventd: Parsing file /ueventd.rc...
[    3.227913] watchdogd: Failed to open /dev/watchdog: No such file or directory
[    3.228423] ueventd: Parsing file /ueventd.odroidc4.rc...
[    3.228801] ueventd: /ueventd.odroidc4.rc: 102: /sys/ lines must have 5 entries
[    3.228940] ueventd: Parsing file /vendor/ueventd.rc...
[    3.228979] ueventd: Unable to read config file '/vendor/ueventd.rc': open() failed: No such file or directory
[    3.229103] ueventd: Parsing file /odm/ueventd.rc...
[    3.229141] ueventd: Unable to read config file '/odm/ueventd.rc': open() failed: No such file or directory
[    3.272126] mali_kbase: loading out-of-tree module taints kernel.
[    3.283579] mali ffe40000.bifrost: Continuing without Mali regulator control
[    3.283664] mali ffe40000.bifrost: max pp is 2
[    3.283669] mali ffe40000.bifrost: set min pp to default 1
[    3.283673] mali ffe40000.bifrost: min pp is 1
[    3.283677] mali ffe40000.bifrost: set min clk default to 0
[    3.283681] mali ffe40000.bifrost: min clk  is 0
[    3.283699] mali ffe40000.bifrost: hiu io source  0xffffff8008f20000
[    3.283709] mali ffe40000.bifrost: hiu io source  0xffffff8008f22000
[    3.283714] mali ffe40000.bifrost: num of pp used most of time 1
[    3.283718] mali ffe40000.bifrost: clock dvfs cfg table size is 6
[    3.283811] mali ffe40000.bifrost: max clk set 4
[    3.283815] mali ffe40000.bifrost: max clk  is 4
[    3.283819] mali ffe40000.bifrost: turbo clk set to 5
[    3.283823] mali ffe40000.bifrost: turbo clk  is 5
[    3.283827] mali ffe40000.bifrost: default clk set to 4
[    3.283831] mali ffe40000.bifrost: default clk  is 4
[    3.283837] mali ffe40000.bifrost: ====================0====================\x0aclk_freq= 285714285, clk_parent=fclk_div7, voltage=1150, keep_count=5, threshod=<100 190>, clk_sample=285
[    3.283842] mali ffe40000.bifrost: ====================1====================\x0aclk_freq= 400000000, clk_parent=fclk_div5, voltage=1150, keep_count=5, threshod=<152 207>, clk_sample=400
[    3.283847] mali ffe40000.bifrost: ====================2====================\x0aclk_freq= 500000000, clk_parent=fclk_div4, voltage=1150, keep_count=5, threshod=<180 220>, clk_sample=500
[    3.283852] mali ffe40000.bifrost: ====================3====================\x0aclk_freq= 666666666, clk_parent=fclk_div3, voltage=1150, keep_count=5, threshod=<210 236>, clk_sample=666
[    3.283858] mali ffe40000.bifrost: ====================4====================\x0aclk_freq= 846000000, clk_parent=  gp0_pll, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=846
[    3.283863] mali ffe40000.bifrost: ====================5====================\x0aclk_freq= 846000000, clk_parent=  gp0_pll, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=846
[    3.283866] mali ffe40000.bifrost: clock dvfs table size is 6
[    3.285316] mali_plat=ffffff8001e18598
[    3.285677] find tzd id: 0
[    3.285723] gpu cooling register okay with err=0
[    3.285934] find tzd id: 0
[    3.285960] gpu core cooling register okay with err=0
[    3.285990] shader_present=1, tiler_present=1, l2_present=1
[    3.286072] Mali_pwr_on:gpu_irq : 200
[    3.286395] hrtimer: interrupt took 15375 ns
[    3.286821] mali ffe40000.bifrost: GPU identified as 0x3 arch 7.0.9 r0p0 status 0
[    3.289126] mali ffe40000.bifrost: Probed as mali0
[    3.306238] meson-spicc ffd13000.spi: registered master spi0
[    3.306359] spi spi0.0: setup mode 0, 8 bits/w, 100000000 Hz max --> 0
[    3.306754] meson-spicc ffd13000.spi: registered child spi0.0
[    3.447091] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    3.640742] ueventd: Coldboot took 0.381 seconds
[    3.680662] audit: type=1400 audit(1617882675.516:8): avc:  denied  { write } for  pid=2376 comm="init" name="watermark_scale_factor" dev="proc" ino=11992 scontext=u:r:vendor_init:s0 tcontext=u:object_r:proc_vm_writable:s0 tclass=file permissive=1
[    3.697695] EXT4-fs (mmcblk1p21): Ignoring removed nomblk_io_submit option
[    3.722710] EXT4-fs (mmcblk1p21): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
[    3.844155] e2fsck: e2fsck 1.43.3 (04-Sep-2016)\x0a
[    3.844187] e2fsck: data: clean, 2906/3592000 files, 294520/14706398 blocks\x0a
[    3.847033] EXT4-fs (mmcblk1p21): Ignoring removed nomblk_io_submit option
[    3.871965] EXT4-fs (mmcblk1p21): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[    3.875181] EXT4-fs (mmcblk1p14): Ignoring removed nomblk_io_submit option
[    3.884757] EXT4-fs (mmcblk1p14): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
[    3.935949] e2fsck: e2fsck 1.43.3 (04-Sep-2016)\x0a
[    3.935987] e2fsck: cache: clean, 17/65536 files, 12665/262144 blocks\x0a
[    3.938133] EXT4-fs (mmcblk1p14): Ignoring removed nomblk_io_submit option
[    3.943451] EXT4-fs (mmcblk1p14): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[    3.959112] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    3.985666] e2fsck: e2fsck 1.43.3 (04-Sep-2016)\x0a
[    3.985703] e2fsck: Pass 1: Checking inodes, blocks, and sizes\x0a
[    3.985711] e2fsck: Pass 2: Checking directory structure\x0a
[    3.985717] e2fsck: Pass 3: Checking directory connectivity\x0a
[    3.985724] e2fsck: Pass 4: Checking reference counts\x0a
[    3.985730] e2fsck: Pass 5: Checking group summary information\x0a
[    3.986591] EXT4-fs (mmcblk1p19): Ignoring removed nomblk_io_submit option
[    3.994719] EXT4-fs (mmcblk1p19): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[    3.996726] init: 1 output lines suppressed due to ratelimiting
[    4.014622] register clk_set_setting cpu[43]
[    4.027271] Registered firmware driver success.
[    4.028157] Try to load video/h264_enc.bin  ...
[    4.032104] load firmware size : 76288, Name : video/h264_enc.bin.
[    4.032685] Try to load video/video_ucode.bin  ...
[    4.065918] load firmware size : 1816576, Name : video/video_ucode.bin.
[    4.210017] Amlogic A/V streaming port init
[    4.212619] get gate demux control ok ffffffc0d9b162c0
[    4.212643] get gate parser_top control ok ffffffc0d9b16340
[    4.212676] get gate vdec control ok ffffffc0d9b163c0
[    4.212710] get gate clk_81 control ok ffffffc0d9b16440
[    4.212749] get gate clk_vdec_mux control ok ffffffc0d9b164c0
[    4.212792] get gate clk_hcodec_mux control ok ffffffc0d9b16540
[    4.212841] get gate clk_hevc_mux control ok ffffffc0d9b165c0
[    4.212894] get gate clk_hevcb_mux control ok ffffffc0d9b16640
[    4.212917] get gate ahbarb0 control ok ffffffc0d9b166c0
[    4.212925] get gate asyncfifo control failed           (null)
[    4.224203] amvdec_avs module init
[    4.238947] amvdec_h264 module init
[    4.264095] ammvdec_h264 module init
[    4.294797] amvdec_h265 module init
[    4.330313] ammvdec_mpeg12 module init
[    4.346432] ammvdec_mpeg4_driver_init_module 
[    4.361005] amvdec_vc1 module init
[    4.379551] amvdec_vp9 module init
[    4.418005] amvenc_avc_probe -- reserved memory config fail.
[    4.418011] amvenc_avc - cma memory pool size: 60 MB
[    4.418034] encode_wq_init.
[    4.418045] encode start monitor.
[    4.418146] encode workqueue monitor start.
[    4.432477] vpu_init
[    4.432753] vpu_probe
[    4.432759] HevcEnc reserved memory config fail.
[    4.432763] HevcEnc - cma memory pool size: 64 MB
[    4.432787] HevcEnc - wave420l_irq: 47
[    4.432840] vpu base address get from platform driver physical base addr=0xff610000, virtual base=0xffffff8009074000
[    4.433103] success to probe vpu device with video memory from cma
[    4.466970] audit: type=1400 audit(1617882676.300:9): avc:  denied  { setattr } for  pid=1 comm="init" name="slabinfo" dev="proc" ino=4026531989 scontext=u:r:init:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[    4.467536] audit: type=1400 audit(1617882676.304:10): avc:  denied  { read } for  pid=2813 comm="imageserver" name="vndbinder" dev="tmpfs" ino=11952 scontext=u:r:imageserver:s0 tcontext=u:object_r:vndbinder_device:s0 tclass=chr_file permissive=1
[    4.471109] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    4.507277] logd.auditd: start
[    4.507294] logd.klogd: 4448244001
[    4.651519] vdc: Waited 20ms for vold
[    4.712134] type=1400 audit(1617882676.548:14): avc: denied { setattr } for pid=2376 comm="init" name="droidota" dev="mmcblk1p21" ino=128048 scontext=u:r:vendor_init:s0 tcontext=u:object_r:update_data_file:s0 tclass=dir permissive=1
[    4.712605] type=1400 audit(1617882676.548:14): avc: denied { setattr } for pid=2376 comm="init" name="droidota" dev="mmcblk1p21" ino=128048 scontext=u:r:vendor_init:s0 tcontext=u:object_r:update_data_file:s0 tclass=dir permissive=1
[    4.712625] type=1400 audit(1617882676.548:15): avc: denied { setattr } for pid=2376 comm="init" name="log" dev="mmcblk1p21" ino=128049 scontext=u:r:vendor_init:s0 tcontext=u:object_r:log_file:s0 tclass=dir permissive=1
[    4.718407] type=1400 audit(1617882676.548:15): avc: denied { setattr } for pid=2376 comm="init" name="log" dev="mmcblk1p21" ino=128049 scontext=u:r:vendor_init:s0 tcontext=u:object_r:log_file:s0 tclass=dir permissive=1
[    4.718435] type=1400 audit(1617882676.552:16): avc: denied { setattr } for pid=2376 comm="init" name="media" dev="mmcblk1p21" ino=50 scontext=u:r:vendor_init:s0 tcontext=u:object_r:media_rw_data_file:s0 tclass=dir permissive=1
[    4.755578] logd.daemon: reinit
[    4.817008] watchdogd: watchdogd started (interval 10, margin 20)!
[    4.817848] meson_wdt ffd0f0d0.watchdog: start watchdog
[    4.817864] meson_wdt ffd0f0d0.watchdog: set timeout
[    4.929047] unifykey: amlkey_init_gen() enter!
[    4.929055] unifykey: store_key_read is NULL
[    4.929081] unifykey: check whether emmc_key/nand_key driver is enabled
[    4.934733] unifykey: key_unify_init:396,normal device ini fail
[    4.944711] vfm_map_store:rm default
[    4.944965] vfm_map_store:add default decoder ppmgr deinterlace amvideo
[    4.956337] file system registered
[    4.961294] assign_ffs_buffer FFS_BUFFER_MAX=100!!!
[    4.962416] cpufreq_interactive: cpufreq_hmp_boost_start()
[    4.962422] cpufreq_interactive: no need to active hmp boost!
[    4.983121] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    5.024760] healthd: No battery devices found
[    5.028228] android.hardware.health@2.0-impl: wakealarm_init: timerfd_create failed
[    5.030640] healthd: battery none chg=
[    5.036560] type=1400 audit(1617882676.552:16): avc: denied { setattr } for pid=2376 comm="init" name="media" dev="mmcblk1p21" ino=50 scontext=u:r:vendor_init:s0 tcontext=u:object_r:media_rw_data_file:s0 tclass=dir permissive=1
[    5.036592] type=1400 audit(1617882676.872:17): avc: denied { read } for pid=2983 comm="android.hardwar" name="cmdline" dev="proc" ino=4026531944 scontext=u:r:hal_light_default:s0 tcontext=u:object_r:proc_cmdline:s0 tclass=file permissive=1
[    5.412146] read descriptors
[    5.412159] read strings
[    5.441739] hdmitx: system: set hdcp_pwr 1
[    5.483678] hdmitx: system: restore hdcp_pwr 0
[    5.495116] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    5.515101] USB RESET
[    5.602561] android_work: sent uevent USB_STATE=CONNECTED
[    5.721548] fb: malloc_osd_memory, cma:ffffff800aabca60
[    5.721558] fb: malloc_osd_memory, 1219, base:0x00000000e0800000, size:8388608
[    5.721628] fb: use ion buffer for fb memory, fb_index=0
[    5.721633] fb: OSD0 as afbcd mode,afbc_type=2
[    5.727857] meson-fb meson-fb: create ion_client ffffffc0992cc240, handle=ffffffc0d152ac40
[    5.730744] meson-fb meson-fb: ion memory(0): created fb at 0x00000000e5800000, size 25 MiB
[    5.739203] fb:  0, phy: 0x00000000e5800000, vir:0xffffff800c23f000, size=26112K\x0a
[    5.739208] fb: Frame buffer memory assigned at
[    5.739212] fb:  0, phy: 0x00000000e5800000, vir:0xffffff800c23f000, size=26112K\x0a
[    5.739216] fb:  0, phy: 0x00000000e5800000, vir:0xffffff800c23f000, size=26112K\x0a
[    5.739219] fb: logo_index=0,fb_index=0
[    5.739223] fb: ---------------clear fb0 memory ffffff800c23f000
[    5.743785] fb: osd[0] canvas.idx =0x40
[    5.743791] fb: osd[0] canvas.addr=0xe5800000
[    5.743794] fb: osd[0] canvas.width=5440
[    5.743798] fb: osd[0] canvas.height=1536
[    5.743801] fb: osd[0] frame.width=1360
[    5.743804] fb: osd[0] frame.height=768
[    5.743807] fb: osd[0] out_addr_id =0x1
[    5.747542] fb: malloc_osd_memory, cma:ffffff800aabca60
[    5.747553] fb: malloc_osd_memory, 1219, base:0x00000000e0800000, size:8388608
[    5.747557] fb: use ion buffer for fb memory, fb_index=1
[    5.747560] fb: OSD1 as afbcd mode,afbc_type=2
[    5.748312] meson-fb meson-fb: create ion_client ffffffc0992cc240, handle=ffffffc0d152ad80
[    5.751169] meson-fb meson-fb: ion memory(1): created fb at 0x00000000e7200000, size 1 MiB
[    5.759563] fb:  1, phy: 0x00000000e7200000, vir:0xffffff800dbc0000, size=1024K\x0a
[    5.759568] fb: Frame buffer memory assigned at
[    5.759573] fb:  1, phy: 0x00000000e7200000, vir:0xffffff800dbc0000, size=1024K\x0a
[    5.759577] fb:  1, phy: 0x00000000e7200000, vir:0xffffff800dbc0000, size=1024K\x0a
[    5.759581] fb: logo_index=0,fb_index=1
[    5.759585] fb: ---------------clear fb1 memory ffffff800dbc0000
[    5.759766] fb: osd[1] canvas.idx =0x43
[    5.759769] fb: osd[1] canvas.addr=0xe7200000
[    5.759771] fb: osd[1] canvas.width=128
[    5.759774] fb: osd[1] canvas.height=32
[    5.759777] fb: osd[1] frame.width=32
[    5.759780] fb: osd[1] frame.height=32
[    5.759783] fb: osd[1] out_addr_id =0x2
[    5.764325] fb: malloc_osd_memory, cma:ffffff800aabca60
[    5.764335] fb: malloc_osd_memory, 1219, base:0x00000000e0800000, size:8388608
[    5.764338] fb: use ion buffer for fb memory, fb_index=2
[    5.764342] fb: OSD2 as afbcd mode,afbc_type=2
[    5.765129] meson-fb meson-fb: create ion_client ffffffc0992cc240, handle=ffffffc0d152aec0
[    5.767965] meson-fb meson-fb: ion memory(2): created fb at 0x00000000e7300000, size 1 MiB
[    5.776352] fb:  2, phy: 0x00000000e7300000, vir:0xffffff800dcc1000, size=1024K\x0a
[    5.776356] fb: Frame buffer memory assigned at
[    5.776360] fb:  2, phy: 0x00000000e7300000, vir:0xffffff800dcc1000, size=1024K\x0a
[    5.776364] fb:  2, phy: 0x00000000e7300000, vir:0xffffff800dcc1000, size=1024K\x0a
[    5.776367] fb: logo_index=0,fb_index=2
[    5.776371] fb: ---------------clear fb2 memory ffffff800dcc1000
[    5.776546] fb: osd[2] canvas.idx =0x41
[    5.776549] fb: osd[2] canvas.addr=0xe7300000
[    5.776552] fb: osd[2] canvas.width=128
[    5.776555] fb: osd[2] canvas.height=32
[    5.776558] fb: osd[2] frame.width=32
[    5.776561] fb: osd[2] frame.height=32
[    5.776564] fb: osd[2] out_addr_id =0x3
[    5.781232] fb: vpu clkc clock is 199 MHZ
[    5.781242] vpu: switch_vpu_mem_pd: unsupport vpu mod: 18
[    5.781245] vpu: switch_vpu_mem_pd: unsupport vpu mod: 22
[    5.781249] vpu: switch_vpu_mem_pd: unsupport vpu mod: 53
[    5.781257] fb: malloc_osd_memory, cma:ffffff800aabca60
[    5.781261] fb: malloc_osd_memory, 1219, base:0x00000000e0800000, size:8388608
[    5.781264] fb: use ion buffer for fb memory, fb_index=3
[    5.781268] fb: OSD3 as afbcd mode,afbc_type=2
[    5.783230] meson-fb meson-fb: create ion_client ffffffc0992cc240, handle=ffffffc0d152a980
[    5.786032] meson-fb meson-fb: ion memory(3): created fb at 0x00000000e7400000, size 8 MiB
[    5.794466] fb:  3, phy: 0x00000000e7400000, vir:0xffffff800ddc2000, size=8192K\x0a
[    5.794470] fb: Frame buffer memory assigned at
[    5.794474] fb:  3, phy: 0x00000000e7400000, vir:0xffffff800ddc2000, size=8192K\x0a
[    5.794478] fb:  3, phy: 0x00000000e7400000, vir:0xffffff800ddc2000, size=8192K\x0a
[    5.794481] fb: logo_index=0,fb_index=3
[    5.794490] fb: ---------------clear fb3 memory ffffff800ddc2000
[    5.795913] fb: osd[3] canvas.idx =0x42
[    5.795917] fb: osd[3] canvas.addr=0xe7400000
[    5.795920] fb: osd[3] canvas.width=128
[    5.795923] fb: osd[3] canvas.height=32
[    5.795926] fb: osd[3] frame.width=32
[    5.795929] fb: osd[3] frame.height=32
[    5.795932] fb: osd[3] out_addr_id =0x4
[    5.802528] vout: vout_io_open
[    6.007094] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    6.233717] [DI] load 0x3e00 pq table len 424 later.
[    6.519098] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    6.686378] avc open
[    6.686388] amvenc_avc  check CMA pool success, max instance: 3.
[    6.687024] allocating phys 0x65000000, size 20480k, wq:ffffffc0d3efa000.
[    6.687031] amvenc_avc  memory config success, buff start:0x65000000, size is 0x1400000, wq:ffffffc0d3efa000.
[    6.687178] avc release, wq:ffffffc0d3efa000
[    6.687185] remove  encode_work_queue ffffffc0d3efa000 success, _destroy_encode_work_queue line 3724.
[    6.687722] [+] vpu_open
[    6.692345] allocating phys 0x65000000, virt addr 0x0, size 65536k
[    6.692577] the vdec            clock on, ref cnt: 1
[    6.692610] [-] vpu_open, ret: 0
[    6.692635] vpu_release
[    6.692639] vpu_free_buffers
[    6.692641] vpu_free_instances
[    6.692645] vpu_release, s_video_memory 0x65000000
[    6.693328] the vdec            clock off, ref cnt: 0
[    6.830135] vout: vout_io_open
[    6.830148] vout: vout_ioctl: cmd_dir = 0x2, cmd_nr = 0x0
[    6.830155] vout: vout_io_release
[    6.831594] vout: vout_io_open
[    6.831607] vout: vout_ioctl: cmd_dir = 0x2, cmd_nr = 0x0
[    6.831614] vout: vout_io_release
[    6.943195] audit_log_lost: 11 callbacks suppressed
[    6.943199] audit: audit_lost=21 audit_rate_limit=5 audit_backlog_limit=64
[    6.943205] audit: rate limit exceeded
[    7.031081] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    7.051442] aml_tdm_open
[    7.051810] audio_ddr_mngr: toddrs[0] registered by device ff660000.audiobus:tdm@2
[    7.052050] tdm capture mute: 1
[    7.052155] audio_ddr_mngr: toddrs[0] released by device ff660000.audiobus:tdm@2
[    7.052388] aml_tdm_open
[    7.052695] audio_ddr_mngr: toddrs[0] registered by device ff660000.audiobus:tdm@1
[    7.053011] tdm capture mute: 1
[    7.053088] audio_ddr_mngr: toddrs[0] released by device ff660000.audiobus:tdm@1
[    7.543108] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    8.055101] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    8.426946] fb: osd[0] enable: 1 scale:0x10001 (HwBinder:2981_2)
[    8.426954] fb: osd[0] enable: 1 scale:0x10001 (HwBinder:2981_2)
[    8.432919] fb: free_scale_switch to fb0, mode: 0x10001
[    8.432973] fb: set logo loaded
[    8.567085] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    9.079144] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[    9.591089] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[   10.103096] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[   10.147785] capability: warning: `main' uses 32-bit capabilities (legacy support in use)
[   10.329752] healthd: battery none chg=
[   10.616152] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[   11.127101] vout: hdmichecksum [invalidcrc], kernel hdmichecksum []
[   11.574675] type=1400 audit(1617882680.240:55): avc: denied { execute } for pid=3185 comm="BootAnimation" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:bootanim:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   11.574702] type=1400 audit(1617882683.408:56): avc: denied { read } for pid=2984 comm="memtrack@1.0-se" name="vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.574932] type=1400 audit(1617882683.408:56): avc: denied { read } for pid=2984 comm="memtrack@1.0-se" name="vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.574950] type=1400 audit(1617882683.408:57): avc: denied { open } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.575040] type=1400 audit(1617882683.408:57): avc: denied { open } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.575107] type=1400 audit(1617882683.408:58): avc: denied { getattr } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.643091] vout: aml_tvout_mode_work: monitor_timeout
[   11.650356] early_suspend_state=0
[   11.702325] type=1400 audit(1617882683.408:58): avc: denied { getattr } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   11.702357] type=1400 audit(1617882683.536:59): avc: denied { read write } for pid=2983 comm="light@2.0-servi" name="duty_cycle" dev="sysfs" ino=22424 scontext=u:r:hal_light_default:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=1
[   11.702515] type=1400 audit(1617882683.536:59): avc: denied { read write } for pid=2983 comm="light@2.0-servi" name="duty_cycle" dev="sysfs" ino=22424 scontext=u:r:hal_light_default:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=1
[   11.702539] type=1400 audit(1617882683.536:60): avc: denied { open } for pid=2983 comm="light@2.0-servi" path="/sys/devices/platform/soc/ffd00000.cbus/ffd19000.pwm/pwm/pwmchip4/pwm0/duty_cycle" dev="sysfs" ino=22424 scontext=u:r:hal_light_default:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=1
[   13.610339] healthd: battery none chg=
[   13.610797] healthd: battery none chg=
[   14.656159] acc_open
[   14.656174] acc_release
[   15.042358] eth0: device MAC address 00:1e:06:48:04:5c
[   15.123428] meson6-dwmac ff3f0000.ethernet eth0: fail to init PTP.
[   15.123907] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   15.150871] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   15.263042] sdcardfs version 2.0
[   15.263315] sdcardfs: dev_name -> /data/media
[   15.263318] sdcardfs: options -> fsuid=1023,fsgid=1023,multiuser,derive_gid,default_normal,mask=6,userid=0,gid=1015
[   15.263322] sdcardfs: mnt -> ffffffc0b1027a60
[   15.263386] sdcardfs: mounted on top of /data/media type ext4
[   15.264115] Remount options were mask=23,gid=9997 for vfsmnt ffffffc0b1150c60.
[   15.264129] sdcardfs : options - debug:1
[   15.264133] sdcardfs : options - gid:9997
[   15.264136] sdcardfs : options - mask:23
[   15.264429] Remount options were mask=7,gid=9997 for vfsmnt ffffffc0b11518a0.
[   15.264438] sdcardfs : options - debug:1
[   15.264442] sdcardfs : options - gid:9997
[   15.264445] sdcardfs : options - mask:7
[   15.309956] audit: audit_lost=28 audit_rate_limit=5 audit_backlog_limit=64
[   15.309965] audit: rate limit exceeded
[   15.544239] binder: unexpected work type, 4, not freed
[   15.544274] binder: undelivered TRANSACTION_COMPLETE
[   15.544280] binder: undelivered transaction 6171, process died.
[   16.774679] type=1400 audit(1617882687.144:71): avc: denied { setopt } for pid=3357 comm="usb_modeswitch" scontext=u:r:usb_modeswitch:s0 tcontext=u:r:usb_modeswitch:s0 tclass=netlink_kobject_uevent_socket permissive=1
[   16.774712] type=1400 audit(1617882688.608:79): avc: denied { read } for pid=2994 comm="Binder:2994_2" name="gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.774956] type=1400 audit(1617882688.608:79): avc: denied { read } for pid=2994 comm="Binder:2994_2" name="gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.775194] type=1400 audit(1617882688.608:80): avc: denied { open } for pid=2994 comm="Binder:2994_2" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.775360] type=1400 audit(1617882688.608:80): avc: denied { open } for pid=2994 comm="Binder:2994_2" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.775380] type=1400 audit(1617882688.612:81): avc: denied { getattr } for pid=2994 comm="Binder:2994_2" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.792044] type=1400 audit(1617882688.612:81): avc: denied { getattr } for pid=2994 comm="Binder:2994_2" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.792074] type=1400 audit(1617882688.628:82): avc: denied { execute } for pid=3469 comm="RenderThread" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:system_app:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   16.825996] USB RESET
[   16.914410] USB RESET
[   17.014710] the demux           clock on, ref cnt: 1
[   17.014720] the parser_top      clock on, ref cnt: 1
[   17.014724] the vdec            clock on, ref cnt: 1
[   17.014747] the clk_hevc_mux    clock on, ref cnt: 1
[   17.014753] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.014854] hevc mux clock is 499999992 Hz
[   17.014896] hevc back mux clock is 499999992 Hz
[   17.014960] vdec_create instance ffffff800f398000, total 1
[   17.014989] vdec_disable_DMC input->target= 0x0
[   17.014994] vdec_release instance ffffff800f398000, total 1
[   17.015018] the clk_hevc_mux    clock off, ref cnt: 0
[   17.015023] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.015030] the vdec            clock off, ref cnt: 0
[   17.015035] the parser_top      clock off, ref cnt: 0
[   17.015039] the demux           clock off, ref cnt: 0
[   17.015202] the demux           clock on, ref cnt: 1
[   17.015208] the parser_top      clock on, ref cnt: 1
[   17.015213] the vdec            clock on, ref cnt: 1
[   17.015232] the clk_vdec_mux    clock on, ref cnt: 1
[   17.015310] vdec mux clock is 799999987 Hz
[   17.015358] vdec_create instance ffffff800f3ab000, total 1
[   17.015382] vdec_disable_DMC input->target= 0x0
[   17.015386] vdec_release instance ffffff800f3ab000, total 1
[   17.015408] the clk_vdec_mux    clock off, ref cnt: 0
[   17.015414] the vdec            clock off, ref cnt: 0
[   17.015418] the parser_top      clock off, ref cnt: 0
[   17.015422] the demux           clock off, ref cnt: 0
[   17.015555] ionvid: dbg: ionvideo open
[   17.015566] ionvid: dbg: vidioc_close!!!!
[   17.015576] ionvid: dbg: vidioc_close
[   17.036497] the demux           clock on, ref cnt: 1
[   17.036507] the parser_top      clock on, ref cnt: 1
[   17.036512] the vdec            clock on, ref cnt: 1
[   17.036534] the clk_hevc_mux    clock on, ref cnt: 1
[   17.036538] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.036634] hevc mux clock is 499999992 Hz
[   17.036673] hevc back mux clock is 499999992 Hz
[   17.036732] vdec_create instance ffffff800f3be000, total 1
[   17.036757] vdec_disable_DMC input->target= 0x0
[   17.036761] vdec_release instance ffffff800f3be000, total 1
[   17.036784] the clk_hevc_mux    clock off, ref cnt: 0
[   17.036790] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.036796] the vdec            clock off, ref cnt: 0
[   17.036801] the parser_top      clock off, ref cnt: 0
[   17.036805] the demux           clock off, ref cnt: 0
[   17.036919] the demux           clock on, ref cnt: 1
[   17.036924] the parser_top      clock on, ref cnt: 1
[   17.036928] the vdec            clock on, ref cnt: 1
[   17.036947] the clk_vdec_mux    clock on, ref cnt: 1
[   17.037009] vdec mux clock is 799999987 Hz
[   17.037051] vdec_create instance ffffff800f3d1000, total 1
[   17.037069] vdec_disable_DMC input->target= 0x0
[   17.037073] vdec_release instance ffffff800f3d1000, total 1
[   17.037091] the clk_vdec_mux    clock off, ref cnt: 0
[   17.037097] the vdec            clock off, ref cnt: 0
[   17.037102] the parser_top      clock off, ref cnt: 0
[   17.037106] the demux           clock off, ref cnt: 0
[   17.037214] ionvid: dbg: ionvideo open
[   17.037223] ionvid: dbg: vidioc_close!!!!
[   17.037233] ionvid: dbg: vidioc_close
[   17.138470] USB RESET
[   17.175699] type=1400 audit(1617882688.628:82): avc: denied { execute } for pid=3469 comm="RenderThread" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:system_app:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   17.175738] type=1400 audit(1617882689.012:83): avc: denied { read } for pid=2967 comm="HwBinder:2967_2" scontext=u:r:hdmicecd:s0 tcontext=u:r:hdmicecd:s0 tclass=netlink_kobject_uevent_socket permissive=1
[   17.194124] the demux           clock on, ref cnt: 1
[   17.194134] the parser_top      clock on, ref cnt: 1
[   17.194139] the vdec            clock on, ref cnt: 1
[   17.194160] the clk_hevc_mux    clock on, ref cnt: 1
[   17.194164] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.194191] hevc mux clock is 499999992 Hz
[   17.194204] hevc back mux clock is 499999992 Hz
[   17.194271] vdec_create instance ffffff800f3e4000, total 1
[   17.194319] vdec_disable_DMC input->target= 0x0
[   17.194323] vdec_release instance ffffff800f3e4000, total 1
[   17.194360] the clk_hevc_mux    clock off, ref cnt: 0
[   17.194365] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.194371] the vdec            clock off, ref cnt: 0
[   17.194375] the parser_top      clock off, ref cnt: 0
[   17.194380] the demux           clock off, ref cnt: 0
[   17.194456] the demux           clock on, ref cnt: 1
[   17.194461] the parser_top      clock on, ref cnt: 1
[   17.194465] the vdec            clock on, ref cnt: 1
[   17.194483] the clk_vdec_mux    clock on, ref cnt: 1
[   17.194505] vdec mux clock is 799999987 Hz
[   17.194545] vdec_create instance ffffff800f3f7000, total 1
[   17.194559] vdec_disable_DMC input->target= 0x0
[   17.194562] vdec_release instance ffffff800f3f7000, total 1
[   17.194577] the clk_vdec_mux    clock off, ref cnt: 0
[   17.194582] the vdec            clock off, ref cnt: 0
[   17.194587] the parser_top      clock off, ref cnt: 0
[   17.194591] the demux           clock off, ref cnt: 0
[   17.194699] ionvid: dbg: ionvideo open
[   17.194708] ionvid: dbg: vidioc_close!!!!
[   17.194717] ionvid: dbg: vidioc_close
[   17.226118] USB RESET
[   17.235611] the demux           clock on, ref cnt: 1
[   17.235621] the parser_top      clock on, ref cnt: 1
[   17.235626] the vdec            clock on, ref cnt: 1
[   17.235647] the clk_hevc_mux    clock on, ref cnt: 1
[   17.235652] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.235678] hevc mux clock is 499999992 Hz
[   17.235692] hevc back mux clock is 499999992 Hz
[   17.235747] vdec_create instance ffffff800f40a000, total 1
[   17.235763] vdec_disable_DMC input->target= 0x0
[   17.235767] vdec_release instance ffffff800f40a000, total 1
[   17.235787] the clk_hevc_mux    clock off, ref cnt: 0
[   17.235792] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.235798] the vdec            clock off, ref cnt: 0
[   17.235802] the parser_top      clock off, ref cnt: 0
[   17.235806] the demux           clock off, ref cnt: 0
[   17.235868] the demux           clock on, ref cnt: 1
[   17.235873] the parser_top      clock on, ref cnt: 1
[   17.235878] the vdec            clock on, ref cnt: 1
[   17.235895] the clk_vdec_mux    clock on, ref cnt: 1
[   17.235914] vdec mux clock is 799999987 Hz
[   17.235951] vdec_create instance ffffff800f41d000, total 1
[   17.235963] vdec_disable_DMC input->target= 0x0
[   17.235966] vdec_release instance ffffff800f41d000, total 1
[   17.235980] the clk_vdec_mux    clock off, ref cnt: 0
[   17.235985] the vdec            clock off, ref cnt: 0
[   17.235990] the parser_top      clock off, ref cnt: 0
[   17.235993] the demux           clock off, ref cnt: 0
[   17.236067] ionvid: dbg: ionvideo open
[   17.236076] ionvid: dbg: vidioc_close!!!!
[   17.236087] ionvid: dbg: vidioc_close
[   17.259614] the demux           clock on, ref cnt: 1
[   17.259624] the parser_top      clock on, ref cnt: 1
[   17.259629] the vdec            clock on, ref cnt: 1
[   17.259651] the clk_hevc_mux    clock on, ref cnt: 1
[   17.259655] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.259683] hevc mux clock is 499999992 Hz
[   17.259697] hevc back mux clock is 499999992 Hz
[   17.259754] vdec_create instance ffffff800f430000, total 1
[   17.259772] vdec_disable_DMC input->target= 0x0
[   17.259776] vdec_release instance ffffff800f430000, total 1
[   17.259798] the clk_hevc_mux    clock off, ref cnt: 0
[   17.259803] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.259809] the vdec            clock off, ref cnt: 0
[   17.259813] the parser_top      clock off, ref cnt: 0
[   17.259817] the demux           clock off, ref cnt: 0
[   17.259934] the demux           clock on, ref cnt: 1
[   17.259940] the parser_top      clock on, ref cnt: 1
[   17.259945] the vdec            clock on, ref cnt: 1
[   17.259962] the clk_vdec_mux    clock on, ref cnt: 1
[   17.259985] vdec mux clock is 799999987 Hz
[   17.260027] vdec_create instance ffffff800f443000, total 1
[   17.260043] vdec_disable_DMC input->target= 0x0
[   17.260047] vdec_release instance ffffff800f443000, total 1
[   17.260067] the clk_vdec_mux    clock off, ref cnt: 0
[   17.260073] the vdec            clock off, ref cnt: 0
[   17.260077] the parser_top      clock off, ref cnt: 0
[   17.260081] the demux           clock off, ref cnt: 0
[   17.260182] ionvid: dbg: ionvideo open
[   17.260193] ionvid: dbg: vidioc_close!!!!
[   17.260203] ionvid: dbg: vidioc_close
[   17.269982] the demux           clock on, ref cnt: 1
[   17.269993] the parser_top      clock on, ref cnt: 1
[   17.269998] the vdec            clock on, ref cnt: 1
[   17.270019] the clk_hevc_mux    clock on, ref cnt: 1
[   17.270024] the clk_hevcb_mux   clock on, ref cnt: 1
[   17.270052] hevc mux clock is 499999992 Hz
[   17.270067] hevc back mux clock is 499999992 Hz
[   17.270123] vdec_create instance ffffff800f456000, total 1
[   17.270142] vdec_disable_DMC input->target= 0x0
[   17.270146] vdec_release instance ffffff800f456000, total 1
[   17.270170] the clk_hevc_mux    clock off, ref cnt: 0
[   17.270175] the clk_hevcb_mux   clock off, ref cnt: 0
[   17.270181] the vdec            clock off, ref cnt: 0
[   17.270185] the parser_top      clock off, ref cnt: 0
[   17.270189] the demux           clock off, ref cnt: 0
[   17.270264] the demux           clock on, ref cnt: 1
[   17.270270] the parser_top      clock on, ref cnt: 1
[   17.270331] the vdec            clock on, ref cnt: 1
[   17.270351] the clk_vdec_mux    clock on, ref cnt: 1
[   17.270376] vdec mux clock is 799999987 Hz
[   17.270419] vdec_create instance ffffff800f469000, total 1
[   17.270436] vdec_disable_DMC input->target= 0x0
[   17.270440] vdec_release instance ffffff800f469000, total 1
[   17.270460] the clk_vdec_mux    clock off, ref cnt: 0
[   17.270466] the vdec            clock off, ref cnt: 0
[   17.270470] the parser_top      clock off, ref cnt: 0
[   17.270475] the demux           clock off, ref cnt: 0
[   17.270557] ionvid: dbg: ionvideo open
[   17.270567] ionvid: dbg: vidioc_close!!!!
[   17.270578] ionvid: dbg: vidioc_close
[   17.488950] configfs-gadget gadget: high-speed config #1: b
[   17.489195] android_work: sent uevent USB_STATE=CONFIGURED
[   17.727638] audit: audit_lost=35 audit_rate_limit=5 audit_backlog_limit=64
[   17.727645] audit: rate limit exceeded
[   17.814286] audio_dsp: IEC958_mode_codec= 0, IEC958 type 2 CH PCM
[   17.814293] audio_dsp: last mode 0,now 0
[   17.828081] audio_dsp: IEC958_mode_codec= 0, IEC958 type 2 CH PCM
[   17.828089] audio_dsp: last mode 0,now 0
[   18.627221] zram0: detected capacity change from 0 to 268435456
[   18.676310] mkswap: Swapspace size: 262140k, UUID=15b5f2e3-62e3-419d-8bfe-9c92234d5f02
[   18.677473] Adding 262140k swap on /dev/block/zram0.  Priority:-1 extents:1 across:262140k SS
[   18.686656] selinux: SELinux: Skipping restorecon_recursive(/data/system_ce/0)\x0a
[   18.857415] selinux: SELinux: Skipping restorecon_recursive(/data/misc_ce/0)\x0a
[   18.888176] audit: audit_lost=41 audit_rate_limit=5 audit_backlog_limit=64
[   18.888184] audit: rate limit exceeded
[   19.926677] audit: audit_lost=83 audit_rate_limit=5 audit_backlog_limit=64
[   19.926685] audit: rate limit exceeded
[   20.231570] audio_dsp: dts_dec_control/0x0
[   22.166130] type=1400 audit(1617882692.340:145): avc: denied { read } for pid=2967 comm="HwBinder:2967_2" scontext=u:r:hdmicecd:s0 tcontext=u:r:hdmicecd:s0 tclass=netlink_kobject_uevent_socket permissive=1
[   22.166164] type=1400 audit(1617882694.000:146): avc: denied { write } for pid=4127 comm="odroid.settings" name="scaling_governor" dev="sysfs" ino=15567 scontext=u:r:system_app:s0 tcontext=u:object_r:sysfs_devices_system_cpu:s0 tclass=file permissive=1
[   22.394435] type=1400 audit(1617882694.000:146): avc: denied { write } for pid=4127 comm="odroid.settings" name="scaling_governor" dev="sysfs" ino=15567 scontext=u:r:system_app:s0 tcontext=u:object_r:sysfs_devices_system_cpu:s0 tclass=file permissive=1
[   22.394464] type=1400 audit(1617882694.228:147): avc: denied { getattr } for pid=4127 comm="odroid.settings" path="/sys/class/mpgpu/scale_mode" dev="sysfs" ino=20507 scontext=u:r:system_app:s0 tcontext=u:object_r:sysfs_mpgpu_scale:s0 tclass=file permissive=1
[   24.364829] type=1400 audit(1617882694.228:147): avc: denied { getattr } for pid=4127 comm="odroid.settings" path="/sys/class/mpgpu/scale_mode" dev="sysfs" ino=20507 scontext=u:r:system_app:s0 tcontext=u:object_r:sysfs_mpgpu_scale:s0 tclass=file permissive=1
[   24.364860] type=1400 audit(1617882696.200:148): avc: denied { read } for pid=3347 comm="RenderThread" name="gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   24.366410] type=1400 audit(1617882696.200:148): avc: denied { read } for pid=3347 comm="RenderThread" name="gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   24.366438] type=1400 audit(1617882696.200:149): avc: denied { open } for pid=3347 comm="RenderThread" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   24.367032] type=1400 audit(1617882696.200:149): avc: denied { open } for pid=3347 comm="RenderThread" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   24.367103] type=1400 audit(1617882696.200:150): avc: denied { getattr } for pid=3347 comm="RenderThread" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk1p17" ino=761 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[   24.393868] audit: audit_lost=86 audit_rate_limit=5 audit_backlog_limit=64
[   24.393875] audit: rate limit exceeded
[   34.085281] type=1400 audit(1617882698.996:161): avc: denied { read } for pid=2967 comm="HwBinder:2967_2" scontext=u:r:hdmicecd:s0 tcontext=u:r:hdmicecd:s0 tclass=netlink_kobject_uevent_socket permissive=1
[   34.085309] type=1400 audit(1617882705.920:162): avc: denied { read } for pid=2984 comm="memtrack@1.0-se" name="vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   34.085420] type=1400 audit(1617882705.920:162): avc: denied { read } for pid=2984 comm="memtrack@1.0-se" name="vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   34.085434] type=1400 audit(1617882705.920:163): avc: denied { open } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   34.085502] type=1400 audit(1617882705.920:163): avc: denied { open } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1
[   34.085516] type=1400 audit(1617882705.920:164): avc: denied { getattr } for pid=2984 comm="memtrack@1.0-se" path="/sys/kernel/debug/ion/heaps/vmalloc_ion" dev="debugfs" ino=3149 scontext=u:r:hal_memtrack_default:s0 tcontext=u:object_r:debugfs:s0 tclass=file permissive=1

User avatar
joerg
Posts: 1348
Joined: Tue Apr 01, 2014 2:14 am
languages_spoken: german, english, español
ODROIDs: C1, C1+, C2, N1, N2, C4
Location: Germany
Has thanked: 86 times
Been thanked: 197 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by joerg »

OK. There is no hint that the driver was loaded. I think, if you made it as loadable module, you need to take the log with dmesg after insmod the kernel module.
There should be some message as printk("SiLead GSL3675/GSLx680 Capacitive Touch Driver\n"); in gsl_ts_probe.
If it fails, you can add some more printk messages to the probe function, to get information where it fails.

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

joerg wrote:
Fri Apr 09, 2021 11:19 pm
OK. There is no hint that the driver was loaded. I think, if you made it as loadable module, you need to take the log with dmesg after insmod the kernel module.
There should be some message as printk("SiLead GSL3675/GSLx680 Capacitive Touch Driver\n"); in gsl_ts_probe.
If it fails, you can add some more printk messages to the probe function, to get information where it fails.
I loaded the module, but the only outcome was:

Code: Select all

[  180.591795] type=1400 audit(1613718539.912:247): avc: denied { getattr } for pid=2970 comm="Binder:2970_3" path="/vendor/lib64/hw/gralloc.odroidc4.so" dev="mmcblk0p17" ino=921 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1
[  180.591830] type=1400 audit(1613718576.348:248): avc: denied { module_load } for pid=4407 comm="insmod" path="/storage/emulated/0/gslx680_ds.ko" dev="sdcardfs" ino=1686 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
So I guess the dts file is wrong.
Here is how the touchscreen is connected to the expansion connectors:
Image

User avatar
joerg
Posts: 1348
Joined: Tue Apr 01, 2014 2:14 am
languages_spoken: german, english, español
ODROIDs: C1, C1+, C2, N1, N2, C4
Location: Germany
Has thanked: 86 times
Been thanked: 197 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by joerg »

avc: denied comes from selinux, but as the system is permissive it does nothing, it only reports.
These users thanked the author joerg for the post:
RFLX (Mon Apr 12, 2021 10:43 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

joerg wrote:
Mon Apr 12, 2021 10:39 pm
avc: denied comes from selinux, but as the system is permissive it does nothing, it only reports.
So...?

Also the wiring is (with the numbers from the picture in the post above):
1 -> VDD
5 -> SDA (I2C data line)
3-> SCL (I2C clock line)
6-> GND
13-> RST
15-> INT (Interrupt)

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Mon Apr 12, 2021 10:43 pm
joerg wrote:
Mon Apr 12, 2021 10:39 pm
avc: denied comes from selinux, but as the system is permissive it does nothing, it only reports.
So...?

Also the wiring is (with the numbers from the picture in the post above):
1 -> VDD
5 -> SDA (I2C data line)
3-> SCL (I2C clock line)
6-> GND
13-> RST
15-> INT (Interrupt)
If your touch screen is connected to pin #3 / #5 and it's detected with i2cdetect -y 0, target = <&i2c3> seems to be wrong. It should be target = <&i2c2>. Also there is no gpio1, must use gpio.
These users thanked the author tobetter for the post:
RFLX (Tue Apr 13, 2021 3:48 am)

User avatar
joerg
Posts: 1348
Joined: Tue Apr 01, 2014 2:14 am
languages_spoken: german, english, español
ODROIDs: C1, C1+, C2, N1, N2, C4
Location: Germany
Has thanked: 86 times
Been thanked: 197 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by joerg »

I wonder that you don't have more messages.
Have you tried to rmmod the module and insmod it again?

Code: Select all

rmmod gslx680_ds
insmod gslx680_ds.ko
And then again look for log with dmesg.
Sadly I don't have a touchscreen like this to test it by myself.
These users thanked the author joerg for the post:
RFLX (Tue Apr 13, 2021 3:48 am)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

joerg wrote:
Tue Apr 13, 2021 12:22 am
I wonder that you don't have more messages.
Have you tried to rmmod the module and insmod it again?

Code: Select all

rmmod gslx680_ds
insmod gslx680_ds.ko
And then again look for log with dmesg.
Sadly I don't have a touchscreen like this to test it by myself.
Still really nothing except the denied message.

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Mon Apr 12, 2021 11:59 pm
RFLX wrote:
Mon Apr 12, 2021 10:43 pm
joerg wrote:
Mon Apr 12, 2021 10:39 pm
avc: denied comes from selinux, but as the system is permissive it does nothing, it only reports.
So...?

Also the wiring is (with the numbers from the picture in the post above):
1 -> VDD
5 -> SDA (I2C data line)
3-> SCL (I2C clock line)
6-> GND
13-> RST
15-> INT (Interrupt)
If your touch screen is connected to pin #3 / #5 and it's detected with i2cdetect -y 0, target = <&i2c3> seems to be wrong. It should be target = <&i2c2>. Also there is no gpio1, must use gpio.
Oh man, thank you! Will try that now.

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Mon Apr 12, 2021 11:59 pm
RFLX wrote:
Mon Apr 12, 2021 10:43 pm
joerg wrote:
Mon Apr 12, 2021 10:39 pm
avc: denied comes from selinux, but as the system is permissive it does nothing, it only reports.
So...?

Also the wiring is (with the numbers from the picture in the post above):
1 -> VDD
5 -> SDA (I2C data line)
3-> SCL (I2C clock line)
6-> GND
13-> RST
15-> INT (Interrupt)
If your touch screen is connected to pin #3 / #5 and it's detected with i2cdetect -y 0, target = <&i2c3> seems to be wrong. It should be target = <&i2c2>. Also there is no gpio1, must use gpio.
Thank you very much!
Good News!
When I load the kernel, the probe function is now executing.

Code: Select all

[   50.323987] SiLead GSL3675/GSLx680 Capacitive Touch Driver
[   50.323998] gslX680 0-0040: no IRQ?
[   50.324061] type=1400 audit(1618400385.996:168): avc: denied { module_load } for pid=4199 comm="insmod" path="/storage/emulated/0/gslx680_ds.ko" dev="sdcardfs" ino=1314 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
[   50.324072] gslX680: probe of 0-0040 failed with error -22

Do I have to set the interrupts in the dts file?
I can't find any

Code: Select all

gpiod_get_
calls in the code, neither I see where in the gsl_ts struct irq is supposed to be initialized.
https://github.com/hansiglaser/linux_ke ... ds.c#L1152

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Thu Apr 15, 2021 4:36 pm
Thank you very much!
Good News!
When I load the kernel, the probe function is now executing.

Code: Select all

[   50.323987] SiLead GSL3675/GSLx680 Capacitive Touch Driver
[   50.323998] gslX680 0-0040: no IRQ?
[   50.324061] type=1400 audit(1618400385.996:168): avc: denied { module_load } for pid=4199 comm="insmod" path="/storage/emulated/0/gslx680_ds.ko" dev="sdcardfs" ino=1314 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
[   50.324072] gslX680: probe of 0-0040 failed with error -22

Do I have to set the interrupts in the dts file?
I can't find any

Code: Select all

gpiod_get_
calls in the code, neither I see where in the gsl_ts struct irq is supposed to be initialized.
https://github.com/hansiglaser/linux_ke ... ds.c#L1152
Congratulation!! Good progress...
Your touch screen provide interrupt signal through GPIO #15, so you must define it properly so that gsl_ts_irq() can be called.
https://github.com/hansiglaser/linux_ke ... _ds.c#L981

But what I doubt is that client-irq should not be used but ts->irq must have the proper IRQ number and it has to be transformed from dedicated GPIO interrupted which is GPIOX_7 for ODROID-C4. So let me share another codes for IRQ input.
https://github.com/hardkernel/linux/blo ... 650.c#L396
https://github.com/hardkernel/linux/blo ... c1.dts#L28
These users thanked the author tobetter for the post:
RFLX (Fri Apr 16, 2021 4:54 pm)

RFLX
Posts: 14
Joined: Sun Mar 21, 2021 8:30 pm
languages_spoken: english german
ODROIDs: C4
Has thanked: 12 times
Been thanked: 0
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by RFLX »

tobetter wrote:
Thu Apr 15, 2021 6:45 pm
RFLX wrote:
Thu Apr 15, 2021 4:36 pm
Thank you very much!
Good News!
When I load the kernel, the probe function is now executing.

Code: Select all

[   50.323987] SiLead GSL3675/GSLx680 Capacitive Touch Driver
[   50.323998] gslX680 0-0040: no IRQ?
[   50.324061] type=1400 audit(1618400385.996:168): avc: denied { module_load } for pid=4199 comm="insmod" path="/storage/emulated/0/gslx680_ds.ko" dev="sdcardfs" ino=1314 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
[   50.324072] gslX680: probe of 0-0040 failed with error -22

Do I have to set the interrupts in the dts file?
I can't find any

Code: Select all

gpiod_get_
calls in the code, neither I see where in the gsl_ts struct irq is supposed to be initialized.
https://github.com/hansiglaser/linux_ke ... ds.c#L1152
Congratulation!! Good progress...
Your touch screen provide interrupt signal through GPIO #15, so you must define it properly so that gsl_ts_irq() can be called.
https://github.com/hansiglaser/linux_ke ... _ds.c#L981

But what I doubt is that client-irq should not be used but ts->irq must have the proper IRQ number and it has to be transformed from dedicated GPIO interrupted which is GPIOX_7 for ODROID-C4. So let me share another codes for IRQ input.
https://github.com/hardkernel/linux/blo ... 650.c#L396
https://github.com/hardkernel/linux/blo ... c1.dts#L28
Hey there!
My dts file is now looking like:

Code: Select all

&i2c2 {
	clock-frequency = <100000>
        status = "okay";
        touchscreen: gslx680@40 {
                compatible = "silead,gslx680";
                reg = <0x40>;
                interrupt-parent = <&gpio>;
                interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
		gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
        };
};
Do I have to change the code?
Because this repo was working on a udoo without changing anything in the code, so it should get the right IRQ pin from somewhere?

User avatar
tobetter
Posts: 7744
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: Many
Location: Paju, South Korea
Has thanked: 428 times
Been thanked: 1190 times
Contact:

Re: Install driver for Silead Capacitive Touchscreen

Post by tobetter »

RFLX wrote:
Fri Apr 16, 2021 5:07 pm
tobetter wrote:
Thu Apr 15, 2021 6:45 pm
RFLX wrote:
Thu Apr 15, 2021 4:36 pm
Thank you very much!
Good News!
When I load the kernel, the probe function is now executing.

Code: Select all

[   50.323987] SiLead GSL3675/GSLx680 Capacitive Touch Driver
[   50.323998] gslX680 0-0040: no IRQ?
[   50.324061] type=1400 audit(1618400385.996:168): avc: denied { module_load } for pid=4199 comm="insmod" path="/storage/emulated/0/gslx680_ds.ko" dev="sdcardfs" ino=1314 scontext=u:r:su:s0 tcontext=u:object_r:sdcardfs:s0 tclass=system permissive=1
[   50.324072] gslX680: probe of 0-0040 failed with error -22

Do I have to set the interrupts in the dts file?
I can't find any

Code: Select all

gpiod_get_
calls in the code, neither I see where in the gsl_ts struct irq is supposed to be initialized.
https://github.com/hansiglaser/linux_ke ... ds.c#L1152
Congratulation!! Good progress...
Your touch screen provide interrupt signal through GPIO #15, so you must define it properly so that gsl_ts_irq() can be called.
https://github.com/hansiglaser/linux_ke ... _ds.c#L981

But what I doubt is that client-irq should not be used but ts->irq must have the proper IRQ number and it has to be transformed from dedicated GPIO interrupted which is GPIOX_7 for ODROID-C4. So let me share another codes for IRQ input.
https://github.com/hardkernel/linux/blo ... 650.c#L396
https://github.com/hardkernel/linux/blo ... c1.dts#L28
Hey there!
My dts file is now looking like:

Code: Select all

&i2c2 {
	clock-frequency = <100000>
        status = "okay";
        touchscreen: gslx680@40 {
                compatible = "silead,gslx680";
                reg = <0x40>;
                interrupt-parent = <&gpio>;
                interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
		gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
        };
};
Do I have to change the code?
Because this repo was working on a udoo without changing anything in the code, so it should get the right IRQ pin from somewhere?
I think you do not need these two lines which is not compatible with ODROID-C4 Linux kernel.

Code: Select all

interrupt-parent = <&gpio>;
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
Also, you have to modify the line gpios = <&gpio 5 GPIO_ACTIVE_LOW>; to gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>; I guess.
In the driver, in order to get the IRQ number associated with GPIOX_7, you will add this line and a bit of changes in your driver.
https://github.com/hardkernel/linux/blo ... 650.c#L379
https://github.com/hardkernel/linux/blo ... 650.c#L396
These users thanked the author tobetter for the post:
RFLX (Fri Apr 16, 2021 5:27 pm)

Post Reply

Return to “Android”

Who is online

Users browsing this forum: No registered users and 1 guest