All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Richter <thor@math.tu-berlin.de>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
	intel-gfx <intel-gfx@lists.freedesktop.org>
Subject: Re: More questions and patches for 835GM/ns2501 DVO
Date: Sun, 03 Nov 2013 20:39:42 +0100	[thread overview]
Message-ID: <5276A67E.9030804@math.tu-berlin.de> (raw)
In-Reply-To: <19544_1383498802_52768431_19544_2610_1_20131103171348.GB4167@phenom.ffwll.local>

On 03.11.2013 18:13, Daniel Vetter wrote:
>>
>> Have you tried my patch to reorder the dvo sequence a bit? That /should/
>> get all these things right:
>>
>> http://www.spinics.net/lists/intel-gfx/msg34349.html
> There's also a follow-up patch for you to test:
>
> http://www.spinics.net/lists/intel-gfx/msg34350.html
>
> That would prove that the first patch does indeed work. Note that patch 1
> in this series is already merged.

Sorry, but using an external monitor is still not working correctly. 
When booting with an external monitor connected, I either get no image 
at all (bios = internal) or flickering on the external monitor and 
nothing internally (bios = shared). When connecting the external monitor 
after X has started, I can get a working image on the monitor, but not 
on the internal panel. The DVO locks up again. If I configure the 
internal panel, then reconfigure the VGA, I get a stable image. If I try 
to change the internal panel dimensions then, I get a flickering 
external screen. The DVO is locked up in either case.

I get the following when switching internally from 800x600 to 1024x768 
(just as an example):

/* snip */

Nov  3 20:12:20 tyleet kernel: [ 1399.497881] [drm:drm_mode_setcrtc], 
[CRTC:4]
Nov  3 20:12:20 tyleet kernel: [ 1399.497890] 
[drm:drm_framebuffer_reference], FB ID: 39
Nov  3 20:12:20 tyleet kernel: [ 1399.497907] [drm:drm_mode_setcrtc], 
[CONNECTOR:8:DVI-I-1]
Nov  3 20:12:20 tyleet kernel: [ 1399.497916] 
[drm:intel_crtc_set_config], [CRTC:4] [FB:39] #connectors=1 (x y) (0 0)
Nov  3 20:12:20 tyleet kernel: [ 1399.497928] 
[drm:intel_set_config_compute_mode_changes], modes are different, full 
mode set
Nov  3 20:12:20 tyleet kernel: [ 1399.497935] 
[drm:drm_mode_debug_printmodeline], Modeline 16:"" 0 40000 800 840 968 
1056 600 601 605 628 0x0 0x5
Nov  3 20:12:20 tyleet kernel: [ 1399.497948] 
[drm:drm_mode_debug_printmodeline], Modeline 16:"" 0 65000 1024 1048 
1184 1344 768 771 777 806 0x0 0xa
Nov  3 20:12:20 tyleet kernel: [ 1399.497960] 
[drm:intel_set_config_compute_mode_changes], computed changes for 
[CRTC:4], mode_changed=1, fb_changed=0
Nov  3 20:12:20 tyleet kernel: [ 1399.497970] 
[drm:intel_modeset_stage_output_state], [CONNECTOR:5:VGA-1] to [CRTC:3]
Nov  3 20:12:20 tyleet kernel: [ 1399.497978] 
[drm:intel_modeset_stage_output_state], [CONNECTOR:8:DVI-I-1] to [CRTC:4]
Nov  3 20:12:20 tyleet kernel: [ 1399.497991] 
[drm:intel_modeset_affected_pipes], set mode pipe masks: modeset: 2, 
prepare: 2, disable: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498008] 
[drm:connected_sink_compute_bpp], [CONNECTOR:8:DVI-I-1] checking for 
sink bpp constrains
Nov  3 20:12:20 tyleet kernel: [ 1399.498020] 
[drm:intel_modeset_pipe_config], plane bpp: 24, pipe bpp: 24, dithering: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498028] 
[drm:intel_dump_pipe_config], [CRTC:4][modeset] config for pipe B
Nov  3 20:12:20 tyleet kernel: [ 1399.498036] 
[drm:intel_dump_pipe_config], cpu_transcoder: B
Nov  3 20:12:20 tyleet kernel: [ 1399.498042] 
[drm:intel_dump_pipe_config], pipe bpp: 24, dithering: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498049] 
[drm:intel_dump_pipe_config], fdi/pch: 0, lanes: 0, gmch_m: 0, gmch_n: 
0, link_m: 0, link_n: 0, tu: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498058] 
[drm:intel_dump_pipe_config], dp: 0, gmch_m: 0, gmch_n: 0, link_m: 0, 
link_n: 0, tu: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498066] 
[drm:intel_dump_pipe_config], requested mode:
Nov  3 20:12:20 tyleet kernel: [ 1399.498072] 
[drm:drm_mode_debug_printmodeline], Modeline 0:"" 0 65000 1024 1048 1184 
1344 768 771 777 806 0x0 0xa
Nov  3 20:12:20 tyleet kernel: [ 1399.498084] 
[drm:intel_dump_pipe_config], adjusted mode:
Nov  3 20:12:20 tyleet kernel: [ 1399.498090] 
[drm:drm_mode_debug_printmodeline], Modeline 0:"" 0 65000 1024 1048 1184 
1344 768 771 777 806 0x0 0xa
Nov  3 20:12:20 tyleet kernel: [ 1399.498102] 
[drm:intel_dump_crtc_timings], crtc timings: 65000 1024 1048 1184 1344 
768 771 777 806, type: 0x0 flags: 0xa
Nov  3 20:12:20 tyleet kernel: [ 1399.498112] 
[drm:intel_dump_pipe_config], port clock: 65000
Nov  3 20:12:20 tyleet kernel: [ 1399.498118] 
[drm:intel_dump_pipe_config], pipe src size: 1024x768
Nov  3 20:12:20 tyleet kernel: [ 1399.498125] 
[drm:intel_dump_pipe_config], gmch pfit: control: 0x00000000, ratios: 
0x00000000, lvds border: 0x00000000
Nov  3 20:12:20 tyleet kernel: [ 1399.498132] 
[drm:intel_dump_pipe_config], pch pfit: pos: 0x00000000, size: 
0x00000000, disabled
Nov  3 20:12:20 tyleet kernel: [ 1399.498140] 
[drm:intel_dump_pipe_config], ips: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498145] 
[drm:intel_dump_pipe_config], double wide: 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498158] [drm:ns2501_dpms], 
ns2501_dpms: Trying set the dpms of the DVO to 0
Nov  3 20:12:20 tyleet kernel: [ 1399.498438] [drm:ns2501_writeb], 
Unable to write register 0x08 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.498703] [drm:ns2501_writeb], 
Unable to write register 0x34 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.498968] [drm:ns2501_writeb], 
Unable to write register 0x35 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.498976] [drm:enable_dvo], 
enable_dvo: Trying to re-enable the DVO
Nov  3 20:12:20 tyleet kernel: [ 1399.498985] [drm:enable_dvo], DVOA 
ctrl 0x00000000
Nov  3 20:12:20 tyleet kernel: [ 1399.498991] [drm:enable_dvo], DVOB 
ctrl 0x80004084
Nov  3 20:12:20 tyleet kernel: [ 1399.499006] [drm:enable_dvo], DVOC 
ctrl 0xd000409c
Nov  3 20:12:20 tyleet kernel: [ 1399.499013] [drm:enable_dvo], PLL A 
ctrl 0x90a00000
Nov  3 20:12:20 tyleet kernel: [ 1399.499021] [drm:enable_dvo], PLL B 
ctrl 0xd0840000
Nov  3 20:12:20 tyleet kernel: [ 1399.501050] 
[drm:drm_calc_vbltimestamp_from_scanoutpos], crtc 1 : v 5 p(0,111)@ 
1399.501043 -> 1399.498113 [e 6 us, 0 rep]
Nov  3 20:12:20 tyleet kernel: [ 1399.521076] [drm:i830_get_fifo_size], 
FIFO size - (0x00017e5f) A: 47
Nov  3 20:12:20 tyleet kernel: [ 1399.521103] [drm:intel_calculate_wm], 
FIFO entries required for mode: 99
Nov  3 20:12:20 tyleet kernel: [ 1399.521110] [drm:intel_calculate_wm], 
FIFO watermark level: -54
Nov  3 20:12:20 tyleet kernel: [ 1399.521116] [drm:i830_update_wm], 
Setting FIFO watermarks - A: 1
Nov  3 20:12:20 tyleet kernel: [ 1399.521139] [drm:drm_vblank_get], 
enabling vblank on crtc 1, ret: -22
Nov  3 20:12:20 tyleet kernel: [ 1399.529131] [drm:i8xx_update_pll], 
computed PLL value is 0xd0820000
Nov  3 20:12:20 tyleet kernel: [ 1399.529139] [drm:i8xx_update_pll], 
clock P1 is 4
Nov  3 20:12:20 tyleet kernel: [ 1399.529150] [drm:i8xx_update_pll], 
clock P2 is 4
Nov  3 20:12:20 tyleet kernel: [ 1399.529279] [drm:i9xx_update_plane], 
Writing base 02C00000 00000000 0 0 8192
Nov  3 20:12:20 tyleet kernel: [ 1399.529301] [drm:intel_crtc_mode_set], 
[ENCODER:7:None-7] set [MODE:0:]
Nov  3 20:12:20 tyleet kernel: [ 1399.552060] [drm:ns2501_mode_set], 
ns2501_mode_set: set mode 
(hdisplay=1024,htotal=1344,vdisplay=768,vtotal=806).
Nov  3 20:12:20 tyleet kernel: [ 1399.552081] [drm:ns2501_mode_set], 
ns2501_mode_set: switching to 1024x768
Nov  3 20:12:20 tyleet kernel: [ 1399.552375] [drm:ns2501_writeb], 
Unable to write register 0x37 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.552641] [drm:ns2501_writeb], 
Unable to write register 0x08 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.552650] [drm:enable_dvo], 
enable_dvo: Trying to re-enable the DVO
Nov  3 20:12:20 tyleet kernel: [ 1399.552659] [drm:enable_dvo], DVOA 
ctrl 0x00000000
Nov  3 20:12:20 tyleet kernel: [ 1399.552665] [drm:enable_dvo], DVOB 
ctrl 0x80004084
Nov  3 20:12:20 tyleet kernel: [ 1399.552675] [drm:enable_dvo], DVOC 
ctrl 0xd0004084
Nov  3 20:12:20 tyleet kernel: [ 1399.552682] [drm:enable_dvo], PLL A 
ctrl 0x90a00000
Nov  3 20:12:20 tyleet kernel: [ 1399.552689] [drm:enable_dvo], PLL B 
ctrl 0xd0820000
Nov  3 20:12:20 tyleet kernel: [ 1399.552697] [drm:ns2501_mode_set], 
ns2501_mode_set: switching to 1024x768
Nov  3 20:12:20 tyleet kernel: [ 1399.554019] [drm:ns2501_dpms], 
ns2501_dpms: Trying set the dpms of the DVO to 1
Nov  3 20:12:20 tyleet kernel: [ 1399.554282] [drm:ns2501_writeb], 
Unable to write register 0x08 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.554546] [drm:ns2501_writeb], 
Unable to write register 0x34 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.554810] [drm:ns2501_writeb], 
Unable to write register 0x35 to i915 gmbus dpb:56
Nov  3 20:12:20 tyleet kernel: [ 1399.554817] [drm:enable_dvo], 
enable_dvo: Trying to re-enable the DVO
Nov  3 20:12:20 tyleet kernel: [ 1399.554825] [drm:enable_dvo], DVOA 
ctrl 0x00000000
Nov  3 20:12:20 tyleet kernel: [ 1399.554831] [drm:enable_dvo], DVOB 
ctrl 0x80004084
Nov  3 20:12:20 tyleet kernel: [ 1399.554839] [drm:enable_dvo], DVOC 
ctrl 0xd0004084
Nov  3 20:12:20 tyleet kernel: [ 1399.554846] [drm:enable_dvo], PLL A 
ctrl 0x90a00000
Nov  3 20:12:20 tyleet kernel: [ 1399.554853] [drm:enable_dvo], PLL B 
ctrl 0xd0820000
Nov  3 20:12:20 tyleet kernel: [ 1399.558625] 
[drm:drm_calc_timestamping_constants], crtc 4: hwmode: htotal 1344, 
vtotal 806, vdisplay 768
Nov  3 20:12:20 tyleet kernel: [ 1399.558646] 
[drm:drm_calc_timestamping_constants], crtc 4: clock 65000 kHz framedur 
16665600 linedur 20676, pixeldur 15
Nov  3 20:12:20 tyleet kernel: [ 1399.558673] 
[drm:intel_connector_check_state], [CONNECTOR:5:VGA-1]
Nov  3 20:12:20 tyleet kernel: [ 1399.558943] [drm:ns2501_readb], Unable 
to read register 0x08 from i915 gmbus dpb:0x38.
Nov  3 20:12:20 tyleet kernel: [ 1399.558955] [drm:check_encoder_state], 
[ENCODER:6:DAC-6]
Nov  3 20:12:20 tyleet kernel: [ 1399.558964] [drm:check_encoder_state], 
[ENCODER:7:None-7]
Nov  3 20:12:20 tyleet kernel: [ 1399.558972] [drm:check_crtc_state], 
[CRTC:3]
Nov  3 20:12:20 tyleet kernel: [ 1399.559005] [drm:check_crtc_state], 
[CRTC:4]
Nov  3 20:12:20 tyleet kernel: [ 1399.559027] 
[drm:drm_framebuffer_reference], FB ID: 39
Nov  3 20:12:20 tyleet kernel: [ 1399.559036] 
[drm:drm_framebuffer_unreference], FB ID: 39
Nov  3 20:12:20 tyleet kernel: [ 1399.559042] 
[drm:drm_framebuffer_reference], FB ID: 39
Nov  3 20:12:20 tyleet kernel: [ 1399.559047] 
[drm:drm_framebuffer_unreference], FB ID: 39
Nov  3 20:12:20 tyleet kernel: [ 1399.559059] 
[drm:drm_framebuffer_unreference], FB ID: 39

/* snip */

The drm:enable_dvo lines are from my current version of the patch and 
dump the corresponding i835 registers.

Note the following: Assuming that the internal panel is feed by pipe B 
(I hope I assume right) then the PLL registers
are off. They should be 0xd0820000, but the PLL for pipe B is configured 
to 0xd0840000.

I'll check later what this bit precisely means. One way or another, the 
PLL configuration is not correct to feed the DVO,
and hence I'll get a frozen DVO again. )-:

Greetings,
     Thomas

      parent reply	other threads:[~2013-11-03 19:39 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-03 16:55 More questions and patches for 835GM/ns2501 DVO Thomas Richter
2013-11-03 17:12 ` Daniel Vetter
2013-11-03 17:13   ` Daniel Vetter
     [not found]   ` <19544_1383498802_52768431_19544_2610_1_20131103171348.GB4167@phenom.ffwll.local>
2013-11-03 19:00     ` Thomas Richter
2013-11-03 21:18       ` Daniel Vetter
2013-11-06 10:34         ` Daniel Vetter
2013-11-15 17:33           ` Daniel Vetter
     [not found]           ` <10422_1384536748_52865AAC_10422_4782_1_20131115173300.GZ22741@phenom.ffwll.local>
2013-11-15 18:59             ` Thomas Richter
     [not found]         ` <8785_1383734019_527A1B02_8785_7652_1_20131106103405.GH14082@phenom.ffwll.local>
2013-11-06 19:27           ` Thomas Richter
     [not found]       ` <19544_1383513468_5276BD7B_19544_3653_1_20131103211814.GC4167@phenom.ffwll.local>
2013-11-03 23:09         ` Thomas Richter
2013-11-04  7:15           ` Daniel Vetter
     [not found]           ` <19544_1383549334_52774996_19544_5502_1_CAKMK7uEPjjCsqYTpyO+Bes1eg5b8fVfGFkzQFtwDPxYNe4KwRw@mail.gmail.com>
2013-11-04 11:57             ` Thomas Richter
2013-11-04 15:15               ` Daniel Vetter
2013-11-04 15:48                 ` Ville Syrjälä
2013-11-04 16:05                   ` Ville Syrjälä
     [not found]               ` <19544_1383578084_5277B9E4_19544_9350_1_20131104151509.GF4167@phenom.ffwll.local>
2013-11-04 23:20                 ` Patches for i830 flicker on panning Thomas Richter
2013-11-05  7:07                   ` Daniel Vetter
2013-11-03 23:56         ` 16bpp and 8bpp uxa output broken Thomas Richter
2013-11-04  7:20           ` Daniel Vetter
2013-11-03 19:39     ` Thomas Richter [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5276A67E.9030804@math.tu-berlin.de \
    --to=thor@math.tu-berlin.de \
    --cc=daniel.vetter@ffwll.ch \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.