android_kernel_xiaomi_sm8350/drivers
Paul Mackerras 887ef35ae4 [POWERPC] Fix sleep on powerbook 3400
Sleep on the powerbook 3400 has been broken since the change that made
powerbook_sleep_3400 call pmac_suspend_devices(), which disables
interrupts.  There are a couple of loops in powerbook_sleep_3400 that
depend on interrupts being enabled, and in fact it has to have
interrupts enabled at the point of going to sleep since it is an
interrupt from the PMU that wakes it up.

This fixes it by using pmu_wait_complete() instead of a spinloop, and
by explicitly enabling interrupts before putting the CPU into sleep
mode (which is OK since all interrupts except the PMU interrupt have
been disabled at the interrupt controller by this stage).

This changes the logic so that it keeps putting the CPU into sleep mode
until the completion of the interrupt transaction from the PMU that
signals the end of sleep.  Also, we now call pmu_unlock() before sleep
so that the via_pmu_interrupt() code can process the interrupt event
from the PMU properly.

Now that generic code saves and restores PCI state, it is no longer
necessary to do that here.  Thus pbook_pci_save/restore and related
functions are no longer necessary, so this removes them.

Lastly, this moves the ioremap of the memory controller to init code
rather than doing it on every sleep/wakeup cycle.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-12-19 22:45:31 +11:00
..
acorn/char
acpi ACPI: move timer broadcast before busmaster disable 2007-12-07 19:16:17 +01:00
amba
ata libata: kill spurious NCQ completion detection 2007-12-07 15:27:54 -05:00
atm [ATM]: [he] initialize lock and tasklet earlier 2007-11-27 11:03:16 +08:00
auxdisplay
base create /sys/.../power when CONFIG_PM is set 2007-11-28 13:53:53 -08:00
block virtio: fix module/device unloading 2007-11-19 11:20:42 +11:00
bluetooth
cdrom
char Merge branch 'linux-2.6' 2007-12-10 15:41:22 +11:00
clocksource
connector
cpufreq
cpuidle
crypto uml: add !UML dependencies 2007-12-03 08:13:17 -08:00
dca
dio
dma dmaengine: correct invalid assumptions in the Kconfig text 2007-11-29 09:24:53 -08:00
edac [POWERPC] pasemi: Broaden specific references to 1682M 2007-11-29 22:30:47 -06:00
eisa
firewire
firmware
hid
hwmon HWMON: coretemp, suspend fix 2007-12-04 01:35:32 -05:00
i2c i2c/eeprom: Recognize VGN as a valid Sony Vaio name prefix 2007-11-15 19:24:03 +01:00
ide ide: More TSST drives with broken cable detection 2007-11-27 21:35:57 +01:00
ieee1394
infiniband IB/ehca: Fix static rate if path faster than link 2007-11-30 16:19:41 -08:00
input spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
isdn I4L: fix isdn_ioctl memory overrun vulnerability 2007-12-03 08:13:17 -08:00
kvm KVM: SVM: Fix FPU leak while emulating clts 2007-11-27 15:38:18 +02:00
leds leds: Fix led trigger locking bugs 2007-12-07 09:06:53 +00:00
lguest virtio: fix module/device unloading 2007-11-19 11:20:42 +11:00
macintosh [POWERPC] Fix sleep on powerbook 3400 2007-12-19 22:45:31 +11:00
mca
md raid5: fix unending write sequence 2007-11-14 18:45:39 -08:00
media
message
mfd MFD: SM501 debug typo fix 2007-11-29 09:24:53 -08:00
misc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2007-11-27 14:20:35 -08:00
mmc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
mtd
net [POWERPC] ucc_geth: use rx-clock-name and tx-clock-name device tree properties 2007-12-14 01:16:58 -06:00
nubus
of
oprofile oProfile: oops when profile_pc() returns ~0LU 2007-11-14 18:45:37 -08:00
parisc [PARISC] lba_pci: pci_claim_resources disabled expansion roms 2007-12-06 09:38:26 -08:00
parport
pci Revert "PCI: fix IDE legacy mode resources" 2007-12-10 07:40:54 -08:00
pcmcia
pnp drivers/pnp/resource.c: Add missing pci_dev_put 2007-11-29 09:24:52 -08:00
power
ps3 ps3: prefix all ps3-specific kernel modules with `ps3-' 2007-11-29 09:24:51 -08:00
rapidio
rtc spi: use simplified spi_sync() calling convention 2007-12-05 09:21:19 -08:00
s390 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2007-12-04 09:37:39 -08:00
sbus
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 2007-12-03 08:20:11 -08:00
serial [POWERPC] Move CPM command handling into the cpm drivers 2007-12-13 22:47:16 -06:00
sh
sn
spi Blackfin SPI driver: reconfigure speed_hz and bits_per_word in each spi transfer 2007-12-05 09:21:20 -08:00
ssb ssb: Fix PCMCIA-host lowlevel bus access 2007-11-10 22:01:53 -08:00
tc
telephony
uio
usb revert "keyspan: init termios properly" 2007-11-29 09:24:54 -08:00
video x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
virtio virtio: fix module/device unloading 2007-11-19 11:20:42 +11:00
w1 W1: fix memset size error 2007-11-14 18:45:36 -08:00
watchdog
xen
zorro Amiga zorro bus: Add missing zorro_device_remove() 2007-11-26 19:15:31 -08:00
Kconfig
Makefile