From: <abe...@us...> - 2017-06-04 16:06:38
|
Revision: 8374 http://sourceforge.net/p/astlinux/code/8374 Author: abelbeck Date: 2017-06-04 16:06:36 +0000 (Sun, 04 Jun 2017) Log Message: ----------- kernel, add patch for x86: HPET force enable for e6xx based systems, Available in Linux 3.18 and later As the Soekris net6501 and other e6xx based systems do not have any ACPI implementation, HPET won't get enabled. This patch enables HPET on such platforms. Added Paths: ----------- branches/1.0/project/astlinux/kernel-patches/linux-510-x86-HPET-force-enable-for-e6xx-based-systems.patch Added: branches/1.0/project/astlinux/kernel-patches/linux-510-x86-HPET-force-enable-for-e6xx-based-systems.patch =================================================================== --- branches/1.0/project/astlinux/kernel-patches/linux-510-x86-HPET-force-enable-for-e6xx-based-systems.patch (rev 0) +++ branches/1.0/project/astlinux/kernel-patches/linux-510-x86-HPET-force-enable-for-e6xx-based-systems.patch 2017-06-04 16:06:36 UTC (rev 8374) @@ -0,0 +1,41 @@ +diff --git a/arch/x86/kernel/quirks.c b/arch/x86/kernel/quirks.c +index ff898bb..176a0f9 100644 +--- a/arch/x86/kernel/quirks.c ++++ b/arch/x86/kernel/quirks.c +@@ -498,6 +498,24 @@ void force_hpet_resume(void) + } + + /* ++ * According to the datasheet e6xx systems have the HPET hardwired to ++ * 0xfed00000 ++ */ ++static void e6xx_force_enable_hpet(struct pci_dev *dev) ++{ ++ if (hpet_address || force_hpet_address) ++ return; ++ ++ force_hpet_address = 0xFED00000; ++ force_hpet_resume_type = NONE_FORCE_HPET_RESUME; ++ dev_printk(KERN_DEBUG, &dev->dev, "Force enabled HPET at " ++ "0x%lx\n", force_hpet_address); ++ return; ++} ++DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E6XX_CU, ++ e6xx_force_enable_hpet); ++ ++/* + * HPET MSI on some boards (ATI SB700/SB800) has side effect on + * floppy DMA. Disable HPET MSI on such platforms. + * See erratum #27 (Misinterpreted MSI Requests May Result in +diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h +index 6ed0bb7..aa0d390 100644 +--- a/include/linux/pci_ids.h ++++ b/include/linux/pci_ids.h +@@ -2859,6 +2859,7 @@ + #define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601 + #define PCI_DEVICE_ID_INTEL_SCH_LPC 0x8119 + #define PCI_DEVICE_ID_INTEL_SCH_IDE 0x811a ++#define PCI_DEVICE_ID_INTEL_E6XX_CU 0x8183 + #define PCI_DEVICE_ID_INTEL_ITC_LPC 0x8186 + #define PCI_DEVICE_ID_INTEL_82454GX 0x84c4 + #define PCI_DEVICE_ID_INTEL_82450GX 0x84c5 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |