Skip to content

Commit

Permalink
ARM64/dts: alioth: Fix rear camera eeprom entry
Browse files Browse the repository at this point in the history
Mismatched configuration leading to kernel crash when powering down eeprom.
Conclusion taken by comparing the compiled dtbo (which is then decompiled)
and decompiled dtbo from MIUI V12.5.1.0.RKHMIXM.

  [    9.920081] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000023
  [    9.920090] Mem abort info:
  [    9.920092]   ESR = 0x96000005
  [    9.920095]   Exception class = DABT (current EL), IL = 32 bits
  [    9.920097]   SET = 0, FnV = 0
  [    9.920099]   EA = 0, S1PTW = 0
  [    9.920101] Data abort info:
  [    9.920103]   ISV = 0, ISS = 0x00000005
  [    9.920106]   CM = 0, WnR = 0
  [    9.920109] user pgtable: 4k pages, 39-bit VAs, pgdp = 00000000fd044d25
  [    9.920111] [0000000000000023] pgd=0000000000000000, pud=0000000000000000
  [    9.920116] Internal error: Oops: 96000005 [#1] PREEMPT SMP
  [    9.920119] Modules linked in: msm_11ad_proxy
  [    9.920123] Process android.hardwar (pid: 878, stack limit = 0x00000000c84556d2)
  [    9.920127] CPU: 4 PID: 878 Comm: android.hardwar Tainted: G S                4.19.113-lineageos-g74fb848f9-dirty #12
  [    9.920131] Hardware name: Qualcomm Technologies, Inc. xiaomi alioth (DT)
  [    9.920134] pstate: 80400005 (Nzcv daif +PAN -UAO)
  [    9.920143] pc : cam_sensor_util_power_down+0x1fc/0x51c
  [    9.920146] lr : cam_sensor_util_power_down+0xfc/0x51c
  [    9.920148] sp : ffffff800ea8ba30
  [    9.920150] x29: ffffff800ea8ba50 x28: fffffffadc938000
  [    9.920153] x27: 0000000000000000 x26: 0000000000000068
  [    9.920156] x25: ffffffa24975b305 x24: 0000000000000000
  [    9.920159] x23: ffffffa24975b28d x22: 0000000000000000
  [    9.920161] x21: fffffffadc938000 x20: ffffffa24975af59
  [    9.920164] x19: fffffffbe23ec490 x18: 000000000000006c
  [    9.920166] x17: 00000000000a51d8 x16: 0000000000000000
  [    9.920169] x15: 0000000000000000 x14: 000000000000005c
  [    9.920171] x13: ffffff800ea8ba30 x12: ffffff800ea8b5b8
  [    9.920174] x11: ffffff800ea8b590 x10: ffffff80ffffffe0
  [    9.920176] x9 : 0000000000000009 x8 : 0000000000000009
  [    9.920178] x7 : 0000000000000000 x6 : fffffffbffa84dc1
  [    9.920181] x5 : 0000000000000003 x4 : 0000000000000009
  [    9.920183] x3 : ffffffa24975af59 x2 : 00000000000007a9
  [    9.920186] x1 : ffffffa24975b28d x0 : 0000000000000020
  [    9.920189] Call trace:
  [    9.920192]  cam_sensor_util_power_down+0x1fc/0x51c
  [    9.920196]  cam_eeprom_power_down+0x28/0xd8
  [    9.920199]  cam_eeprom_driver_cmd+0x1708/0x178c
  [    9.920202]  cam_eeprom_subdev_ioctl+0x24/0x38
  [    9.920207]  subdev_do_ioctl_lock+0x738/0xb94
  [    9.920210]  video_usercopy+0x364/0x6ac
  [    9.920212]  subdev_ioctl+0x14/0x1c
  [    9.920215]  v4l2_ioctl+0x50/0x5c
  [    9.920219]  do_vfs_ioctl+0x694/0xf68
  [    9.920221]  __arm64_sys_ioctl+0x70/0x98
  [    9.920225]  el0_svc_common+0x98/0x148
  [    9.920228]  el0_svc_handler+0x60/0x78
  [    9.920231]  el0_svc+0x8/0xc
  [    9.920234] Code: 51002509 7100113f 54000482 8b0802c9 (39406929)
  [    9.920237] ---[ end trace 728273a38e93d148 ]---
  [    9.920246] Kernel panic - not syncing: Fatal exception

Signed-off-by: Albert I <kras@raphielgang.org>
Change-Id: I3c316b2be0656762cd46484bc41c181d5a53de19
  • Loading branch information
krasCGQ authored and SahilSonar committed Jul 16, 2021
1 parent 4d5d3fb commit 097376d
Showing 1 changed file with 19 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,28 @@
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vio-supply = <&pm8150a_l5>;
regulator-names = "cam_vio";
cam_vana-supply = <&L7P>; // AVDD2.9
cam_v_custom1-supply = <&L6P>; // AVDD1.8
cam_vdig-supply = <&L2P>;
cam_clk-supply = <&titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_v_custom1", "cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000>;
rgltr-max-voltage = <1800000>;
rgltr-load-current = <120000>;
rgltr-min-voltage = <1800000 2900000 1800000 1100000 0>;
rgltr-max-voltage = <1800000 2900000 1800000 1100000 0>;
rgltr-load-current = <120000 180000 80000 1200000 0>;
gpio-no-mux = <0>;
gpios = <&tlmm 94 0>, <&tlmm 93 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0", "CAM_RESET0";
cci-master = <0>;
status = "ok";
use-shared-clk;
clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "turbo";
clock-rates = <19200000>;
};
/* ALIOTH Macro eeprom */
eeprom_macro: qcom,eeprom@3 {
Expand Down

0 comments on commit 097376d

Please sign in to comment.