[Intel-gfx] i915 driver not getting initialized properly with U-boot VESA disabled
Daniel Vetter
daniel at ffwll.ch
Thu Jun 16 21:42:50 UTC 2016
On Wed, Jun 15, 2016 at 10:58:29AM +0200, vinoth eswaran wrote:
> Hello,
>
> I working on an embedded project with Minnowboard Turbot. The goal is
> to have a camera application running as fast as possible (within 2
> sec).
>
> For this, I have replaced the UEFI bootloader with the U-boot (Latest
> git version - uboot-x86). In u-boot I am seeing that the VGA run on
> bios is taking too much time , around 2 sec.
i915.ko can't initialize the hw without the vbios settings stuff up first.
No idea how much additional init code would be required to make it work.
-Daniel
>
> realmode_call(addr + 0x0003, num_dev, 0xffff, 0x0000, 0xffff, 0x0,
> > 0x0); -- This function call takes more time around 2 seconds.
>
> So I had removed the VESA config from u-boot. Now the u-boot boots up
> fast, but I am facing some other issue in the i915 driver Linux
> kernel. It seems that the i915 driver is not getting initialized
> properly. When the Weston compositor tries to run it crashes. I have
> tried to dump the VBIOS using the following commands
>
> echo 1 > /sys/devices/pci0000:00/0000:00:02.0/rom
> cat /sys/devices/pci0000:00/0000:00:02.0/rom
>
> and found that it is unable to access the VBIOS
> i915 0000:00:02.0: Invalid ROM contents
>
> I think that it is due to the fact that VGA bios is not runned by the
> U-boot. Is it possible to run this in linux kernel or any config in
> i915 driver to support this?
>
> or due have any idea to optimize the vga run on bios in u-boot. The
> currrent time taken to run VGA bios in u-boot is unacceptable in my
> case.
>
> Any help on this is much appreciated :)
>
> The logs with drm.debug=0x06 enabled:
> [ 0.218171] calling i915_init+0x0/0x99 @ 1
> [ 0.220432] [drm:i915_dump_device_info] i915 device info: gen=7,
> pciid=0x0f31 rev=0x11
> flags=is_mobile,need_gfx_hws,is_valleyview,has_hotplug,
> [ 0.220566] [drm:i915_gem_gtt_init] GMADR size = 256M
> [ 0.220570] [drm:i915_gem_gtt_init] GTT stolen size = 64M
> [ 0.220574] [drm:i915_gem_gtt_init] ppgtt mode: 1
> [ 0.221964] i915 0000:00:02.0: Invalid ROM contents
> [ 0.227568] [drm:i915_gem_init_stolen] Memory reserved for graphics
> device: 65536K, usable: 65536K
> [ 0.358545] [drm:i915_gem_setup_global_gtt] clearing unused GTT
> space: [0, 7ffff000]
> [ 0.364276] [drm:i915_gem_context_init] HW context support initialized
> [ 0.364289] [drm:i915_gem_object_create_stolen] creating stolen
> object: size=20000
> [ 0.364296] [drm:i915_pages_create_for_stolen] offset=0x0, size=131072
> [ 0.364405] [drm:i915_gem_object_create_stolen] creating stolen
> object: size=20000
> [ 0.364411] [drm:i915_pages_create_for_stolen] offset=0x20000, size=131072
> [ 0.364463] [drm:i915_gem_object_create_stolen] creating stolen
> object: size=20000
> [ 0.364470] [drm:i915_pages_create_for_stolen] offset=0x40000, size=131072
> [ 0.366181] [drm:i915_gem_object_create_stolen_for_preallocated]
> creating preallocated stolen object: stolen_offset=3efa000,
> gtt_offset=ffffffff, size=6000
> [ 0.366189] [drm:i915_pages_create_for_stolen] offset=0x3efa000, size=24576
> [ 0.388566] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 0.452154] [drm] GMBUS [i915 gmbus vga] timed out, falling back to
> bit banging on pin 2
> [ 0.460168] [drm:drm_do_probe_ddc_edid] drm: skipping non-existent
> adapter i915 gmbus vga
> [ 0.484566] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 0.588705] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 0.678697] i915 0000:00:02.0: No connectors reported connected with modes
> [ 0.678750] [drm] Initialized i915 1.6.0 20151010 for 0000:00:02.0 on minor 0
> [ 0.678853] initcall i915_init+0x0/0x99 returned 0 after 449419 usecs
> [ 0.679607] [drm:i915_gem_object_create_stolen] creating stolen
> object: size=300000
> [ 0.679615] [drm:i915_pages_create_for_stolen] offset=0x60000, size=3145728
> [ 0.682422] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
> [ 2.945260] [drm:i915_gem_open]
> [ 3.487206] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 3.507204] [drm:drm_do_probe_ddc_edid] drm: skipping non-existent
> adapter i915 gmbus vga
> [ 3.531477] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 3.635502] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 3.778482] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 3.799069] [drm:drm_do_probe_ddc_edid] drm: skipping non-existent
> adapter i915 gmbus vga
> [ 3.822530] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
> [ 3.926638] [drm:i915_redisable_vga_power_on] Something enabled VGA
> plane, disabling it
>
> Mit Freundlichen Grüßen
> VinothKumar
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the Intel-gfx
mailing list