Hello,
I'm trying to start-up chromium on an i.MX8m mini-based system.
I built a Linux distro with Yocto and the meta-imx layers, version langdale.I can compile chromium-ozone-wayland version 101.0.4951.54, but the issue is to start it on the device.
First, I start weston with
/usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so
and I see the weston desktop, from where I can open weston-terminal (or example).
Then I start chromium with
XDG_RUNTIME_DIR=/run/user/0/ WAYLAND_DISPLAY=wayland-1 WESTON_USER=root WAYLAND_DEBUG=1 chromium --no-sandbox --disable-features=VizDisplayCompositor --in-process-gpu --disable-gpu-rasterization --enable-features=UseOzonePlatform --ozone-platform=wayland chrome://gpu &
Chromium seems to start, because I get the following output
[4154121.061] -> wl_display@1.get_registry(new id wl_registry@2)
[4154121.949] -> wl_display@1.sync(new id wl_callback@3)
[4154122.315] wl_display@1.delete_id(3)
[4154122.367] wl_registry@2.global(1, "wl_compositor", 5)
[4154122.404] -> wl_registry@2.bind(1, "wl_compositor", 4, new id [unknown]@4)
[4154122.462] wl_registry@2.global(2, "wl_subcompositor", 1)
[4154122.494] -> wl_registry@2.bind(2, "wl_subcompositor", 1, new id [unknown]@5)
[4154122.525] wl_registry@2.global(3, "wp_viewporter", 1)
[4154122.557] -> wl_registry@2.bind(3, "wp_viewporter", 1, new id [unknown]@6)
[4154122.588] wl_registry@2.global(4, "zxdg_output_manager_v1", 2)
[4154122.621] -> wl_registry@2.bind(4, "zxdg_output_manager_v1", 2, new id [unknown]@7)
[4154122.652] wl_registry@2.global(5, "wp_presentation", 1)
[4154122.681] -> wl_registry@2.bind(5, "wp_presentation", 1, new id [unknown]@8)
[4154122.713] wl_registry@2.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[4154122.784] wl_registry@2.global(7, "zwp_alpha_compositing_v1", 1)
[4154122.823] wl_registry@2.global(8, "zwp_relative_pointer_manager_v1", 1)
[4154122.862] -> wl_registry@2.bind(8, "zwp_relative_pointer_manager_v1", 1, new id [unknown]@9)
[4154122.895] wl_registry@2.global(9, "zwp_pointer_constraints_v1", 1)
[4154122.925] -> wl_registry@2.bind(9, "zwp_pointer_constraints_v1", 1, new id [unknown]@10)
[4154122.964] wl_registry@2.global(10, "zwp_input_timestamps_manager_v1", 1)
[4154122.994] wl_registry@2.global(11, "wl_data_device_manager", 3)
[4154123.364] -> wl_registry@2.bind(11, "wl_data_device_manager", 3, new id [unknown]@11)
[4154123.405] wl_registry@2.global(12, "wl_shm", 1)
[4154123.438] -> wl_registry@2.bind(12, "wl_shm", 1, new id [unknown]@12)
[4154123.469] wl_registry@2.global(13, "weston_touch_calibration", 1)
[4154123.499] wl_registry@2.global(14, "wl_viv", 1)
[4154123.528] wl_registry@2.global(15, "wl_drm", 2)
[4154123.557] -> wl_registry@2.bind(15, "wl_drm", 2, new id [unknown]@13)
[4154123.589] -> wl_display@1.sync(new id wl_callback@14)
[4154123.630] wl_registry@2.global(16, "wl_seat", 7)
[4154123.744] -> wl_registry@2.bind(16, "wl_seat", 5, new id [unknown]@15)
[4154123.781] -> wl_data_device_manager@11.get_data_device(new id wl_data_device@16, wl_seat@15)
[4154123.839] wl_registry@2.global(17, "zwp_linux_dmabuf_v1", 4)
[4154123.913] -> wl_registry@2.bind(17, "zwp_linux_dmabuf_v1", 3, new id [unknown]@17)
[4154123.946] -> wl_display@1.sync(new id wl_callback@18)
[4154123.975] wl_registry@2.global(18, "weston_direct_display_v1", 1)
[4154124.005] wl_registry@2.global(19, "zwp_linux_explicit_synchronization_v1", 2)
[4154124.036] -> wl_registry@2.bind(19, "zwp_linux_explicit_synchronization_v1", 2, new id [unknown]@19)
[4154124.069] wl_registry@2.global(20, "weston_content_protection", 1)
[4154124.099] wl_registry@2.global(21, "zwp_hdr10_metadata_v1", 1)
[4154124.128] wl_registry@2.global(22, "wl_output", 3)
[4154124.189] -> wl_registry@2.bind(22, "wl_output", 2, new id [unknown]@20)
[4154124.223] -> zxdg_output_manager_v1@7.get_xdg_output(new id zxdg_output_v1@21, wl_output@20)
[4154124.256] wl_registry@2.global(23, "zwp_input_panel_v1", 1)
[4154124.286] wl_registry@2.global(24, "zwp_input_method_v1", 1)
[4154124.315] wl_registry@2.global(25, "zwp_text_input_manager_v1", 1)
[4154124.345] -> wl_registry@2.bind(25, "zwp_text_input_manager_v1", 1, new id [unknown]@22)
[4154124.376] wl_registry@2.global(26, "xdg_wm_base", 5)
[4154124.405] -> wl_registry@2.bind(26, "xdg_wm_base", 3, new id [unknown]@23)
[4154124.482] wl_registry@2.global(27, "weston_desktop_shell", 1)
[4154124.513] wl_registry@2.global(28, "weston_screenshooter", 1)
[4154124.542] wl_callback@3.done(1)
[4154126.524] wl_display@1.delete_id(14)
[4154126.646] wl_display@1.delete_id(18)
[4154126.674] wp_presentation@8.clock_id(1)
[4154126.704] wl_drm@13.device("/dev/dri/card0")
[4154126.830] -> wl_drm@13.authenticate(2)
[4154126.868] -> wl_display@1.sync(new id wl_callback@3)
[4154126.898] wl_drm@13.format(808669761)
[4154126.929] wl_drm@13.format(808669784)
[4154126.955] wl_drm@13.format(808665665)
[4154126.981] wl_drm@13.format(808665688)
[4154127.006] wl_drm@13.format(875713089)
[4154127.019] wl_drm@13.format(875713112)
[4154127.030] wl_drm@13.format(909199186)
[4154127.040] wl_drm@13.format(961959257)
[4154127.048] wl_drm@13.format(825316697)
[4154127.057] wl_drm@13.format(842093913)
[4154127.066] wl_drm@13.format(909202777)
[4154127.075] wl_drm@13.format(875713881)
[4154127.083] wl_drm@13.format(842094158)
[4154127.092] wl_drm@13.format(909203022)
[4154127.102] wl_drm@13.format(1448695129)
[4154127.110] wl_drm@13.capabilities(0)
[4154127.251] wl_callback@14.done(1)
[4154127.266] wl_seat@15.capabilities(6)
[4154127.277] -> wl_seat@15.get_keyboard(new id wl_keyboard@14)
[4154128.391] -> wl_seat@15.get_touch(new id wl_touch@24)
[4154128.419] wl_seat@15.name("default")
[4154128.430] zwp_linux_dmabuf_v1@17.modifier(875713089, 16777215, 4294967295)
[4154128.444] zwp_linux_dmabuf_v1@17.modifier(875713089, 0, 0)
[4154128.456] zwp_linux_dmabuf_v1@17.modifier(875708993, 16777215, 4294967295)
[4154128.467] zwp_linux_dmabuf_v1@17.modifier(875708993, 0, 0)
[4154128.478] zwp_linux_dmabuf_v1@17.modifier(875713112, 16777215, 4294967295)
[4154128.491] zwp_linux_dmabuf_v1@17.modifier(875713112, 0, 0)
[4154128.503] zwp_linux_dmabuf_v1@17.modifier(909199186, 16777215, 4294967295)
[4154128.516] zwp_linux_dmabuf_v1@17.modifier(909199186, 0, 0)
[4154128.528] zwp_linux_dmabuf_[ 148.350870] audit: type=1334 audit(1667920344.264:14): prog-id=13 op=LOAD
v1@17.modifier(1448695129, 16777215, 4294967295)
[4154128.542] zwp_linux_dmabuf_v1@17.modifier(1448695129, 0, 0)
[4154128.554] zwp_linux_dmabuf_v1@17.modif[ 148.370676] audit: type=1334 audit(1667920344.276:15): prog-id=14 op=LOAD
ier(842094158, 16777215, 4294967295)
[4154128.566] zwp_linux_dmabuf_v1@17.modifier(842094158, 0, 0)
[4154128.577] zwp_linux_dmabuf_v1@17.modifier(842093913, 16777215, 4294967295)
[4154128.589] zwp_linux_dmabuf_v1@17.modifier(842093913, 0, 0)
[4154128.601] wl_callback@18.done(1)
[4154128.612] wl_output@20.geometry(0, 0, 72, 72, 0, "unknown", "unknown", 0)
[4154128.630] wl_output@20.scale(1)
[4154128.641] wl_output@20.mode(3, 720, 720, 109191)
[4154128.655] wl_output@20.done()
[4154128.666] zxdg_output_v1@21.logical_position(0, 0)
[4154128.676] zxdg_output_v1@21.logical_size(720, 720)
[4154128.688] zxdg_output_v1@21.name("DSI-1")
[4154128.698] zxdg_output_v1@21.done()
[4154129.668] discarded [unknown]@13.[event 2](0 fd, 8 byte)
[4154129.704] wl_display@1.delete_id(3)
[4154129.726] wl_callback@3.done(1)
[4154129.737] wl_keyboard@14.repeat_info(40, 400)
[4154129.749] wl_keyboard@14.keymap(1, fd 32, 63970)
[4154240.061] -> wl_shm@12.create_pool(new id wl_shm_pool@3, fd 41, 2304)
[4154240.454] -> wl_shm_pool@3.resize(5568)
[4154240.532] -> wl_shm_pool@3.resize(12096)
[4154380.573] -> wl_display@1.get_registry(new id wl_registry@18)
[4154380.626] -> wl_display@1.sync(new id wl_callback@25)
[4154382.090] wl_display@1.delete_id(25)
[4154382.137] wl_registry@18.global(1, "wl_compositor", 5)
[4154382.150] wl_registry@18.global(2, "wl_subcompositor", 1)
[4154382.160] wl_registry@18.global(3, "wp_viewporter", 1)
[4154382.170] wl_registry@18.global(4, "zxdg_output_manager_v1", 2)
[4154382.180] wl_registry@18.global(5, "wp_presentation", 1)
[4154382.190] wl_registry@18.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[4154382.200] wl_registry@18.global(7, "zwp_alpha_compositing_v1", 1)
[4154382.228] wl_registry@18.global(8, "zwp_relative_pointer_manager_v1", 1)
[4154382.239] wl_registry@18.global(9, "zwp_pointer_constraints_v1", 1)
[4154382.248] wl_registry@18.global(10, "zwp_input_timestamps_manager_v1", 1)
[4154382.258] wl_registry@18.global(11, "wl_data_device_manager", 3)
[4154382.268] wl_registry@18.global(12, "wl_shm", 1)
[4154382.278] wl_registry@18.global(13, "weston_touch_calibration", 1)
[4154382.287] wl_registry@18.global(14, "wl_viv", 1)
[4154382.301] -> wl_registry@18.bind(14, "wl_viv", 1, new id [unknown]@26)
[4154382.317] wl_registry@18.global(15, "wl_drm", 2)
[4154382.327] wl_registry@18.global(16, "wl_seat", 7)
[4154382.337] wl_registry@18.global(17, "zwp_linux_dmabuf_v1", 4)
[4154382.347] wl_registry@18.global(18, "weston_direct_display_v1", 1)
[4154382.356] wl_registry@18.global(19, "zwp_linux_explicit_synchronization_v1", 2)
[4154382.439] -> wl_registry@18.bind(19, "zwp_linux_explicit_synchronization_v1", 1, new id [unknown]@27)
[4154382.458] wl_registry@18.global(20, "weston_content_protection", 1)
[4154382.469] wl_registry@18.global(21, "zwp_hdr10_metadata_v1", 1)
[4154382.478] wl_registry@18.global(22, "wl_output", 3)
[4154382.488] wl_registry@18.global(23, "zwp_input_panel_v1", 1)
[4154382.498] wl_registry@18.global(24, "zwp_input_method_v1", 1)
[4154382.507] wl_registry@18.global(25, "zwp_text_input_manager_v1", 1)
[4154382.519] wl_registry@18.global(26, "xdg_wm_base", 5)
[4154382.529] wl_registry@18.global(27, "weston_desktop_shell", 1)
[4154382.538] wl_registry@18.global(28, "weston_screenshooter", 1)
[4154382.548] wl_callback@25.done(1)
[4155225.055] -> wl_compositor@4.create_surface(new id wl_surface@25)
[4155225.229] -> wp_viewporter@6.get_viewport(new id wp_viewport@28, wl_surface@25)
[4155225.395] -> wl_compositor@4.create_surface(new id wl_surface@29)
[4155225.436] -> wp_viewporter@6.get_viewport(new id wp_viewport@30, wl_surface@29)
[4155225.574] -> wl_surface@25.set_buffer_scale(1)
[4155225.613] -> wp_viewport@28.set_source(-1.00000000, -1.00000000, -1.00000000, -1.00000000)
[4155225.654] -> wp_viewport@28.set_destination(-1, -1)
[381:381:1108/151224.894690:ERROR:cursor_loader.cc(116)] Failed to load a platform cursor of type kNull
[4155448.138] -> wl_surface@25.attach(nil, 0, 0)
[4155448.272] -> wl_surface@25.commit()
[4155448.307] -> xdg_wm_base@23.get_xdg_surface(new id xdg_surface@31, wl_surface@25)
[4155448.346] -> xdg_surface@31.get_toplevel(new id xdg_toplevel@32)
[4155448.426] -> xdg_toplevel@32.set_app_id("chromium-browser")
[4155448.459] -> xdg_toplevel@32.set_title("New Tab - Chromium")
[4155449.119] -> xdg_toplevel@32.set_min_size(532, 121)
[4155449.168] -> xdg_toplevel@32.set_max_size(0, 0)
[4155449.201] -> xdg_toplevel@32.unset_maximized()
[4155449.447] -> xdg_toplevel@32.set_min_size(532, 121)
[4155449.481] -> xdg_toplevel@32.set_max_size(0, 0)
[4155449.515] -> wl_surface@25.commit()
[4155523.967] xdg_toplevel@32.configure(0, 0, array[0])
[4155524.663] xdg_surface@31.configure(2)
[4155525.585] -> xdg_toplevel@32.set_min_size(532, 164)
[4155529.560] -> xdg_toplevel@32.set_max_size(0, 0)
[ 149.501397] audit: type=1334 audit(1667920345.416:16): prog-id=15 op=LOAD
[ 149.518026] audit: type=1334 audit(1667920345.428:17): prog-id=16 op=LOAD
[ 149.694732] audit: type=1701 audit(1667920345.608:18): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=434 comm="chromium-bin" exe="/usr/lib/chromium/chromium-bin" sig=4 res=1
Then the display freeze to the state it was before I typed the chromium command (so weston shell, with 1 terminal opened on it). No chromium window shown.
The only way to unblock the system is to reboot.
Has anyone experience with this ?
Following this issue, I continued to make my researches.
It turns out that I have a more general GPU problem. The GPU seems to crash and gives this debug info:
[ 33.400449] **************************
[ 33.410773] *** GPU STATE DUMP ***
[ 33.414541] **************************
[ 33.425562] axi = 0x00000050
[ 33.434749] idle = 0x7FFFFFFE
[ 33.438271] FE not idle
[ 33.446763] AQ_HI_CLOCK_CONTROL = 0x00040100
[ 33.458773] DMA appears to be stuck at this address:
[ 33.466761] 0x18402090
[ 33.469487] dmaLow = 0x00000000
[ 33.481367] dmaHigh = 0x00000004
[ 33.489663] dmaState = 0x00000000
[ 33.498761] command state = 0 (PAR_IDLE_ST)
[ 33.508865] command DMA state = 0 (CMD_IDLE_ST)
[ 33.522735] command fetch state = 0 (FET_IDLE_ST)
[ 33.530752] DMA request state = 0 (REQ_IDLE_ST)
[ 33.542731] cal state = 0 (CAL_IDLE_ST)
[ 33.554721] VE request state = 0 (VER_IDLE_ST)
The above happened after starting gputop from command line.
How can this be solved ?
Hello @bdlr2,
I hope you are doing well.
Please accept my apology for the delayed response.
->One can check if it is caused by GPU supply,
-The GPU is powered by a dedicated power VDD_GPU. In order to support DVFS for both high-performance and low-power use cases, it should support the following operating range:
• 0.8V (0.8V +/-10%), up to 800MHz
• 0.9V (0.9V +5%/-10%), up to 1000MHz
In case of if frequency might be a root problem then please refer to this link for reference.
https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Mini-GPU-Frequency-500MHz-How-to-increase/td-p/1...
It appears from the logs you have provided that at the address 0x18402090 GPU cannot fetch the correct command.
can you check the buffer content for the address?
Thanks & Regards,
Sanket Parekh
Hello,
Unfortunately, the result is the same...
Best regards