On Mon, Oct 11, 2004 at 01:26:04PM +0100, Andrew de Quincey wrote:
Then I suspect we might run into problems when the power management
core decides to power down busses in the wrong order. Well, on PCI
cards one could make the i2c adapter shutdown a noop, and do the i2c
shutdown when the PCI adapter is shutdown. On embedded you have
no such luck. You must power down the demod/PLL before the
i2c bus goes to sleep. (There'll be probable ways to kludge
around this, but it will never be clean&simple.)
Urgh, there is no nice solution to this. What is the least nasty?
For that matter, how do you control the order in which i2c devices on a single
bus are shut down? You'd have to shut down the PLL before the demod, in order
to be able to use the demod's i2c bus switch.
My cx22702 driver does the suspend/resume simply in the demod
powermanagement handlers. Code isn't tested yet through, I'm somehow
too busy writing mails these days ...
The ordering of the devices within the bus doesn't matter.
it matters. You can't reach the PLL after you shut down the demod on
most cards, to shut down the LNB and DiSEqC bus you need usually the
demod, the PCI bridge, the LNBP and sometimes some GPIO lines of other
i2c devices.