So, I successfully last night, parted the core bits out of ts_wdt.c and make ts-mcu-core.c. This is a multi-function device, and serves to provide a shared channel for the two drivers that’ll use it.
Tonight, I took a stab at writing the PSU part of it. Suffice to say, I’ve got work to do:
[ 158.712960] Unable to handle kernel NULL pointer dereference at virtual address 00000005 [ 158.721328] pgd = c3854000 [ 158.724089] [00000005] *pgd=4384f831, *pte=00000000, *ppte=00000000 [ 158.730629] Internal error: Oops: 1 [#3] ARM [ 158.734947] Modules linked in: 8021q garp mrp stp llc nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables xt_tcpudp nf_conntrack_ipv6 nf_defrag_ipv6 xt_conntrack nf_conntrack ip6table_filter ip6_tables x_tables flexcan can_dev [ 158.755812] CPU: 0 PID: 2059 Comm: cat Tainted: G D 4.14.67-vrt-ts7670+ #3 [ 158.763840] Hardware name: Freescale MXS (Device Tree) [ 158.769008] task: c68f3a20 task.stack: c3846000 [ 158.773598] PC is at ts_mcu_transfer+0x1c/0x48 [ 158.778073] LR is at 0x3 [ 158.780630] pc : [] lr : [<00000003>] psr: 60000013 [ 158.786918] sp : c3847e44 ip : 00000000 fp : 014000c0 [ 158.792165] r10: c5035000 r9 : c5305900 r8 : c777b428 [ 158.797412] r7 : c0a7fa80 r6 : c777b400 r5 : c5035000 r4 : c3847e6c [ 158.803961] r3 : c3847e58 r2 : 00000001 r1 : c3847e4c r0 : c07b8c68 [ 158.810512] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none [ 158.817671] Control: 0005317f Table: 43854000 DAC: 00000051 [ 158.823440] Process cat (pid: 2059, stack limit = 0xc3846190) [ 158.829212] Stack: (0xc3847e44 to 0xc3848000) [ 158.833611] 7e40: c05bd150 00000001 00010000 00000004 c3847e48 00000150 c5035000 [ 158.841833] 7e60: c777b420 c05bcaa4 c4f70c60 c777e070 c0a7fa80 c05bca20 00000fff c07ad4b0 [ 158.850051] 7e80: c777b428 c04e46dc c4f52980 00001000 00000fff c01b1994 c4f52980 c4f70c60 [ 158.858268] 7ea0: c3847ec8 ffffe000 00000000 c3847f88 00000001 c0164eac c3847fb0 c4f529b0 [ 158.866487] 7ec0: 00020000 b6e3d000 00000000 00000000 c4f73f70 00000800 00000000 c01b0f60 [ 158.874703] 7ee0: 00020000 c4f70c60 ffffe000 c3847f88 00000000 00000000 00000000 c013eb84 [ 158.882918] 7f00: 000291ac 00000000 00000000 c0009344 00000077 b6e3c000 00000022 00000022 [ 158.891135] 7f20: c686bdc0 c0117838 000b6e3c c3847f80 00022000 c686be14 b6e3c000 00000000 [ 158.899354] 7f40: 00000000 00022000 b6e3d000 00020000 c4f70c60 ffffe000 c3847f88 c013ed0c [ 158.907571] 7f60: 00000022 00000000 000b6e3c c4f70c60 c4f70c60 b6e3d000 00020000 c000a9e4 [ 158.915786] 7f80: c3846000 c013f2d8 00000000 00000000 00000000 00000000 00000000 00000000 [ 158.924002] 7fa0: 00000003 c000a820 00000000 00000000 00000003 b6e3d000 00020000 00000000 [ 158.932217] 7fc0: 00000000 00000000 00000000 00000003 00020000 00000000 00000001 00000000 [ 158.940434] 7fe0: be8a62c0 be8a62ac b6eb77c4 b6eb6b9c 60000010 00000003 00000000 00000000 [ 158.948691] [] (ts_mcu_transfer) from [] (ts_psu_get_prop+0x38/0xb0) [ 158.956847] [] (ts_psu_get_prop) from [] (power_supply_show_property+0x84/0x220) [ 158.966036] [] (power_supply_show_property) from [] (dev_attr_show+0x1c/0x48) [ 158.974974] [] (dev_attr_show) from [] (sysfs_kf_seq_show+0x84/0xf0) [ 158.983129] [] (sysfs_kf_seq_show) from [] (seq_read+0xcc/0x4f4) [ 158.990930] [] (seq_read) from [] (__vfs_read+0x1c/0x11c) [ 158.998117] [] (__vfs_read) from [] (vfs_read+0x88/0x158) [ 159.005304] [] (vfs_read) from [] (SyS_read+0x3c/0x90) [ 159.012232] [] (SyS_read) from [] (ret_fast_syscall+0x0/0x28) [ 159.019766] Code: e52de004 e281300c e590e004 e25cc001 (e1dee0b2) [ 159.026278] ---[ end trace 2807dc313991fd87 ]---
The good news is the machine didn’t crash.c
Recent Comments