From patchwork Thu Apr 20 20:28:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Harvey X-Patchwork-Id: 752998 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3w89MP4JV1z9s03 for ; Fri, 21 Apr 2017 06:24:33 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Ny91KQRO"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gateworks-com.20150623.gappssmtp.com header.i=@gateworks-com.20150623.gappssmtp.com header.b="zgEs37Bf"; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Subject:Message-Id: Date:To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=qGnekg+yKqRN+OPVJkF0EXfiQs54Q2nuwfWwhvv3QSs=; b=Ny91KQROvR3EG9 if0ROEJSCPdKYnGw3lRkqQr5RzFaCYW6tyGnPNXJJn9Olo+p/e2NT3XpnMKBgPB8ngs9jM/mwaCPz 5DRxT12HlcN3/IHQ2vEFX18swKZnVB/L5bU56VPnB2BnBOPbiZ71TlCfO3448YSEPhuf2ExglgE5D CqJeb8GRp+amNcE3WPScsh3OWHZjbAvULY9RqTRx+r9r6TD4Gu4tJOAu1QC8Q+/1ehuqvrCaKks+T rChuMJGVc2r2oBUZeLVnCIcdQGTK03hCPBzsoyVKW9qooEc8K0O9HDykuPFyLx+UpX/+fQR2glEkx WHn85BLkfGJnFfFDC15w==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1d1Icn-0004nH-1R; Thu, 20 Apr 2017 20:24:21 +0000 Received: from mail-io0-x22f.google.com ([2607:f8b0:4001:c06::22f]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1d1Icj-0004kl-DQ for lede-dev@lists.infradead.org; Thu, 20 Apr 2017 20:24:19 +0000 Received: by mail-io0-x22f.google.com with SMTP id k87so85631082ioi.0 for ; Thu, 20 Apr 2017 13:23:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gateworks-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=Qx5eM5vZjxp9cr9S3DOBod1LLjgT/qXnJ7YXqaLehMQ=; b=zgEs37Bfa24BVVpzaqEJMoJpBuwKDaFl5++MNSoPUEYmjP7Z/vvZXc7Zh+eaBrFWg1 u2ZWArsulffkLra/GJUypDRfggtDkUB8GfbDcTUONnpwB9T61Ng2NOd9/PVguyBM0oie 8DoaUQ+h2pyt/oFVVa55en1ZAzRi+J2FkWvE6fUhkdHF6UgAkBEktDykLbxSZ8/QD4Fe 4erHSR2c52XWwOjnY7f8nUsQzZOqJ6pj7EU7OkbMM8mOrJT2U4gBTUrJHjFO+12xzKeb 75xR2Dtk81USYbYmi6ZORhlnFE4q+tNCeEpNWlx5IiFLzXvnBwSgIx4bfaI2RKfhgH/6 uLVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Qx5eM5vZjxp9cr9S3DOBod1LLjgT/qXnJ7YXqaLehMQ=; b=LGUAMbTHcgrnu10nx75UhBtrrLtuSYbMF9C9+r5TnGFWdDQMGzC/DpgxxeOfZ2Widm kALvgJ0nAuvS5Hmq7/Otf964UmfH1qCjxR34y61a7MaW1YDymIm0k46rTnGj63f3/bOz 1yS15eHc48L2ewyVcmb81DFAXu5dA4vDxTEuG5WXrygjkxy6W1SODY0m1K+Iato+mtR4 DCe6U7a/u0sMa6u8E+9+VeJKxggGEci701kyn9kCXViLxHz7iCsuN3IElnB7342W8mlc zIbQLDnDFiZeLOZQ4YpR4sRIGtHGEp+j+GAe6hgzBubyrE5r6IsQexiJmJjVzjwqfQTC JPKA== X-Gm-Message-State: AN3rC/6AsR0RUlA3JisiO3vocRwIFwoWhqPBnuY1sNsCXUr0M+xqpQY6 X4G0S003lche9weA X-Received: by 10.107.17.196 with SMTP id 65mr2584301ior.31.1492719834841; Thu, 20 Apr 2017 13:23:54 -0700 (PDT) Received: from tharvey.pdc.gateworks.com (68-189-91-139.static.snlo.ca.charter.com. [68.189.91.139]) by smtp.gmail.com with ESMTPSA id 189sm95968itx.25.2017.04.20.13.23.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 20 Apr 2017 13:23:53 -0700 (PDT) From: Tim Harvey To: lede-dev@lists.infradead.org Date: Thu, 20 Apr 2017 13:28:20 -0700 Message-Id: <1492720100-21195-1-git-send-email-tharvey@gateworks.com> X-Mailer: git-send-email 2.7.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170420_132417_538259_21F7D59D X-CRM114-Status: GOOD ( 12.37 ) X-Spam-Score: -2.6 (--) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-2.6 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [2607:f8b0:4001:c06:0:0:0:22f listed in] [list.dnswl.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.0 UPPERCASE_50_75 message body is 50-75% uppercase Subject: [LEDE-DEV] [PATCH] imx6: disable MSI interrupts X-BeenThere: lede-dev@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Koen Vandeputte , nbd@nbd.name MIME-Version: 1.0 Sender: "Lede-dev" Errors-To: lede-dev-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org The IMX6 PCIe host controller does not fire legacy interrupts if MSI is enabled. A patch is being worked on to enable MSI at runtime only when it is needed but meanwhile this patch will disable MSI for the imx6 kernel. This fixes the no interrupt issue on cards/drivers that use legacy interrupts such as ath9k. Signed-off-by: Tim Harvey Tested-by: Koen Vandeputte --- target/linux/imx6/config-4.9 | 42 ++-------------------- .../linux/imx6/patches-4.9/200-disable-msi.patch | 22 ++++++++++++ 2 files changed, 24 insertions(+), 40 deletions(-) create mode 100644 target/linux/imx6/patches-4.9/200-disable-msi.patch diff --git a/target/linux/imx6/config-4.9 b/target/linux/imx6/config-4.9 index b4d23de..701bb53 100644 --- a/target/linux/imx6/config-4.9 +++ b/target/linux/imx6/config-4.9 @@ -1,7 +1,5 @@ CONFIG_AHCI_IMX=y CONFIG_ALIGNMENT_TRAP=y -# CONFIG_APM_EMULATION is not set -# CONFIG_ARCH_ARTPEC is not set CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_ARCH_HAS_ELF_RANDOMIZE=y CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y @@ -18,29 +16,22 @@ CONFIG_ARCH_MULTI_V6_V7=y CONFIG_ARCH_MULTI_V7=y CONFIG_ARCH_MXC=y CONFIG_ARCH_NR_GPIO=0 -# CONFIG_ARCH_RENESAS is not set # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_ARCH_TANGO is not set CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y CONFIG_ARM=y -# CONFIG_ARM_CPU_SUSPEND is not set +CONFIG_ARM_CPU_SUSPEND=y CONFIG_ARM_CRYPTO=y CONFIG_ARM_ERRATA_754322=y CONFIG_ARM_ERRATA_764369=y CONFIG_ARM_ERRATA_775420=y -# CONFIG_ARM_ERRATA_818325_852422 is not set -# CONFIG_ARM_ERRATA_821420 is not set -# CONFIG_ARM_ERRATA_825619 is not set -# CONFIG_ARM_ERRATA_852421 is not set -# CONFIG_ARM_ERRATA_852423 is not set CONFIG_ARM_GIC=y CONFIG_ARM_HAS_SG_CHAIN=y CONFIG_ARM_HEAVY_MB=y @@ -69,9 +60,6 @@ CONFIG_CLKSRC_PROBE=y CONFIG_CLONE_BACKWARDS=y CONFIG_CLZ_TAB=y CONFIG_COMMON_CLK=y -# CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_NXP is not set -# CONFIG_COMMON_CLK_PIC32 is not set CONFIG_CPUFREQ_DT=y CONFIG_CPUFREQ_DT_PLATDEV=y CONFIG_CPU_32v6K=y @@ -175,7 +163,6 @@ CONFIG_DMA_OF=y CONFIG_DTC=y CONFIG_EDAC_ATOMIC_SCRUB=y CONFIG_EDAC_SUPPORT=y -# CONFIG_EFI is not set # CONFIG_ENABLE_DEFAULT_TRACERS is not set CONFIG_ENCRYPTED_KEYS=y CONFIG_EXT2_FS=y @@ -211,8 +198,6 @@ CONFIG_GENERIC_IO=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_GENERIC_IRQ_SHOW_LEVEL=y -CONFIG_GENERIC_MSI_IRQ=y -CONFIG_GENERIC_MSI_IRQ_DOMAIN=y CONFIG_GENERIC_PCI_IOMAP=y CONFIG_GENERIC_PINCONF=y CONFIG_GENERIC_SCHED_CLOCK=y @@ -224,7 +209,6 @@ CONFIG_GLOB=y CONFIG_GPIOLIB=y CONFIG_GPIOLIB_IRQCHIP=y CONFIG_GPIO_GENERIC=y -# CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MXC=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCA953X_IRQ=y @@ -281,8 +265,6 @@ CONFIG_HAVE_SMP=y CONFIG_HAVE_SYSCALL_TRACEPOINTS=y CONFIG_HAVE_UID16=y CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y -# CONFIG_HISI_FEMAC is not set -# CONFIG_HWLAT_TRACER is not set CONFIG_HW_RANDOM=y CONFIG_HZ_FIXED=0 CONFIG_HZ_PERIODIC=y @@ -305,19 +287,12 @@ CONFIG_IRQ_WORK=y CONFIG_JBD2=y # CONFIG_JFFS2_FS is not set CONFIG_KEYS=y -# CONFIG_KEY_DH_OPERATIONS is not set -CONFIG_LD_DEAD_CODE_DATA_ELIMINATION=y -# CONFIG_LEDS_IS31FL319X is not set -# CONFIG_LEDS_IS31FL32XX is not set -# CONFIG_LEDS_TRIGGER_MTD is not set CONFIG_LIBFDT=y CONFIG_LOCK_SPIN_ON_OWNER=y CONFIG_LZO_COMPRESS=y CONFIG_LZO_DECOMPRESS=y CONFIG_MARVELL_PHY=y CONFIG_MDIO_BOARDINFO=y -# CONFIG_MDIO_HISI_FEMAC is not set -# CONFIG_MFD_ACT8945A is not set # CONFIG_MFD_MAX77620 is not set CONFIG_MFD_SYSCON=y CONFIG_MICREL_PHY=y @@ -338,7 +313,6 @@ CONFIG_MPILIB=y CONFIG_MTD_NAND=y CONFIG_MTD_NAND_ECC=y CONFIG_MTD_NAND_GPMI_NAND=y -# CONFIG_MTD_NAND_MTK is not set # CONFIG_MTD_PHYSMAP_OF_VERSATILE is not set CONFIG_MTD_UBI=y CONFIG_MTD_UBI_BEB_LIMIT=20 @@ -353,10 +327,8 @@ CONFIG_MXS_DMA=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEON=y CONFIG_NET_DSA=y -# CONFIG_B53 is not set CONFIG_NET_DSA_MV88E6XXX=y CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y -# CONFIG_NET_DSA_QCA8K is not set CONFIG_NET_DSA_TAG_DSA=y CONFIG_NET_DSA_TAG_EDSA=y CONFIG_NET_FLOW_LIMIT=y @@ -386,18 +358,14 @@ CONFIG_OUTER_CACHE=y CONFIG_OUTER_CACHE_SYNC=y CONFIG_PADATA=y CONFIG_PAGE_OFFSET=0x80000000 -# CONFIG_PARAVIRT is not set -# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set CONFIG_PCI=y CONFIG_PCIEAER=y CONFIG_PCIEPORTBUS=y CONFIG_PCIE_DW=y -CONFIG_PCIE_DW_PLAT=y +CONFIG_PCIE_PME=y CONFIG_PCI_DOMAINS=y CONFIG_PCI_DOMAINS_GENERIC=y CONFIG_PCI_IMX6=y -CONFIG_PCI_MSI=y -CONFIG_PCI_MSI_IRQ_DOMAIN=y CONFIG_PERF_USE_VMALLOC=y CONFIG_PGTABLE_LEVELS=2 CONFIG_PHYLIB=y @@ -423,9 +391,6 @@ CONFIG_PTP_1588_CLOCK=y CONFIG_PWM=y CONFIG_PWM_IMX=y CONFIG_PWM_SYSFS=y -CONFIG_PWRSEQ_EMMC=y -CONFIG_PWRSEQ_SIMPLE=y -# CONFIG_QORIQ_THERMAL is not set CONFIG_RAS=y CONFIG_RATIONAL=y CONFIG_RCU_STALL_COMMON=y @@ -442,9 +407,6 @@ CONFIG_REGULATOR_ANATOP=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_LTC3676=y CONFIG_REGULATOR_PFUZE100=y -# CONFIG_REGULATOR_PV88060 is not set -# CONFIG_REGULATOR_PV88080 is not set -# CONFIG_REGULATOR_PV88090 is not set CONFIG_RFS_ACCEL=y CONFIG_RPS=y CONFIG_RTC_CLASS=y diff --git a/target/linux/imx6/patches-4.9/200-disable-msi.patch b/target/linux/imx6/patches-4.9/200-disable-msi.patch new file mode 100644 index 0000000..290147c --- /dev/null +++ b/target/linux/imx6/patches-4.9/200-disable-msi.patch @@ -0,0 +1,22 @@ +The IMX6 PCIe host controller does not fire legacy interrupts when MSI is +enabled. A patch is being worked on upstream to only enable MSI at runtime +when needed, but until that is ready we will allow MSI to be disabled. + +--- a/drivers/pci/host/Kconfig ++++ b/drivers/pci/host/Kconfig +@@ -51,7 +51,6 @@ config PCIE_DW_PLAT + + config PCIE_DW + bool +- depends on PCI_MSI_IRQ_DOMAIN + + config PCI_EXYNOS + bool "Samsung Exynos PCIe controller" +@@ -63,7 +62,6 @@ config PCI_EXYNOS + config PCI_IMX6 + bool "Freescale i.MX6 PCIe controller" + depends on SOC_IMX6Q +- depends on PCI_MSI_IRQ_DOMAIN + select PCIEPORTBUS + select PCIE_DW +