msm8916-mainline / linux-mdss-dsi-panel-driver-generator

Generate Linux DRM panel kernel driver based on QCOM MDSS DSI device tree
GNU General Public License v2.0
53 stars 33 forks source link

Parsing dtb file fail at panel node with newer code change-set #14

Closed 99degree closed 2 years ago

99degree commented 2 years ago

With latest code (310f523d28e498b3558203ec2e2089ab52209d55) no longer work. previously 3e9ac4f5119d64df8c0ac95db6a6dfbe8608c78e can do panel extract. test did not gone through all resent changes, no bi-sec info.

Parsing: ../dts/v8000/dtbdump_53.dtb Parsing: sim_video (Simulator video mode dsi panel) Traceback (most recent call last): File "./lmdpdg.py", line 71, in for panel in Panel.find(fdt): File "/root/source/linux-mdss-dsi-panel-driver-generator/panel.py", line 313, in find panel = Panel.parse(fdt, sub) File "/root/source/linux-mdss-dsi-panel-driver-generator/panel.py", line 306, in parse return name and Panel(name.as_str(), fdt, node) File "/root/source/linux-mdss-dsi-panel-driver-generator/panel.py", line 284, in init dsi_ctrl = fdt.node_offset_by_phandle(dsi_ctrl) File "/usr/local/lib/python3.8/dist-packages/libfdt.py", line 509, in node_offset_by_phandle return check_err(fdt_node_offset_by_phandle(self._fdt, phandle), quiet) File "/usr/local/lib/python3.8/dist-packages/libfdt.py", line 132, in check_err raise FdtException(val) libfdt.FdtException: pylibfdt error -6: FDT_ERR_BADPHANDLE

the dtc dis-compiled dts node: qcom,mdss_dsi_sim_video { qcom,mdss-dsi-panel-name = "Simulator video mode dsi panel"; qcom,mdss-dsi-panel-type = "dsi_video_mode"; qcom,mdss-dsi-panel-framerate = <0x3c>; qcom,mdss-dsi-virtual-channel-id = <0x0>; qcom,mdss-dsi-stream = <0x0>; qcom,mdss-dsi-panel-width = <0x280>; qcom,mdss-dsi-panel-height = <0x1e0>; qcom,mdss-dsi-h-front-porch = <0x8>; qcom,mdss-dsi-h-back-porch = <0x8>; qcom,mdss-dsi-h-pulse-width = <0x8>; qcom,mdss-dsi-h-sync-skew = <0x0>; qcom,mdss-dsi-v-back-porch = <0x6>; qcom,mdss-dsi-v-front-porch = <0x6>; qcom,mdss-dsi-v-pulse-width = <0x2>; qcom,mdss-dsi-h-left-border = <0x0>; qcom,mdss-dsi-h-right-border = <0x0>; qcom,mdss-dsi-v-top-border = <0x0>; qcom,mdss-dsi-v-bottom-border = <0x0>; qcom,mdss-dsi-bpp = <0x18>; qcom,mdss-dsi-underflow-color = <0xff>; qcom,mdss-dsi-border-color = <0x0>; qcom,mdss-dsi-on-command = [32 01 00 00 00 00 02 00 00]; qcom,mdss-dsi-off-command = [22 01 00 00 00 00 02 00 00]; qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; qcom,mdss-dsi-h-sync-pulse = <0x0>; qcom,mdss-dsi-traffic-mode = "non_burst_sync_event"; qcom,mdss-dsi-bllp-eof-power-mode; qcom,mdss-dsi-bllp-power-mode; qcom,mdss-dsi-lane-0-state; qcom,mdss-dsi-lane-1-state; qcom,mdss-dsi-lane-2-state; qcom,mdss-dsi-lane-3-state; qcom,mdss-dsi-panel-timings = <0x0 0x0 0x0>; qcom,mdss-dsi-t-clk-post = <0x4>; qcom,mdss-dsi-t-clk-pre = <0x1b>; qcom,mdss-dsi-dma-trigger = "trigger_sw"; qcom,mdss-dsi-mdp-trigger = "none"; qcom,mdss-dsi-reset-sequence = <0x1 0x0 0x0 0x0 0x1 0x0>; qcom,panel-ack-disabled; };

here is log for older change-set: ... Parsing: truly_1080p_cmd (truly 1080p cmd mode dsi panel) Generating: truly_1080p_cmd (truly 1080p cmd mode dsi panel) Parsing: truly_1080p_video (truly 1080p video mode dsi panel) Generating: truly_1080p_video (truly 1080p video mode dsi panel) Parsing: rm67195_amoled_fhd_cmd (rm67195 amoled fhd cmd mode dsi panel) Generating: rm67195_amoled_fhd_cmd (rm67195 amoled fhd cmd mode dsi panel) WARNING: DCS command SET_DISPLAY_OFF with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command SET_DISPLAY_ON with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command NOP with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command SOFT_RESET with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command ENTER_PARTIAL_MODE with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command ENTER_NORMAL_MODE with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command EXIT_INVERT_MODE with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs WARNING: DCS command ENTER_INVERT_MODE with incorrect argument count (expected: 0, is: 1). Consider using --dumb-dcs Parsing: s6d6ft0_tianma_fhd_video (s6d6ff0 tianma fhd video mode dsi panel) Generating: s6d6ft0_tianma_fhd_video (s6d6ff0 tianma fhd video mode dsi panel) WARNING: DCS command WRITE_POWER_SAVE with incorrect argument count (expected: 1, is: 0). Consider using --dumb-dcs Parsing: td4310_huashi_fhd_video (td4310 huashi fhd video mode dsi panel) Generating: td4310_huashi_fhd_video (td4310 huashi fhd video mode dsi panel)

dtbdump_53.dtb.gz