linux/drivers/char
Benjamin Herrenschmidt 0c541b4406 [PATCH] ppc32: Fix AGP and sleep again
My previous patch that added sleep support for uninorth-agp and some AGP
"off" stuff in radeonfb and aty128fb is breaking some configs.  More
specifically, it has problems with rage128 setups since the DRI code for
these in X doesn't properly re-enable AGP on wakeup or console switch
(unlike the radeon DRM).

This patch fixes the problem for pmac once for all by using a different
approach.  The AGP driver "registers" special suspend/resume callbacks with
some arch code that the fbdev's can later on call to suspend and resume
AGP, making sure it's resumed back in the same state it was when suspended.
 This is platform specific for now.  It would be too complicated to try to
do a generic implementation of this at this point due to all sort of weird
things going on with AGP on other architectures.  We'll re-work that whole
problem cleanly once we finally merge fbdev's and DRI.

In the meantime, please apply this patch which brings back some r128 based
laptops into working condition as far as system sleep is concerned.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-04-16 15:24:19 -07:00
..
agp [PATCH] ppc32: Fix AGP and sleep again 2005-04-16 15:24:19 -07:00
drm [PATCH] r128_state.c: break missing in switch statement 2005-04-16 15:24:04 -07:00
ftape Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip2 Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipmi Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mwave Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pcmcia Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rio Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tpm Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
watchdog Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amiserial.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
applicom.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
applicom.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cd1865.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ChangeLog Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
consolemap.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cp437.uni Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cyclades.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
decserial.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
defkeymap.c_shipped Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
defkeymap.map Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
digi1.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
digi.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
digiFep1.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
digiPCI.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ds1286.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ds1302.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ds1620.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dsp56k.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dtlk.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ec3104_keyb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
efirtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
epca.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
epca.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
epcaconfig.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
esp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
generic_nvram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
generic_serial.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
genrtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hangcheck-timer.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hpet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hvc_console.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hvcs.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hvsi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hw_random.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
i8k.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip2.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip2main.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ip27-rtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isicom.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
istallion.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ite_gpio.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
keyboard.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
lcd.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
lcd.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
lp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mem.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
misc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmtimer.c [PATCH] mmtimer build fix 2005-04-16 15:23:53 -07:00
moxa.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mxser.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mxser.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
n_hdlc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
n_r3964.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
n_tty.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nvram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nwbutton.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nwbutton.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nwflash.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ppdev.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pty.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
qtronix.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
qtronixmap.c_shipped Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
qtronixmap.map Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
random.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
raw.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
riscom8_reg.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
riscom8.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
riscom8.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rocket_int.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rocket.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rocket.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
s3c2410-rtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scan_keyb.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scan_keyb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scx200_gpio.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
selection.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ser_a2232.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ser_a2232.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ser_a2232fw.ax Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ser_a2232fw.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
serial167.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
snsc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
snsc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sonypi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
specialix_io8.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
specialix.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
stallion.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sx.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sxboards.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sxwindow.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
synclink.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
synclinkmp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sysrq.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tb0219.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tipar.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
toshiba.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tty_io.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tty_ioctl.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vc_screen.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
viocons.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
viotape.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vme_scc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vr41xx_rtc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vt_ioctl.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00