linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Powerbook shuts down hard when hot, patch found
@ 2007-09-28 21:32 Michael Buesch
  2007-09-28 23:04 ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-28 21:32 UTC (permalink / raw)
  To: Benjamin Herrenschmidt; +Cc: linuxppc-dev

Hi,

some time ago I already mailed you about this problem.
I will quickly describe what's going on, again:

My powerbook boots fine when it's cold. You can work with
it and you can also run it hot (compile something, etc...).
But when you try to boot it while it is hot, it will
automatically shutdown hard inside of the boot process.
Some part of the hardware is shutting it down.
This does not happen when it's getting hot _after_ boot.
Only while boot when it's hot.

I bisected the problem and found out that the following patch
is responsible for this. Yeah, this sounds a little bit
crazy, as this patch does not seem to be related to
this at all. But I confirmed it by booting kernel
4f71c5de19c27f2198105d3b26b398494d5c353b
That kernel triggered the bug. Then I patch -R the patch below
and it booted properly, even when hot. I also rechecked
that it really was hot enough to trigger the event by
immediately rebooting into a known bad kernel, that immediately
shut down the pbook, as expected.
So I'm pretty sure it's the patch below causing this weird
behaviour. Any idea why?


commit 4f71c5de19c27f2198105d3b26b398494d5c353b
Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date:   Fri Nov 17 15:35:00 2006 +1100

    [PATCH] Fix radeon DDC regression
    
    When radeonfb was changed to use the new "generic" ddc, a bit of
    code initializing the GPIO lines was lost, causing it to not work
    if the firmware didn't configure them properly, which seems to
    happen on some cards.
    
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>

diff --git a/drivers/video/aty/radeon_i2c.c b/drivers/video/aty/radeon_i2c.c
index 6767545..869725a 100644
--- a/drivers/video/aty/radeon_i2c.c
+++ b/drivers/video/aty/radeon_i2c.c
@@ -139,7 +139,13 @@ void radeon_delete_i2c_busses(struct rad
 int radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int conn,
 			       u8 **out_edid)
 {
-	u8 *edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
+	u32 reg = rinfo->i2c[conn-1].ddc_reg;
+	u8 *edid;
+
+	OUTREG(reg, INREG(reg) &
+			~(VGA_DDC_DATA_OUTPUT | VGA_DDC_CLK_OUTPUT));
+
+	edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
 
 	if (out_edid)
 		*out_edid = edid;

-- 
Greetings Michael.

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-28 21:32 Powerbook shuts down hard when hot, patch found Michael Buesch
@ 2007-09-28 23:04 ` Benjamin Herrenschmidt
  2007-09-29 11:06   ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Benjamin Herrenschmidt @ 2007-09-28 23:04 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


On Fri, 2007-09-28 at 23:32 +0200, Michael Buesch wrote:
> Hi,
> 
> some time ago I already mailed you about this problem.
> I will quickly describe what's going on, again:
> 
> My powerbook boots fine when it's cold. You can work with
> it and you can also run it hot (compile something, etc...).
> But when you try to boot it while it is hot, it will
> automatically shutdown hard inside of the boot process.
> Some part of the hardware is shutting it down.
> This does not happen when it's getting hot _after_ boot.
> Only while boot when it's hot.
> 
> I bisected the problem and found out that the following patch
> is responsible for this. Yeah, this sounds a little bit
> crazy, as this patch does not seem to be related to
> this at all. But I confirmed it by booting kernel
> 4f71c5de19c27f2198105d3b26b398494d5c353b
> That kernel triggered the bug. Then I patch -R the patch below
> and it booted properly, even when hot. I also rechecked
> that it really was hot enough to trigger the event by
> immediately rebooting into a known bad kernel, that immediately
> shut down the pbook, as expected.
> So I'm pretty sure it's the patch below causing this weird
> behaviour. Any idea why?

This is very strange... Can you try also clearing VGA_DDC_CLK_OUT_EN and
VGA_DDC_DATA_OUT_EN and the same time and see if that helps ?

> 
> commit 4f71c5de19c27f2198105d3b26b398494d5c353b
> Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Date:   Fri Nov 17 15:35:00 2006 +1100
> 
>     [PATCH] Fix radeon DDC regression
>     
>     When radeonfb was changed to use the new "generic" ddc, a bit of
>     code initializing the GPIO lines was lost, causing it to not work
>     if the firmware didn't configure them properly, which seems to
>     happen on some cards.
>     
>     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
>     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
> 
> diff --git a/drivers/video/aty/radeon_i2c.c b/drivers/video/aty/radeon_i2c.c
> index 6767545..869725a 100644
> --- a/drivers/video/aty/radeon_i2c.c
> +++ b/drivers/video/aty/radeon_i2c.c
> @@ -139,7 +139,13 @@ void radeon_delete_i2c_busses(struct rad
>  int radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int conn,
>  			       u8 **out_edid)
>  {
> -	u8 *edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
> +	u32 reg = rinfo->i2c[conn-1].ddc_reg;
> +	u8 *edid;
> +
> +	OUTREG(reg, INREG(reg) &
> +			~(VGA_DDC_DATA_OUTPUT | VGA_DDC_CLK_OUTPUT));
> +
> +	edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
>  
>  	if (out_edid)
>  		*out_edid = edid;
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-28 23:04 ` Benjamin Herrenschmidt
@ 2007-09-29 11:06   ` Michael Buesch
  2007-09-29 11:22     ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-29 11:06 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev

On Saturday 29 September 2007 01:04:13 Benjamin Herrenschmidt wrote:
> 
> On Fri, 2007-09-28 at 23:32 +0200, Michael Buesch wrote:
> > Hi,
> > 
> > some time ago I already mailed you about this problem.
> > I will quickly describe what's going on, again:
> > 
> > My powerbook boots fine when it's cold. You can work with
> > it and you can also run it hot (compile something, etc...).
> > But when you try to boot it while it is hot, it will
> > automatically shutdown hard inside of the boot process.
> > Some part of the hardware is shutting it down.
> > This does not happen when it's getting hot _after_ boot.
> > Only while boot when it's hot.
> > 
> > I bisected the problem and found out that the following patch
> > is responsible for this. Yeah, this sounds a little bit
> > crazy, as this patch does not seem to be related to
> > this at all. But I confirmed it by booting kernel
> > 4f71c5de19c27f2198105d3b26b398494d5c353b
> > That kernel triggered the bug. Then I patch -R the patch below
> > and it booted properly, even when hot. I also rechecked
> > that it really was hot enough to trigger the event by
> > immediately rebooting into a known bad kernel, that immediately
> > shut down the pbook, as expected.
> > So I'm pretty sure it's the patch below causing this weird
> > behaviour. Any idea why?
> 
> This is very strange... Can you try also clearing VGA_DDC_CLK_OUT_EN and
> VGA_DDC_DATA_OUT_EN and the same time and see if that helps ?

It still triggers the bug then.

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 11:06   ` Michael Buesch
@ 2007-09-29 11:22     ` Michael Buesch
  2007-09-29 21:51       ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-29 11:22 UTC (permalink / raw)
  To: linuxppc-dev

On Saturday 29 September 2007 13:06:59 Michael Buesch wrote:
> > This is very strange... Can you try also clearing VGA_DDC_CLK_OUT_EN and
> > VGA_DDC_DATA_OUT_EN and the same time and see if that helps ?
> 
> It still triggers the bug then.

I tried something else.
I removed the write and only added a printk with a register read
to print the contents (DDC REG IS 0x...) . This is the result:

[    0.431304] PCI: Enabling device 0000:00:10.0 (0006 -> 0007)
[    0.626866] radeonfb (0000:00:10.0): Invalid ROM signature 303 should be 0xaa55
[    0.626877] radeonfb: Retrieved PLL infos from Open Firmware
[    0.626887] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=203.00 Mhz, System=392.00 MHz
[    0.626897] radeonfb: PLL min 12000 max 35000
[    0.627194] DDC REG IS 0x00000303
[    0.763751] i2c-adapter i2c-2: unable to read EDID block.
[    0.983746] i2c-adapter i2c-2: unable to read EDID block.
[    1.203745] i2c-adapter i2c-2: unable to read EDID block.
[    1.280001] DDC REG IS 0x00000000
[    1.620189] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[001124fffed98036]
[    1.670984] radeonfb: Monitor 1 type LCD found
[    1.670992] radeonfb: EDID probed
[    1.670997] radeonfb: Monitor 2 type no found
[    1.671012] radeonfb: Using Firmware dividers 0x0002008e from PPLL 0
[    1.671075] radeonfb: Dynamic Clock Power Management enabled
[    1.712658] Console: switching to colour frame buffer device 160x53
[    1.735555] radeonfb: Backlight initialized (radeonbl0)
[    1.735746] radeonfb (0000:00:10.0): ATI Radeon NP 
[    1.738776] Generic RTC Driver v1.07
[    1.738995] Macintosh non-volatile memory driver v1.1
...

Note that the function is called twice. Is that correct?

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 11:22     ` Michael Buesch
@ 2007-09-29 21:51       ` Benjamin Herrenschmidt
  2007-09-29 21:53         ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Benjamin Herrenschmidt @ 2007-09-29 21:51 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


On Sat, 2007-09-29 at 13:22 +0200, Michael Buesch wrote:
> On Saturday 29 September 2007 13:06:59 Michael Buesch wrote:
> > > This is very strange... Can you try also clearing VGA_DDC_CLK_OUT_EN and
> > > VGA_DDC_DATA_OUT_EN and the same time and see if that helps ?
> > 
> > It still triggers the bug then.
> 
> I tried something else.
> I removed the write and only added a printk with a register read
> to print the contents (DDC REG IS 0x...) . This is the result:
> 
> [    0.431304] PCI: Enabling device 0000:00:10.0 (0006 -> 0007)
> [    0.626866] radeonfb (0000:00:10.0): Invalid ROM signature 303 should be 0xaa55
> [    0.626877] radeonfb: Retrieved PLL infos from Open Firmware
> [    0.626887] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=203.00 Mhz, System=392.00 MHz
> [    0.626897] radeonfb: PLL min 12000 max 35000
> [    0.627194] DDC REG IS 0x00000303
> [    0.763751] i2c-adapter i2c-2: unable to read EDID block.
> [    0.983746] i2c-adapter i2c-2: unable to read EDID block.
> [    1.203745] i2c-adapter i2c-2: unable to read EDID block.
> [    1.280001] DDC REG IS 0x00000000
> [    1.620189] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[001124fffed98036]
> [    1.670984] radeonfb: Monitor 1 type LCD found
> [    1.670992] radeonfb: EDID probed
> [    1.670997] radeonfb: Monitor 2 type no found
> [    1.671012] radeonfb: Using Firmware dividers 0x0002008e from PPLL 0
> [    1.671075] radeonfb: Dynamic Clock Power Management enabled
> [    1.712658] Console: switching to colour frame buffer device 160x53
> [    1.735555] radeonfb: Backlight initialized (radeonbl0)
> [    1.735746] radeonfb (0000:00:10.0): ATI Radeon NP 
> [    1.738776] Generic RTC Driver v1.07
> [    1.738995] Macintosh non-volatile memory driver v1.1
> ...
> 
> Note that the function is called twice. Is that correct?

Yes. That's expected, with different registers though.

I don't quite get what's going on. I'll have to figure that out with ATI
if they bother helping...

Ben.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 21:51       ` Benjamin Herrenschmidt
@ 2007-09-29 21:53         ` Michael Buesch
  2007-09-29 22:19           ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-29 21:53 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev

On Saturday 29 September 2007 23:51:55 Benjamin Herrenschmidt wrote:
> 
> On Sat, 2007-09-29 at 13:22 +0200, Michael Buesch wrote:
> > On Saturday 29 September 2007 13:06:59 Michael Buesch wrote:
> > > > This is very strange... Can you try also clearing VGA_DDC_CLK_OUT_EN and
> > > > VGA_DDC_DATA_OUT_EN and the same time and see if that helps ?
> > > 
> > > It still triggers the bug then.
> > 
> > I tried something else.
> > I removed the write and only added a printk with a register read
> > to print the contents (DDC REG IS 0x...) . This is the result:
> > 
> > [    0.431304] PCI: Enabling device 0000:00:10.0 (0006 -> 0007)
> > [    0.626866] radeonfb (0000:00:10.0): Invalid ROM signature 303 should be 0xaa55
> > [    0.626877] radeonfb: Retrieved PLL infos from Open Firmware
> > [    0.626887] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=203.00 Mhz, System=392.00 MHz
> > [    0.626897] radeonfb: PLL min 12000 max 35000
> > [    0.627194] DDC REG IS 0x00000303
> > [    0.763751] i2c-adapter i2c-2: unable to read EDID block.
> > [    0.983746] i2c-adapter i2c-2: unable to read EDID block.
> > [    1.203745] i2c-adapter i2c-2: unable to read EDID block.
> > [    1.280001] DDC REG IS 0x00000000
> > [    1.620189] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[001124fffed98036]
> > [    1.670984] radeonfb: Monitor 1 type LCD found
> > [    1.670992] radeonfb: EDID probed
> > [    1.670997] radeonfb: Monitor 2 type no found
> > [    1.671012] radeonfb: Using Firmware dividers 0x0002008e from PPLL 0
> > [    1.671075] radeonfb: Dynamic Clock Power Management enabled
> > [    1.712658] Console: switching to colour frame buffer device 160x53
> > [    1.735555] radeonfb: Backlight initialized (radeonbl0)
> > [    1.735746] radeonfb (0000:00:10.0): ATI Radeon NP 
> > [    1.738776] Generic RTC Driver v1.07
> > [    1.738995] Macintosh non-volatile memory driver v1.1
> > ...
> > 
> > Note that the function is called twice. Is that correct?
> 
> Yes. That's expected, with different registers though.
> 
> I don't quite get what's going on. I'll have to figure that out with ATI
> if they bother helping...

This all smells to me like a silicon bug, so I'd start searching
in the silicon erratas. But I'm not sure, of course. It's also strange
that it depends on temperature. (That's why I first expected the PMU
would cause this).

Thanks for your help.

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 21:53         ` Michael Buesch
@ 2007-09-29 22:19           ` Benjamin Herrenschmidt
  2007-09-29 22:26             ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Benjamin Herrenschmidt @ 2007-09-29 22:19 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


> 
> This all smells to me like a silicon bug, so I'd start searching
> in the silicon erratas. But I'm not sure, of course. It's also strange
> that it depends on temperature. (That's why I first expected the PMU
> would cause this).
> 
> Thanks for your help.

Could be that we are creating a short by driving the output low, thus
causing the silicon to heat up, but that's strange.

Also, the other change I made you do turns these into inputs, thus the
DDL lines should be pulled up, unless ... the board doesn't have
pullups.

Ben.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 22:19           ` Benjamin Herrenschmidt
@ 2007-09-29 22:26             ` Michael Buesch
  2007-09-29 22:49               ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-29 22:26 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev

On Sunday 30 September 2007 00:19:53 Benjamin Herrenschmidt wrote:
> 
> > 
> > This all smells to me like a silicon bug, so I'd start searching
> > in the silicon erratas. But I'm not sure, of course. It's also strange
> > that it depends on temperature. (That's why I first expected the PMU
> > would cause this).
> > 
> > Thanks for your help.
> 
> Could be that we are creating a short by driving the output low, thus
> causing the silicon to heat up, but that's strange.

Well. The machine needs to be hot in the first place to trigger it.
If it's cold it boots and runs fine even with that patch.
Even if I run it hot after boot it does not shutdown. It only shuts down
on boot when this register is written and when it's hot at this point.

That's why I thought about some silicon bug. Why only when it's hot? :)

> Also, the other change I made you do turns these into inputs, thus the

The _EN bits are already all cleared, as you can see in my printk dump.
So clearing them has no effect, of course.
So the ports are Inputs as default on boot.

> DDL lines should be pulled up, unless ... the board doesn't have
> pullups.

Well, I can't tell you :)

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 22:26             ` Michael Buesch
@ 2007-09-29 22:49               ` Benjamin Herrenschmidt
  2007-09-30 10:13                 ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Benjamin Herrenschmidt @ 2007-09-29 22:49 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


On Sun, 2007-09-30 at 00:26 +0200, Michael Buesch wrote:
> On Sunday 30 September 2007 00:19:53 Benjamin Herrenschmidt wrote:
> > 
> > > 
> > > This all smells to me like a silicon bug, so I'd start searching
> > > in the silicon erratas. But I'm not sure, of course. It's also strange
> > > that it depends on temperature. (That's why I first expected the PMU
> > > would cause this).
> > > 
> > > Thanks for your help.
> > 
> > Could be that we are creating a short by driving the output low, thus
> > causing the silicon to heat up, but that's strange.
> 
> Well. The machine needs to be hot in the first place to trigger it.
> If it's cold it boots and runs fine even with that patch.
> Even if I run it hot after boot it does not shutdown. It only shuts down
> on boot when this register is written and when it's hot at this point.

Well, it's possible that they have a too weak pull-up resistor on those
lines, and thus when asserted to 0, a significant current goes through
causing the whole thing to heat up. That heat added to the residual heat
of a hot boot becomes then enough to trigger the temperature sensor
threshold... just one possible explanation.

> That's why I thought about some silicon bug. Why only when it's hot? :)
> 
> > Also, the other change I made you do turns these into inputs, thus the
> 
> The _EN bits are already all cleared, as you can see in my printk dump.
> So clearing them has no effect, of course.
> So the ports are Inputs as default on boot.

Hrm, that's weird then, because in that case, changing the output bits
shouldn't have any effect, unless maybe on some chips, the EN bits are
flipped. I don't have anything specific about the rv350 tho.

Can you print which specific DDC register is doing that (it's called
twice right ?) and maybe do a patch preventing that write only for one
of them and let me know if it makes a difference.

> > DDL lines should be pulled up, unless ... the board doesn't have
> > pullups.
> 
> Well, I can't tell you :)

Heh

Ben.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-29 22:49               ` Benjamin Herrenschmidt
@ 2007-09-30 10:13                 ` Michael Buesch
  2007-09-30 10:16                   ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-30 10:13 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev

On Sunday 30 September 2007 00:49:05 Benjamin Herrenschmidt wrote:
> Well, it's possible that they have a too weak pull-up resistor on those
> lines, and thus when asserted to 0, a significant current goes through
> causing the whole thing to heat up. That heat added to the residual heat
> of a hot boot becomes then enough to trigger the temperature sensor
> threshold... just one possible explanation.

Possible, yes.

> > That's why I thought about some silicon bug. Why only when it's hot? :)
> > 
> > > Also, the other change I made you do turns these into inputs, thus the
> > 
> > The _EN bits are already all cleared, as you can see in my printk dump.
> > So clearing them has no effect, of course.
> > So the ports are Inputs as default on boot.
> 
> Hrm, that's weird then, because in that case, changing the output bits
> shouldn't have any effect, unless maybe on some chips, the EN bits are
> flipped. I don't have anything specific about the rv350 tho.
> 
> Can you print which specific DDC register is doing that (it's called
> twice right ?) and maybe do a patch preventing that write only for one
> of them and let me know if it makes a difference.

Here's the log of a working kernel.
As you can see, I only removed the write for register 0x60 here.
So it only crashes when I clear the bits in this register.
(makes sense, as there's nothing to clear in the other one).

[    0.453703] PCI: Enabling device 0000:00:10.0 (0006 -> 0007)
[    0.649319] radeonfb (0000:00:10.0): Invalid ROM signature 303 should be 0xaa55
[    0.649329] radeonfb: Retrieved PLL infos from Open Firmware
[    0.649340] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=203.00 Mhz, System=392.00 MHz
[    0.649350] radeonfb: PLL min 12000 max 35000
[    0.650146] DDC REG 0x00000060 IS 0x00000303
[    0.793754] i2c-adapter i2c-2: unable to read EDID block.
[    1.013748] i2c-adapter i2c-2: unable to read EDID block.
[    1.233748] i2c-adapter i2c-2: unable to read EDID block.
[    1.310002] DDC REG 0x0000006C IS 0x00000000
[    1.310007] WRITING
[    1.650506] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[001124fffed98036]
[    1.700986] radeonfb: Monitor 1 type LCD found
[    1.700995] radeonfb: EDID probed
[    1.701001] radeonfb: Monitor 2 type no found
[    1.701015] radeonfb: Using Firmware dividers 0x0002008e from PPLL 0
[    1.701130] radeonfb: Dynamic Clock Power Management enabled
[    1.742608] Console: switching to colour frame buffer device 160x53
[    1.765577] radeonfb: Backlight initialized (radeonbl0)
[    1.765767] radeonfb (0000:00:10.0): ATI Radeon NP 
[    1.776757] Generic RTC Driver v1.07
[    1.777085] Macintosh non-volatile memory driver v1.1
[    1.777429] Linux agpgart interface v0.102
[    1.777739] agpgart: Detected Apple UniNorth 2 chipset

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-30 10:13                 ` Michael Buesch
@ 2007-09-30 10:16                   ` Michael Buesch
  2007-10-01  8:00                     ` Michel Dänzer
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-09-30 10:16 UTC (permalink / raw)
  To: benh; +Cc: linuxppc-dev

On Sunday 30 September 2007 12:13:36 Michael Buesch wrote:
> On Sunday 30 September 2007 00:49:05 Benjamin Herrenschmidt wrote:
> > Well, it's possible that they have a too weak pull-up resistor on those
> > lines, and thus when asserted to 0, a significant current goes through
> > causing the whole thing to heat up. That heat added to the residual heat
> > of a hot boot becomes then enough to trigger the temperature sensor
> > threshold... just one possible explanation.
> 
> Possible, yes.
> 
> > > That's why I thought about some silicon bug. Why only when it's hot? :)
> > > 
> > > > Also, the other change I made you do turns these into inputs, thus the
> > > 
> > > The _EN bits are already all cleared, as you can see in my printk dump.
> > > So clearing them has no effect, of course.
> > > So the ports are Inputs as default on boot.
> > 
> > Hrm, that's weird then, because in that case, changing the output bits
> > shouldn't have any effect, unless maybe on some chips, the EN bits are
> > flipped. I don't have anything specific about the rv350 tho.
> > 
> > Can you print which specific DDC register is doing that (it's called
> > twice right ?) and maybe do a patch preventing that write only for one
> > of them and let me know if it makes a difference.
> 
> Here's the log of a working kernel.
> As you can see, I only removed the write for register 0x60 here.
> So it only crashes when I clear the bits in this register.
> (makes sense, as there's nothing to clear in the other one).
> 
> [    0.453703] PCI: Enabling device 0000:00:10.0 (0006 -> 0007)
> [    0.649319] radeonfb (0000:00:10.0): Invalid ROM signature 303 should be 0xaa55
> [    0.649329] radeonfb: Retrieved PLL infos from Open Firmware
> [    0.649340] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=203.00 Mhz, System=392.00 MHz
> [    0.649350] radeonfb: PLL min 12000 max 35000
> [    0.650146] DDC REG 0x00000060 IS 0x00000303
> [    0.793754] i2c-adapter i2c-2: unable to read EDID block.
> [    1.013748] i2c-adapter i2c-2: unable to read EDID block.
> [    1.233748] i2c-adapter i2c-2: unable to read EDID block.
> [    1.310002] DDC REG 0x0000006C IS 0x00000000
> [    1.310007] WRITING
> [    1.650506] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[001124fffed98036]
> [    1.700986] radeonfb: Monitor 1 type LCD found
> [    1.700995] radeonfb: EDID probed
> [    1.701001] radeonfb: Monitor 2 type no found
> [    1.701015] radeonfb: Using Firmware dividers 0x0002008e from PPLL 0
> [    1.701130] radeonfb: Dynamic Clock Power Management enabled
> [    1.742608] Console: switching to colour frame buffer device 160x53
> [    1.765577] radeonfb: Backlight initialized (radeonbl0)
> [    1.765767] radeonfb (0000:00:10.0): ATI Radeon NP 
> [    1.776757] Generic RTC Driver v1.07
> [    1.777085] Macintosh non-volatile memory driver v1.1
> [    1.777429] Linux agpgart interface v0.102
> [    1.777739] agpgart: Detected Apple UniNorth 2 chipset
> 

Ah, forgot to say.
It does not crash immediately when the register is written. It takes about two seconds
to crash. And when the machine is colder to begin with, it takes slightly
longer to trigger. That _might_ support your overheating theory.

Though, it does not trigger when it's up and running, no matter how hot you drive it.

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-09-30 10:16                   ` Michael Buesch
@ 2007-10-01  8:00                     ` Michel Dänzer
  2007-10-01 20:58                       ` Michael Buesch
  0 siblings, 1 reply; 14+ messages in thread
From: Michel Dänzer @ 2007-10-01  8:00 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


On Sun, 2007-09-30 at 12:16 +0200, Michael Buesch wrote:
> 
> Ah, forgot to say.
> It does not crash immediately when the register is written. It takes about two seconds
> to crash. And when the machine is colder to begin with, it takes slightly
> longer to trigger. That _might_ support your overheating theory.
> 
> Though, it does not trigger when it's up and running, no matter how hot you drive it.

Maybe the thermal control module prevents it from overheating. Have you
tried unloading it or loading it ASAP on bootup to see if that makes any
difference either way?


-- 
Earthling Michel Dänzer           |          http://tungstengraphics.com
Libre software enthusiast         |          Debian, X and DRI developer

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-10-01  8:00                     ` Michel Dänzer
@ 2007-10-01 20:58                       ` Michael Buesch
  2007-10-02  6:43                         ` Michel Dänzer
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Buesch @ 2007-10-01 20:58 UTC (permalink / raw)
  To: Michel Dänzer; +Cc: linuxppc-dev

On Monday 01 October 2007 10:00:02 Michel D=C3=A4nzer wrote:
>=20
> On Sun, 2007-09-30 at 12:16 +0200, Michael Buesch wrote:
> >=20
> > Ah, forgot to say.
> > It does not crash immediately when the register is written. It takes ab=
out two seconds
> > to crash. And when the machine is colder to begin with, it takes slight=
ly
> > longer to trigger. That _might_ support your overheating theory.
> >=20
> > Though, it does not trigger when it's up and running, no matter how hot=
 you drive it.
>=20
> Maybe the thermal control module prevents it from overheating. Have you
> tried unloading it or loading it ASAP on bootup to see if that makes any
> difference either way?

I'm not sure how that works. Can I unload the framebuffer module? I mean,
when I unloaded it, how does the console access the display?
Your suggestion might be less trivial to do than it sounds like. :)
I currently have compiled the stuff into the kernel image.

=2D-=20
Greetings Michael.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Powerbook shuts down hard when hot, patch found
  2007-10-01 20:58                       ` Michael Buesch
@ 2007-10-02  6:43                         ` Michel Dänzer
  0 siblings, 0 replies; 14+ messages in thread
From: Michel Dänzer @ 2007-10-02  6:43 UTC (permalink / raw)
  To: Michael Buesch; +Cc: linuxppc-dev


On Mon, 2007-10-01 at 22:58 +0200, Michael Buesch wrote:
> On Monday 01 October 2007 10:00:02 Michel Dänzer wrote:
> > 
> > On Sun, 2007-09-30 at 12:16 +0200, Michael Buesch wrote:
> > > 
> > > Ah, forgot to say.
> > > It does not crash immediately when the register is written. It takes about two seconds
> > > to crash. And when the machine is colder to begin with, it takes slightly
> > > longer to trigger. That _might_ support your overheating theory.
> > > 
> > > Though, it does not trigger when it's up and running, no matter how hot you drive it.
> > 
> > Maybe the thermal control module prevents it from overheating. Have you
> > tried unloading it or loading it ASAP on bootup to see if that makes any
> > difference either way?
> 
> I'm not sure how that works. Can I unload the framebuffer module?

I'm talking about the thermal control module (therm_adt746x in my case),
not radeonfb.


-- 
Earthling Michel Dänzer           |          http://tungstengraphics.com
Libre software enthusiast         |          Debian, X and DRI developer

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2007-10-02  6:43 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-28 21:32 Powerbook shuts down hard when hot, patch found Michael Buesch
2007-09-28 23:04 ` Benjamin Herrenschmidt
2007-09-29 11:06   ` Michael Buesch
2007-09-29 11:22     ` Michael Buesch
2007-09-29 21:51       ` Benjamin Herrenschmidt
2007-09-29 21:53         ` Michael Buesch
2007-09-29 22:19           ` Benjamin Herrenschmidt
2007-09-29 22:26             ` Michael Buesch
2007-09-29 22:49               ` Benjamin Herrenschmidt
2007-09-30 10:13                 ` Michael Buesch
2007-09-30 10:16                   ` Michael Buesch
2007-10-01  8:00                     ` Michel Dänzer
2007-10-01 20:58                       ` Michael Buesch
2007-10-02  6:43                         ` Michel Dänzer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).