From 75447501ec986a2f9d3f1db9e53f79a3e24ded62 Mon Sep 17 00:00:00 2001 From: Yunpeng Gao Date: Fri, 23 Mar 2012 10:45:29 +0800 Subject: [PATCH] Change IRQ polarity to active high for Merrifield BZ: 27386 Seems the default IRQ polarity setting on ICS mainline (active low) does not work for Merrifield platform. At least it prevent the Merrifield storage driver from working. This patch change it to active high specificly for Merrfield platform. Signed-off-by: Yunpeng Gao Change-Id: I1107f84a707d4caade2308b83c4e2bde3eae4ac0 Reviewed-on: http://android.intel.com:8080/40286 Reviewed-by: Gao, Yunpeng Reviewed-by: Tang, Richard Tested-by: Sun, Jianhua Reviewed-by: buildbot Tested-by: buildbot --- arch/x86/pci/mrst.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/x86/pci/mrst.c b/arch/x86/pci/mrst.c index 23735bf..4cd2cef 100644 --- a/arch/x86/pci/mrst.c +++ b/arch/x86/pci/mrst.c @@ -242,7 +242,11 @@ static int intel_mid_pci_irq_enable(struct pci_dev *dev) irq_attr.ioapic = mp_find_ioapic(dev->irq); irq_attr.ioapic_pin = dev->irq; irq_attr.trigger = 1; /* level */ +#ifdef CONFIG_X86_MRFLD + irq_attr.polarity = 0; /* active high */ +#else irq_attr.polarity = 1; /* active low */ +#endif io_apic_set_pci_routing(&dev->dev, dev->irq, &irq_attr); return 0; -- 2.7.4