From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756427AbdEUDmv (ORCPT ); Sat, 20 May 2017 23:42:51 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:19803 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1754435AbdEUDmt (ORCPT ); Sat, 20 May 2017 23:42:49 -0400 From: Ryder Lee To: Bjorn Helgaas , Rob Herring , Arnd Bergmann CC: , , , , , Red Hung , Ryder Lee Subject: [PATCH v5 0/2] Add PCIe host driver support for Mediatek SoCs Date: Sun, 21 May 2017 11:42:23 +0800 Message-ID: <1495338145-9384-1-git-send-email-ryder.lee@mediatek.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patch series add Mediatek Gen2 PCIe host controller driver and dt-binding document. It can be found on MT7623 series SoCs. This driver was validated using Broadcom Tigon3 and Intel(R) 82575/82576 gigabit ethernet card. Changes since v5: - rebase to Linux 4.12-rc1. - remove redundant module.h header and MODULE macros. Changes since v4: - move the per-port registers to the parent node. - use a valid compatible for hifsys controller. - use the 'sysirq' instead of 'gic' as a correct 'interrupt-parent' of the interrupt-map properties. 'sysirq' is an interrupt-controller that could help us to reverse GIC SPIs polarity so that we could properly set irq type to level low without any extra properties. It was a mistake to select wrong interrupt-parent on the previous versions. Now, we could remove unnecessary interrupt properties entirely from binding. Changes since v3: - correct sub-nodes unit addresses. Changes since v2: - modify Kconfig to avoid kbuild test error on some architecture. - change compatible string. - revise binding document: add missing interrupt-names. remove the board dts example and drop 'status' properties. remove unnecessary descriptions bout standard PCI bus binding. Changes since v1: - add .suppress_bind_attrs. - remove unnecessary *_valid_device() pattern. - remove PCI_PROBE_ONLY. - use the regular readl() instead of readl_relaxed(). - add .map_bus() and change to use pci_generic_config_read/pci_generic_config_write. - revise dt-binding document and move nonstandard properties to root node. - change compatible string. - use interrupt-map property and replace mtk_pcie_map_irq() with of_irq_parse_and_map_pci(). - use the new pci_register_host_bridge() method instead of pci_scan_root_bus()* Ryder Lee (2): PCI: mediatek: Add Mediatek PCIe host controller support dt-bindings: pcie: Add documentation for Mediatek PCIe .../bindings/pci/mediatek,mt7623-pcie.txt | 130 +++++ drivers/pci/host/Kconfig | 11 + drivers/pci/host/Makefile | 1 + drivers/pci/host/pcie-mediatek.c | 553 +++++++++++++++++++++ 4 files changed, 695 insertions(+) create mode 100644 Documentation/devicetree/bindings/pci/mediatek,mt7623-pcie.txt create mode 100644 drivers/pci/host/pcie-mediatek.c -- 1.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ryder Lee Subject: [PATCH v5 0/2] Add PCIe host driver support for Mediatek SoCs Date: Sun, 21 May 2017 11:42:23 +0800 Message-ID: <1495338145-9384-1-git-send-email-ryder.lee@mediatek.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Sender: linux-kernel-owner@vger.kernel.org To: Bjorn Helgaas , Rob Herring , Arnd Bergmann Cc: linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Red Hung , Ryder Lee List-Id: devicetree@vger.kernel.org Hi, This patch series add Mediatek Gen2 PCIe host controller driver and dt-binding document. It can be found on MT7623 series SoCs. This driver was validated using Broadcom Tigon3 and Intel(R) 82575/82576 gigabit ethernet card. Changes since v5: - rebase to Linux 4.12-rc1. - remove redundant module.h header and MODULE macros. Changes since v4: - move the per-port registers to the parent node. - use a valid compatible for hifsys controller. - use the 'sysirq' instead of 'gic' as a correct 'interrupt-parent' of the interrupt-map properties. 'sysirq' is an interrupt-controller that could help us to reverse GIC SPIs polarity so that we could properly set irq type to level low without any extra properties. It was a mistake to select wrong interrupt-parent on the previous versions. Now, we could remove unnecessary interrupt properties entirely from binding. Changes since v3: - correct sub-nodes unit addresses. Changes since v2: - modify Kconfig to avoid kbuild test error on some architecture. - change compatible string. - revise binding document: add missing interrupt-names. remove the board dts example and drop 'status' properties. remove unnecessary descriptions bout standard PCI bus binding. Changes since v1: - add .suppress_bind_attrs. - remove unnecessary *_valid_device() pattern. - remove PCI_PROBE_ONLY. - use the regular readl() instead of readl_relaxed(). - add .map_bus() and change to use pci_generic_config_read/pci_generic_config_write. - revise dt-binding document and move nonstandard properties to root node. - change compatible string. - use interrupt-map property and replace mtk_pcie_map_irq() with of_irq_parse_and_map_pci(). - use the new pci_register_host_bridge() method instead of pci_scan_root_bus()* Ryder Lee (2): PCI: mediatek: Add Mediatek PCIe host controller support dt-bindings: pcie: Add documentation for Mediatek PCIe .../bindings/pci/mediatek,mt7623-pcie.txt | 130 +++++ drivers/pci/host/Kconfig | 11 + drivers/pci/host/Makefile | 1 + drivers/pci/host/pcie-mediatek.c | 553 +++++++++++++++++++++ 4 files changed, 695 insertions(+) create mode 100644 Documentation/devicetree/bindings/pci/mediatek,mt7623-pcie.txt create mode 100644 drivers/pci/host/pcie-mediatek.c -- 1.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: From: Ryder Lee To: Bjorn Helgaas , Rob Herring , Arnd Bergmann Subject: [PATCH v5 0/2] Add PCIe host driver support for Mediatek SoCs Date: Sun, 21 May 2017 11:42:23 +0800 Message-ID: <1495338145-9384-1-git-send-email-ryder.lee@mediatek.com> MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Red Hung , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Ryder Lee , linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+bjorn=helgaas.com@lists.infradead.org List-ID: Hi, This patch series add Mediatek Gen2 PCIe host controller driver and dt-binding document. It can be found on MT7623 series SoCs. This driver was validated using Broadcom Tigon3 and Intel(R) 82575/82576 gigabit ethernet card. Changes since v5: - rebase to Linux 4.12-rc1. - remove redundant module.h header and MODULE macros. Changes since v4: - move the per-port registers to the parent node. - use a valid compatible for hifsys controller. - use the 'sysirq' instead of 'gic' as a correct 'interrupt-parent' of the interrupt-map properties. 'sysirq' is an interrupt-controller that could help us to reverse GIC SPIs polarity so that we could properly set irq type to level low without any extra properties. It was a mistake to select wrong interrupt-parent on the previous versions. Now, we could remove unnecessary interrupt properties entirely from binding. Changes since v3: - correct sub-nodes unit addresses. Changes since v2: - modify Kconfig to avoid kbuild test error on some architecture. - change compatible string. - revise binding document: add missing interrupt-names. remove the board dts example and drop 'status' properties. remove unnecessary descriptions bout standard PCI bus binding. Changes since v1: - add .suppress_bind_attrs. - remove unnecessary *_valid_device() pattern. - remove PCI_PROBE_ONLY. - use the regular readl() instead of readl_relaxed(). - add .map_bus() and change to use pci_generic_config_read/pci_generic_config_write. - revise dt-binding document and move nonstandard properties to root node. - change compatible string. - use interrupt-map property and replace mtk_pcie_map_irq() with of_irq_parse_and_map_pci(). - use the new pci_register_host_bridge() method instead of pci_scan_root_bus()* Ryder Lee (2): PCI: mediatek: Add Mediatek PCIe host controller support dt-bindings: pcie: Add documentation for Mediatek PCIe .../bindings/pci/mediatek,mt7623-pcie.txt | 130 +++++ drivers/pci/host/Kconfig | 11 + drivers/pci/host/Makefile | 1 + drivers/pci/host/pcie-mediatek.c | 553 +++++++++++++++++++++ 4 files changed, 695 insertions(+) create mode 100644 Documentation/devicetree/bindings/pci/mediatek,mt7623-pcie.txt create mode 100644 drivers/pci/host/pcie-mediatek.c -- 1.9.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel From mboxrd@z Thu Jan 1 00:00:00 1970 From: ryder.lee@mediatek.com (Ryder Lee) Date: Sun, 21 May 2017 11:42:23 +0800 Subject: [PATCH v5 0/2] Add PCIe host driver support for Mediatek SoCs Message-ID: <1495338145-9384-1-git-send-email-ryder.lee@mediatek.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, This patch series add Mediatek Gen2 PCIe host controller driver and dt-binding document. It can be found on MT7623 series SoCs. This driver was validated using Broadcom Tigon3 and Intel(R) 82575/82576 gigabit ethernet card. Changes since v5: - rebase to Linux 4.12-rc1. - remove redundant module.h header and MODULE macros. Changes since v4: - move the per-port registers to the parent node. - use a valid compatible for hifsys controller. - use the 'sysirq' instead of 'gic' as a correct 'interrupt-parent' of the interrupt-map properties. 'sysirq' is an interrupt-controller that could help us to reverse GIC SPIs polarity so that we could properly set irq type to level low without any extra properties. It was a mistake to select wrong interrupt-parent on the previous versions. Now, we could remove unnecessary interrupt properties entirely from binding. Changes since v3: - correct sub-nodes unit addresses. Changes since v2: - modify Kconfig to avoid kbuild test error on some architecture. - change compatible string. - revise binding document: add missing interrupt-names. remove the board dts example and drop 'status' properties. remove unnecessary descriptions bout standard PCI bus binding. Changes since v1: - add .suppress_bind_attrs. - remove unnecessary *_valid_device() pattern. - remove PCI_PROBE_ONLY. - use the regular readl() instead of readl_relaxed(). - add .map_bus() and change to use pci_generic_config_read/pci_generic_config_write. - revise dt-binding document and move nonstandard properties to root node. - change compatible string. - use interrupt-map property and replace mtk_pcie_map_irq() with of_irq_parse_and_map_pci(). - use the new pci_register_host_bridge() method instead of pci_scan_root_bus()* Ryder Lee (2): PCI: mediatek: Add Mediatek PCIe host controller support dt-bindings: pcie: Add documentation for Mediatek PCIe .../bindings/pci/mediatek,mt7623-pcie.txt | 130 +++++ drivers/pci/host/Kconfig | 11 + drivers/pci/host/Makefile | 1 + drivers/pci/host/pcie-mediatek.c | 553 +++++++++++++++++++++ 4 files changed, 695 insertions(+) create mode 100644 Documentation/devicetree/bindings/pci/mediatek,mt7623-pcie.txt create mode 100644 drivers/pci/host/pcie-mediatek.c -- 1.9.1