[Intel-gfx] KMS breaks console
Paul Collins
paul at burly.ondioline.org
Tue Feb 3 22:13:35 CET 2009
Jesse Barnes <jbarnes at virtuousgeek.org> writes:
> On Tuesday, February 3, 2009 10:18 am Tino Keitel wrote:
>> On Tue, Feb 03, 2009 at 10:11:54 -0800, Jesse Barnes wrote:
>> > On Tuesday, February 3, 2009 9:51 am Tino Keitel wrote:
>> > > Hi folks,
>> > >
>> > > I just enabled CONFIG_DRM_I915_KMS in 2.6.29-rc3 and now the text
>> > > console is just black. This happens with the 2.6 branch on a Mac mini
>> > > Core Duo with i945GM. Any hints how to solve this?
>> >
>> > You need to enable the framebuffer console and make sure it's loaded.
>>
>> It is:
>>
>> CONFIG_FRAMEBUFFER_CONSOLE=y
>
> Is your machine still running? Can you capture kernel logs with drm debugging
> enabled (just pass 'debug=1' when you modprobe drm)?
I hit what may be the same problem on a Mac Mini Core 2 Duo with 945GM.
After some poking around I saw there's some code in intel_lvds_init
regarding weirdness with the Mac Mini reporting LVDS when there is none,
but the workaround doesn't seem to be active, as the DRM_DEBUG is never
logged (drivers/gpu/drm/i915/intel_lvds.c, line 516ish).
Judging by the X log, the xorg driver has similar workaround:
(II) intel(0): Suspected Mac Mini, ignoring the LVDS
I tried sticking a 'goto failed' near the the top of intel_lvds_init and
then I did get a console, albeit at 800x600 rather than my screen's
native 1680x1050.
Here are two debug=1 logs, the first with vanilla code and the second
with the crippled intel_lvds_init.
[drm] Initialized drm 1.1.0 20060810
[drm:drm_init]
[drm:drm_get_dev]
pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
pci 0000:00:02.0: setting latency timer to 64
[drm:drm_get_minor]
[drm:drm_get_minor] new minor assigned 64
[drm:drm_get_minor]
[drm:drm_get_minor] new minor assigned 0
[drm:i915_init_phys_hws] Enabled hardware status page
[drm:intel_opregion_init] graphic opregion physical addr: 0x0
[drm:intel_opregion_init] ACPI OpRegion not supported!
[drm:drm_agp_bind_pages]
[drm:parse_panel_data] Found panel mode in BIOS VBT tables:
[drm:drm_mode_debug_printmodeline] Modeline 0:"800x600" 0 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:drm_irq_install] irq=16
[drm:intel_modeset_init] 2 display pipes available.
[drm:drm_sysfs_connector_add] adding "VGA-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
i2c-adapter i2c-2: unable to read EDID block.
pci 0000:00:02.0: LVDS-1: no EDID data
[drm:drm_sysfs_connector_add] adding "LVDS-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm:drm_sysfs_connector_add] adding "DVI-D-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm:intel_sdvo_init] SDVOB device VID/DID: 04:AA.03, clock range 25MHz - 165MHz, input 1: Y, input 2: N, output 1: Y, output 2: N
[drm:intel_sdvo_read_byte] i2c transfer returned -6
[drm:intel_sdvo_init] No SDVO device found on SDVOC
[drm:drm_sysfs_connector_add] adding "SVIDEO-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm:drm_helper_probe_single_connector_modes] VGA-1
[drm:drm_helper_probe_single_connector_modes] VGA-1 is disconnected
[drm:drm_helper_probe_single_connector_modes] LVDS-1
i2c-adapter i2c-2: unable to read EDID block.
pci 0000:00:02.0: LVDS-1: no EDID data
[drm:drm_helper_probe_single_connector_modes] Probed modes for LVDS-1
[drm:drm_mode_debug_printmodeline] Modeline 21:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:drm_helper_probe_single_connector_modes] DVI-D-1
[drm:intel_sdvo_detect] SDVO response 1 0
i2c-adapter i2c-3: unable to read EDID block.
pci 0000:00:02.0: DVI-D-1: no EDID data
[drm:drm_helper_probe_single_connector_modes] SVIDEO-1
[drm:drm_vblank_get] enabling vblank on crtc 0, ret: -22
[drm:intel_crtc_mode_set] Mode for pipe A:
[drm:drm_mode_debug_printmodeline] Modeline 0:"NTSC 480i" 0 107520 1280 1368 1496 1712 1024 1027 1034 1104 0x40 0x0
[drm:intel_pipe_set_base] No FB bound
[drm] TV-13: set mode NTSC 480i 0
[drm:intel_tv_detect_type] No TV connection detected
[drm:drm_helper_probe_single_connector_modes] SVIDEO-1 is disconnected
[drm:drm_setup_crtcs]
[drm:drm_enable_connectors] connector 5 enabled? no
[drm:drm_enable_connectors] connector 7 enabled? yes
[drm:drm_enable_connectors] connector 10 enabled? yes
[drm:drm_enable_connectors] connector 12 enabled? no
[drm:drm_target_preferred] looking for preferred mode on connector 7
[drm:drm_target_preferred] found mode 800x600
[drm:drm_target_preferred] looking for preferred mode on connector 10
[drm:drm_target_preferred] found mode none
[drm:drm_setup_crtcs] picking CRTCs for 2048x2048 config
[drm:drm_setup_crtcs] desired mode 800x600 set on crtc 4
[drm:intelfb_probe]
[drm:intelfb_single_fb_probe]
[drm:intelfb_single_fb_probe] creating new fb (console size 800x600, buffer size 800x600)
[drm:drm_agp_bind_pages]
allocated 800x600 fb: 0x00fdf000, bo ffff88006cc61a80
[drm:intelfb_set_par] 800 -1
Console: switching to colour frame buffer device 100x37
[drm:drm_crtc_helper_set_config]
[drm:drm_crtc_helper_set_config] crtc: ffff880077e25800 4 fb: ffff88006cc61780 connectors: ffff880077e25ca8 num_connectors: 1 (x, y) (0, 0)
[drm:drm_crtc_helper_set_config] modes are different
[drm:drm_mode_debug_printmodeline] Modeline 0:"" 0 0 0 0 0 0 0 0 0 0 0x0 0x0
[drm:drm_mode_debug_printmodeline] Modeline 21:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:drm_crtc_helper_set_config] attempting to set mode from userspace
[drm:drm_mode_debug_printmodeline] Modeline 21:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:drm_vblank_get] enabling vblank on crtc 1, ret: -22
[drm:intel_crtc_mode_set] Mode for pipe B:
[drm:drm_mode_debug_printmodeline] Modeline 21:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:intel_pipe_set_base] Writing base 00FDF000 00000000 0 0
[drm] LVDS-8: set mode 800x600 15
fb0: inteldrmfb frame buffer device
registered panic notifier
[drm] Initialized i915 1.6.0 20080730 on minor 0
Crippled intel_lvds_init:
[drm] Initialized drm 1.1.0 20060810
[drm:drm_init]
[drm:drm_get_dev]
pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
pci 0000:00:02.0: setting latency timer to 64
[drm:drm_get_minor]
[drm:drm_get_minor] new minor assigned 64
[drm:drm_get_minor]
[drm:drm_get_minor] new minor assigned 0
[drm:i915_init_phys_hws] Enabled hardware status page
[drm:intel_opregion_init] graphic opregion physical addr: 0x0
[drm:intel_opregion_init] ACPI OpRegion not supported!
[drm:drm_agp_bind_pages]
[drm:parse_panel_data] Found panel mode in BIOS VBT tables:
[drm:drm_mode_debug_printmodeline] Modeline 0:"800x600" 0 40000 800 840 968 1056 600 601 605 628 0x8 0x0
[drm:drm_irq_install] irq=16
[drm:intel_modeset_init] 2 display pipes available.
[drm:drm_sysfs_connector_add] adding "VGA-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm] Skipping LVDS for now.
[drm:intel_lvds_init] No LVDS modes found, disabling.
[drm:drm_sysfs_connector_add] adding "DVI-D-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm:intel_sdvo_init] SDVOB device VID/DID: 04:AA.03, clock range 25MHz - 165MHz, input 1: Y, input 2: N, output 1: Y, output 2: N
[drm:intel_sdvo_read_byte] i2c transfer returned -6
[drm:intel_sdvo_init] No SDVO device found on SDVOC
[drm:drm_sysfs_connector_add] adding "SVIDEO-1" to sysfs
[drm:drm_sysfs_hotplug_event] generating hotplug event
[drm:drm_helper_probe_single_connector_modes] VGA-1
[drm:drm_helper_probe_single_connector_modes] VGA-1 is disconnected
[drm:drm_helper_probe_single_connector_modes] DVI-D-1
[drm:intel_sdvo_detect] SDVO response 1 0
i2c-adapter i2c-2: unable to read EDID block.
pci 0000:00:02.0: DVI-D-1: no EDID data
[drm:drm_helper_probe_single_connector_modes] SVIDEO-1
[drm:drm_vblank_get] enabling vblank on crtc 0, ret: -22
[drm:intel_crtc_mode_set] Mode for pipe A:
[drm:drm_mode_debug_printmodeline] Modeline 0:"NTSC 480i" 0 107520 1280 1368 1496 1712 1024 1027 1034 1104 0x40 0x0
[drm:intel_pipe_set_base] No FB bound
[drm] TV-11: set mode NTSC 480i 0
[drm:intel_tv_detect_type] No TV connection detected
[drm:drm_helper_probe_single_connector_modes] SVIDEO-1 is disconnected
[drm:drm_helper_initial_config] *ERROR* connectors have no modes, using standard modes
[drm:drm_helper_add_std_modes] Adding mode 800x600 to VGA-1
[drm:drm_helper_add_std_modes] Added std modes on VGA-1
[drm:drm_mode_debug_printmodeline] Modeline 19:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:drm_helper_add_std_modes] Adding mode 800x600 to DVI-D-1
[drm:drm_helper_add_std_modes] Added std modes on DVI-D-1
[drm:drm_mode_debug_printmodeline] Modeline 20:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:drm_helper_add_std_modes] Adding mode 800x600 to SVIDEO-1
[drm:drm_helper_add_std_modes] Added std modes on SVIDEO-1
[drm:drm_mode_debug_printmodeline] Modeline 21:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:drm_setup_crtcs]
[drm:drm_enable_connectors] connector 5 enabled? no
[drm:drm_enable_connectors] connector 7 enabled? yes
[drm:drm_enable_connectors] connector 10 enabled? no
[drm:drm_target_preferred] looking for preferred mode on connector 7
[drm:drm_target_preferred] found mode 800x600
[drm:drm_setup_crtcs] picking CRTCs for 2048x2048 config
[drm:drm_setup_crtcs] desired mode 800x600 set on crtc 3
[drm:intelfb_probe]
[drm:intelfb_single_fb_probe]
[drm:intelfb_single_fb_probe] creating new fb (console size 800x600, buffer size 800x600)
[drm:drm_agp_bind_pages]
allocated 800x600 fb: 0x00fdf000, bo ffff88007336bf00
[drm:intelfb_set_par] 800 -1
Console: switching to colour frame buffer device 100x37
[drm:drm_crtc_helper_set_config]
[drm:drm_crtc_helper_set_config] crtc: ffff88007ca17800 3 fb: ffff88007336b3c0 connectors: ffff88007ca17ca8 num_connectors: 1 (x, y) (0, 0)
[drm:drm_crtc_helper_set_config] modes are different
[drm:drm_mode_debug_printmodeline] Modeline 0:"NTSC 480i" 0 107520 1280 1368 1496 1712 1024 1027 1034 1104 0x40 0x0
[drm:drm_mode_debug_printmodeline] Modeline 20:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:drm_crtc_helper_set_config] attempting to set mode from userspace
[drm:drm_mode_debug_printmodeline] Modeline 20:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:intel_crtc_mode_set] Mode for pipe A:
[drm:drm_mode_debug_printmodeline] Modeline 20:"800x600" 60315 40000 800 840 968 1056 600 601 605 628 0x10 0x5
[drm:intel_pipe_set_base] Writing base 00FDF000 00000000 0 0
[drm] TMDS-9: set mode 800x600 14
fb0: inteldrmfb frame buffer device
registered panic notifier
[drm] Initialized i915 1.6.0 20080730 on minor 0
--
Paul Collins
Wellington, New Zealand
Dag vijandelijk luchtschip de huismeester is dood
More information about the Intel-gfx
mailing list