rpms/kernel/F-7 linux-2.6-acpi-gpe-list-fix-sleep.patch, NONE, 1.1 linux-2.6-libata-add-dma-disable-option.patch, NONE, 1.1 kernel-2.6.spec, 1.3359, 1.3360 linux-2.6-libata-pata-dma-disable-option.patch, 1.3, NONE
Chuck Ebbert (cebbert)
fedora-extras-commits at redhat.com
Thu Oct 18 16:59:21 UTC 2007
- Previous message (by thread): rpms/libpng/F-7 .cvsignore, 1.12, 1.13 libpng-pngconf.patch, 1.1, 1.2 libpng.spec, 1.40, 1.41 sources, 1.12, 1.13 libpng-trns-bug.patch, 1.1, NONE
- Next message (by thread): rpms/kernel/F-7/configs config-generic,1.338,1.339
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: cebbert
Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15100
Modified Files:
kernel-2.6.spec
Added Files:
linux-2.6-acpi-gpe-list-fix-sleep.patch
linux-2.6-libata-add-dma-disable-option.patch
Removed Files:
linux-2.6-libata-pata-dma-disable-option.patch
Log Message:
* Thu Oct 18 2007 Chuck Ebbert <cebbert at redhat.com>
- Add missing ACPI patch.
- Switch to upstream libata DMA disable code
(libata.pata_dma parameter is now libata.dma)
- Remove some new/experimental items from config.
linux-2.6-acpi-gpe-list-fix-sleep.patch:
--- NEW FILE linux-2.6-acpi-gpe-list-fix-sleep.patch ---
acpi_leave_sleep_state() should have correct list of wake and
runtime GPEs, which is available only after disable_wakeup_device()
is called.
Signed-off-by: Alexey Starikovskiy <astarikovskiy at suse.de>
---
drivers/acpi/sleep/main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c
index 5055acf..728d595 100644
--- a/drivers/acpi/sleep/main.c
+++ b/drivers/acpi/sleep/main.c
@@ -170,8 +170,8 @@ static int acpi_pm_finish(suspend_state_t pm_state)
{
u32 acpi_state = acpi_target_sleep_state;
- acpi_leave_sleep_state(acpi_state);
acpi_disable_wakeup_device(acpi_state);
+ acpi_leave_sleep_state(acpi_state);
/* reset firmware waking vector */
acpi_set_firmware_waking_vector((acpi_physical_address) 0);
@@ -256,8 +256,8 @@ static int acpi_hibernation_enter(void)
static void acpi_hibernation_finish(void)
{
- acpi_leave_sleep_state(ACPI_STATE_S4);
acpi_disable_wakeup_device(ACPI_STATE_S4);
+ acpi_leave_sleep_state(ACPI_STATE_S4);
/* reset firmware waking vector */
acpi_set_firmware_waking_vector((acpi_physical_address) 0);
linux-2.6-libata-add-dma-disable-option.patch:
--- NEW FILE linux-2.6-libata-add-dma-disable-option.patch ---
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b3a706014e56b1356e7b275fd25b833c63175bf0
Commit: b3a706014e56b1356e7b275fd25b833c63175bf0
Parent: 7100819f5f9b99eb7c7dd5597f293388a405bf7b
Author: Alan Cox <alan at redhat.com>
AuthorDate: Tue Oct 2 12:38:26 2007 -0400
Committer: Jeff Garzik <jeff at garzik.org>
CommitDate: Fri Oct 12 14:55:45 2007 -0400
libata: Add a drivers/ide style DMA disable
This is useful when debugging, handling problem systems, or for
distributions just to get the system installed so it can be sorted
out later.
This is a bit smarter than the old IDE one and lets you do
libata.dma=0 Disable all PATA DMA like old IDE
libata.dma=1 Disk DMA only
libata.dma=2 ATAPI DMA only
libata.dma=4 CF DMA only
(or combinations thereof - 0,1,3 being the useful ones I suspect)
(I've split CF as it seems to be a seperate case of pain and suffering
different to the others and caused by assorted PIO wired adapters etc)
Signed-off-by: Alan Cox <alan at redhat.com>
[edited to work on SATA too, changing name from 'pata_dma' to 'dma']
Signed-off-by: Jeff Garzik <jgarzik at redhat.com>
[cebbert at redhat.com: backport to 2.6.23]
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 5532a65..1501d63 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -97,6 +97,10 @@ static int ata_ignore_hpa = 0;
module_param_named(ignore_hpa, ata_ignore_hpa, int, 0644);
MODULE_PARM_DESC(ignore_hpa, "Ignore HPA limit (0=keep BIOS limits, 1=ignore limits, using full disk)");
+static int libata_dma_mask = ATA_DMA_MASK_ATA|ATA_DMA_MASK_ATAPI|ATA_DMA_MASK_CFA;
+module_param_named(dma, libata_dma_mask, int, 0444);
+MODULE_PARM_DESC(dma, "DMA enable/disable (0x1==ATA, 0x2==ATAPI, 0x4==CF)");
+
static int ata_probe_timeout = ATA_TMOUT_INTERNAL / HZ;
module_param(ata_probe_timeout, int, 0444);
MODULE_PARM_DESC(ata_probe_timeout, "Set ATA probing timeout (seconds)");
@@ -2917,16 +2921,29 @@ int ata_do_set_mode(struct ata_link *link, struct ata_device **r_failed_dev)
/* step 1: calculate xfer_mask */
for (i = 0; i < ATA_MAX_DEVICES; i++) {
unsigned int pio_mask, dma_mask;
+ unsigned int mode_mask;
dev = &ap->device[i];
if (!ata_dev_enabled(dev))
continue;
+ mode_mask = ATA_DMA_MASK_ATA;
+ if (dev->class == ATA_DEV_ATAPI)
+ mode_mask = ATA_DMA_MASK_ATAPI;
+ else if (ata_id_is_cfa(dev->id))
+ mode_mask = ATA_DMA_MASK_CFA;
+
ata_dev_xfermask(dev);
pio_mask = ata_pack_xfermask(dev->pio_mask, 0, 0);
dma_mask = ata_pack_xfermask(0, dev->mwdma_mask, dev->udma_mask);
+
+ if (libata_dma_mask & mode_mask)
+ dma_mask = ata_pack_xfermask(0, dev->mwdma_mask, dev->udma_mask);
+ else
+ dma_mask = 0;
+
dev->pio_mode = ata_xfer_mask2mode(pio_mask);
dev->dma_mode = ata_xfer_mask2mode(dma_mask);
diff --git a/include/linux/libata.h b/include/linux/libata.h
index ca296a5..84dfc23 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -331,6 +331,12 @@ enum {
ATA_HORKAGE_NONCQ = (1 << 2), /* Don't use NCQ */
ATA_HORKAGE_MAX_SEC_128 = (1 << 3), /* Limit max sects to 128 */
ATA_HORKAGE_BROKEN_HPA = (1 << 4), /* Broken HPA */
+
+ /* DMA mask for user DMA control: User visible values; DO NOT
+ renumber */
+ ATA_DMA_MASK_ATA = (1 << 0), /* DMA on ATA Disk */
+ ATA_DMA_MASK_ATAPI = (1 << 1), /* DMA on ATAPI */
+ ATA_DMA_MASK_CFA = (1 << 2), /* DMA on CF Card */
};
enum hsm_task_states {
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3359
retrieving revision 1.3360
diff -u -r1.3359 -r1.3360
--- kernel-2.6.spec 18 Oct 2007 14:45:23 -0000 1.3359
+++ kernel-2.6.spec 18 Oct 2007 16:58:46 -0000 1.3360
@@ -571,7 +571,7 @@
Patch660: linux-2.6-libata-ali-atapi-dma.patch
Patch663: linux-2.6-ata-quirk.patch
-Patch672: linux-2.6-libata-pata-dma-disable-option.patch
+Patch672: linux-2.6-libata-add-dma-disable-option.patch
Patch676: linux-2.6-ppc-pegasos-via-ata-legacy-irq.patch
Patch680: linux-2.6-wireless.patch
@@ -600,7 +600,7 @@
Patch750: linux-2.6-firewire-multi-lun.patch
Patch751: linux-2.6-firewire-lockdep.patch
-#Patch770: linux-2.6-acpi-gpe-list-fix-sleep.patch
+Patch770: linux-2.6-acpi-gpe-list-fix-sleep.patch
Patch780: linux-2.6-usb-storage-initialize-huawei-e220-properly.patch
Patch781: linux-2.6-usb-suspend-classes.patch
@@ -1222,8 +1222,8 @@
# libata: don't initialize sg in ata_exec_internal() if DMA_NONE
# ia64 ata quirk
ApplyPatch linux-2.6-ata-quirk.patch
-# add libata.pata_dma kernel option
-ApplyPatch linux-2.6-libata-pata-dma-disable-option.patch
+# add libata.dma kernel option
+ApplyPatch linux-2.6-libata-add-dma-disable-option.patch
# fix Pegasos libata glitches
ApplyPatch linux-2.6-ppc-pegasos-via-ata-legacy-irq.patch
@@ -1276,8 +1276,7 @@
ApplyPatch linux-2.6-usb-storage-initialize-huawei-e220-properly.patch
# ACPI patches
-# This file is missing...?
-#ApplyPatch linux-2.6-acpi-gpe-list-fix-sleep.patch
+ApplyPatch linux-2.6-acpi-gpe-list-fix-sleep.patch
# Fix excessive wakeups
# Make hdaps timer only tick when in use.
@@ -2217,6 +2216,12 @@
%endif
%changelog
+* Thu Oct 18 2007 Chuck Ebbert <cebbert at redhat.com>
+- Add missing ACPI patch.
+- Switch to upstream libata DMA disable code
+ (libata.pata_dma parameter is now libata.dma)
+- Remove some new/experimental items from config.
+
* Thu Oct 18 2007 John W. Linville <linville at redhat.com>
- avoid null ptr dereference in rx path of zd1201 driver
--- linux-2.6-libata-pata-dma-disable-option.patch DELETED ---
- Previous message (by thread): rpms/libpng/F-7 .cvsignore, 1.12, 1.13 libpng-pngconf.patch, 1.1, 1.2 libpng.spec, 1.40, 1.41 sources, 1.12, 1.13 libpng-trns-bug.patch, 1.1, NONE
- Next message (by thread): rpms/kernel/F-7/configs config-generic,1.338,1.339
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list