Linux 3.4-rc4
Ben Skeggs
bskeggs at redhat.com
Tue Apr 24 19:56:14 PDT 2012
On Tue, 2012-04-24 at 21:35 -0400, Nick Bowler wrote:
> On 2012-04-23 21:03 -0400, Nick Bowler wrote:
> > On 2012-04-22 22:45 -0400, Konrad Rzeszutek Wilk wrote:
> > > On Sun, Apr 22, 2012 at 08:05:54PM -0400, Nick Bowler wrote:
> > > > Following up on the above, the commit which introduces the panics during
> > > > boot is this one:
> > > >
> > > > commit 8e7e70522d760c4ccd4cd370ebfa0ba69e006c6e
> > > > Author: Jerome Glisse <jglisse at redhat.com>
> > > > Date: Wed Nov 9 17:15:26 2011 -0500
> > > >
> > > > drm/ttm: isolate dma data from ttm_tt V4
> [...]
> > > dea7e0a ttm: fix agp since ttm tt rework
> > >
> > > fixed that.
> >
> > Yes, I just tested this commit and the one immediately before it. The
> > one before crashes in the usual way, and dea7e0a boots (with the VGA
> > output black as in the original report). So this fixed the crash.
>
> OK, here's what I did:
>
> - Since dea7e0a is the first commit that both (a) boots and (b) has
> broken VGA, I checked it out on a new branch:
>
> git checkout -b crazy dea7e0a
>
> - Next, I reverted *all* (well, I missed one by accident) the remaining
> nouveau-specific commits between 3230cfc34 ("drm/nouveau: enable the
> ttm dma pool when swiotlb is active V3") (i.e., the last commit that
> (a) boots and (b) has non-broken VGA) and dea7e0a:
>
> git revert --no-edit 0c101461e267..f7b24c42da1a
>
> - Amazingly, the resulting kernel booted and had working VGA, so I did
> a "backwards" bisect on this branch of reverts. In a strange twist
> of fate, this actually managed to produce bootable kernels the entire
> time. The bisection pinpointed the following commit as the culprit:
>
> commit a0b25635515ef5049f93b032a1e37f18b16e0f6f
> Author: Ben Skeggs <bskeggs at redhat.com>
> Date: Mon Nov 21 16:41:48 2011 +1000
>
> drm/nouveau/gpio: reimplement as nouveau_gpio.c, fixing a number of issues
>
> - moves out of nouveau_bios.c and demagics the logical state definitions
> - simplifies chipset-specific driver interface
> - makes most of gpio irq handling common, will use for nv4x hpd later
> - api extended to allow both direct gpio access, and access using the
> logical function states
> - api extended to allow for future use of gpio extender chips
> - pre-nv50 was handled very badly, the main issue being that all GPIOs
> were being treated as output-only.
> - fixes nvd0 so gpio changes actually stick, magic reg needs bashing
>
> Signed-off-by: Ben Skeggs <bskeggs at redhat.com>
Excellent! That makes things possible.
Are you able to mount debugfs, and email /debugfs/dri/0/vbios.rom for me
(privately if you wish) and I'll attempt to track down what broke for
you.
Thanks!
Ben.
>
> Unfortunately, there are a number of seemingly non-trivial conflicts
> trying to revert just this one gigantic commit. So to avoid any
> conflicts, I reverted all of the following (in this order) on top of
> 3.3.3 (there are even more conflicts trying to revert on top of Linus'
> master):
>
> 7df898b1a70b ("drm/nouveau/disp: check that panel power gpio is enabled at init time")
> 52c4d767437b ("drm/nouveau: move hpd enable/disable to common code")
> 47e5d5cb83d4 ("drm/nv40/disp: implement support for hotplug irq")
> a0b25635515e ("drm/nouveau/gpio: reimplement as nouveau_gpio.c, fixing a number of issues")
>
> and my VGA is working again!
>
> Cheers,
More information about the dri-devel
mailing list