From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: "Daniël Mantione" <daniel@deadlock.et.tudelft.nl>
Cc: linux-kernel mailing list <linux-kernel@vger.kernel.org>,
Marcelo Tosatti <marcelo.tosatti@cyclades.com.br>,
James Simmons <jsimmons@infradead.org>
Subject: Re: Patch: Make iBook1 work again
Date: Fri, 19 Sep 2003 10:38:17 +0200 [thread overview]
Message-ID: <1063960697.631.54.camel@gaston> (raw)
In-Reply-To: <Pine.LNX.4.44.0309191005270.17132-100000@deadlock.et.tudelft.nl>
> > and we don't need to mess with the MLCK/XCLK any more on radeons.
>
> Actually I think we need that urgently. I cannot have my Inspiron 4500
> laptop (Radeon 7500) on my, ehm, what's the english word, upper legs or
> something, for along time, the amount of heat generated is incredible.
> In Windows this is not a problem, only when you start playing games it gets hot.
You don't need tweaking those clock neither. The mobility chips have
dynamic clock & power management capabilities. I have code in radeonfb
to enable those, unfortunately, we (recent radeonfb's and XFree) will
disable most of those features because of some ASIC rev. bugs. We
should ask ATI some more precise list of which revs are affected and
if there's a better workaround...
> I have some experience with that.
>
> Because of the way the Atyfb is currently designed, mclk could be an
> artbitrary value and adding XCLK to the table would mean XCLK could be an
> arbitrary value. But without using SCLK, they need to be relative to each
> other i.e. 1/2 3/4 2/3 etc.
>
> Luckily the BIOS on my Rage LT Pro did use SCLK to clock the engine,
> without that I would never had solved this. And I never found any other
> card that did use SCLK by default. By having the engine clocked
> by SCLK instead of MCLK, you can have both frequencies completely
> independend, just like what was needed.
>
> It was easier said than done, everytime I did submit code to someone I got
> the reply the computer did crash. I was unable to get this resolved until
> I had a Dell laptop temporarily available to me, which did not crash
> allways, it was just completely random wether the driver would load or
> not.
>
> As far as I believe now, after you start the SCLK, it doesn't work at
> once. You have to wait a while before a good clock signal is generated.
> Adding a primitive wait loop did solve the problem for about anyone.
Yup, a PLL need time to properly stabilize, especially older ones.
> The conclusion is that the chip cannot be without clock signal even for a
> very short time and it even locks up the AGP so the rest of the computer
> hangs.
>
> It must be possible to stop the clock; I have a Rage IIc here with a
> broken BIOS, experiments on it show that you can enable the chip using the
> PCI registers without any clock running. Of course I never got the card to
> display anything.
By default, I think, the chip clocks itself on the PCI clock on powerup
(without BIOS). From that, you can then configure the PLLs, switch to PLL
derived clocks, initialize the memory controller, and go on...
But for mobility chips, there are additional "automatic" clock control
features, especially on r128 (M3) and radeons (M6/7/9/10) though I
suppose M1 may have similar features. Look at the code in my version
of radeonfb (2.4, it's not yet in 2.6 mainstream). I _much_ prefer
using those features than tweaking the PLLs, especially on those
new chips.
Ben.
prev parent reply other threads:[~2003-09-19 8:38 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.44.0309162303490.32610-100000@deadlock.et.tudelft.nl>
2003-09-17 20:07 ` Patch: Make iBook1 work again Benjamin Herrenschmidt
2003-09-17 20:42 ` Daniël Mantione
2003-09-17 21:12 ` Benjamin Herrenschmidt
2003-09-17 21:10 ` Daniël Mantione
2003-09-17 21:23 ` Benjamin Herrenschmidt
2003-09-17 21:49 ` Daniël Mantione
2003-09-18 8:00 ` Daniël Mantione
2003-09-18 9:03 ` Benjamin Herrenschmidt
2003-09-18 20:23 ` Benjamin Herrenschmidt
2003-09-18 22:06 ` Daniël Mantione
2003-09-19 6:57 ` Benjamin Herrenschmidt
2003-09-19 7:09 ` Daniël Mantione
2003-09-19 7:40 ` Benjamin Herrenschmidt
2003-09-19 8:29 ` Daniël Mantione
2003-09-19 8:38 ` Benjamin Herrenschmidt [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=1063960697.631.54.camel@gaston \
--to=benh@kernel.crashing.org \
--cc=daniel@deadlock.et.tudelft.nl \
--cc=jsimmons@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.tosatti@cyclades.com.br \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox