Using Fedora 12, with the attached xorg.conf, on a Arrandale evaluation plateform , Xorg never start. -- chipset: Arrandale -- system architecture: i686 -- xf86-video-intel/xserver/mesa/libdrm version: xorg-x11-drv-intel-2.9.1-1.fc12, xserver X.Org X Server 1.7.1 -- kernel version: 2.6.31.5-127.fc12.i686.PAE -- Linux distribution: Fedora 12 -- Machine or mobo model: -- Display connector: VGA [root@eval8544 ~]# tail Xorg.0.log (II) intel(0): 0x10000000: end of aperture (II) intel(0): BO memory allocation layout: (II) intel(0): 0x01fff000: start of memory manager (II) intel(0): 0x02020000-0x0231ffff: front buffer (3072 kB) X tiled (II) intel(0): 0x02420000-0x02429fff: HW cursors (40 kB) (II) intel(0): 0x10000000: end of memory manager (WW) intel(0): ESR is 0x00000010, page table error (WW) intel(0): PGTBL_ER is 0x00100000, CS instruction GTT PTE (WW) intel(0): Existing errors found in hardware state. (II) intel(0): Selecting standard 18 bit TMDS pixel format.
Created attachment 31738 [details] xorg.conf provided by Xorg -configure
Created attachment 31739 [details] The complete log
fc12's kernel is missing some fixes for Arrandale, could you try latest 2.6.32? Please attach your dmesg, lspci -nvv output.
lower priority. Any testing news?
Created attachment 32325 [details] dmesg with 2.6.32 kernel
Created attachment 32326 [details] lspci with 2.6.32 kernel
Created attachment 32327 [details] Xorg with 2.6.32 kernel
Sorry about the delay of this answer... I did some tests with 2.6.32 kernel. Would you like to find attached files Xorg.0.log, dmesg and lspci outputs. There is no more warning about memory allocation in the Xorg log nevertheless still no display. Regards.
So, after some more analysis, still with 2.6.32 kernel, Xorg is looping in the following routine, in i830_lvds.c file: static void i830SetLVDSPanelPower(xf86OutputPtr output, Bool on) { I830OutputPrivatePtr intel_output = output->driver_private; struct i830_lvds_priv *dev_priv = intel_output->dev_priv; ScrnInfoPtr pScrn = output->scrn; I830Ptr pI830 = I830PTR(pScrn); uint32_t pp_status; if (on) { /* if we're going from on->on, be aware to current level. */ if ((INREG(PP_CONTROL) & POWER_TARGET_ON) && !dev_priv->dpmsoff) dev_priv->backlight_duty_cycle = dev_priv->get_backlight(output); /* * If we're going from off->on we may need to turn on the backlight. * We should use the saved value whenever possible, but on some * machines 0 is a valid backlight value (due to an external backlight * controller for example), so on them, when turning LVDS back on, * they'll always re-maximize the brightness. */ if (!(INREG(PP_CONTROL) & POWER_TARGET_ON) && dev_priv->backlight_duty_cycle == 0 && pI830->backlight_control_method < BCM_KERNEL) dev_priv->backlight_duty_cycle = dev_priv->backlight_max; OUTREG(PP_CONTROL, INREG(PP_CONTROL) | POWER_TARGET_ON); do { <================ pp_status = INREG(PP_STATUS); <= LOOPING HERE } while ((pp_status & PP_ON) == 0); <================ dev_priv->set_backlight(output, dev_priv->backlight_duty_cycle); dev_priv->dpmsoff = FALSE; } else { /* * Only save the current backlight value if we're going from * on to off. */ if ((INREG(PP_CONTROL) & POWER_TARGET_ON) && !dev_priv->dpmsoff) dev_priv->backlight_duty_cycle = dev_priv->get_backlight(output); dev_priv->set_backlight(output, 0); OUTREG(PP_CONTROL, INREG(PP_CONTROL) & ~POWER_TARGET_ON); do { pp_status = INREG(PP_STATUS); } while (pp_status & PP_ON); dev_priv->dpmsoff = TRUE; } } We do not use a LVDS monitor but a VGA CRT one. I'm looking for the way not to configure LVDS when I'm using a CRT. It seems that using quirk_ignore_lvds routine may be one way but I'm looking for a dynamic way to do this (without re-compile intel module). Is it possible through Xorg options ?
oh, Arrandale has no more user modesetting support in xf86-video-intel, you have to use kernel modesetting from drm/i915 module. Make sure your kernel has CONFIG_DRM_I915 and CONFIG_DRM_I915_KMS enabled.
Created attachment 32341 [details] Xorg log with i915.modeset=1
Created attachment 32342 [details] dmesg output with i915.modeset=1
Far much better with i915.modeset=1 set in kernel command line. Refer to the related attachments. Thanks for the input. I still do not understand why a lvds output is detected on my system (it is a Calpella evaluation platform) because I have only a CRT connected on the VGA port and definetely no LCD display. This other strange thing is related to the following error message in dmesg: [root@eval8544 log]# grep ERROR /tmp/dmesg.okwithmodeset.txt [drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own [drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own Any idea about this ?
I configured xorg.conf to get the LVDS output disabled and it seems to be OK now. Let me know if this is the best way (refer to xorg.conf.VGA attachment) ? I also removed i915.modeset=1 kernel option because it is the default. In the very first kernel parameters command line, I had nomodeset option inheritated from the standard Fedora installation.
Created attachment 32345 [details] xorg.conf with VGA enabled and LVDS disabled
FYI, I went back to 2.6.31.5-127.fc12.i686.PAE kernel which is the "standard" Fedora 12 kernel and it is also working when the kernel modeset are used and with the xorg.conf attached. Regards.
Mobile SDV is supposed to have LVDS, you can also pass 'video=LVDS-1:d' in kernel boot option to disable LVDS output. Close this.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.