Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp704737ybc; Tue, 12 Nov 2019 08:00:41 -0800 (PST) X-Google-Smtp-Source: APXvYqxSOt5+YHHM8D2YL0mnUQbk0T/MIGV51rVc4OJ1ZOmV1PfVQ7gmbKNDLJL7E/H9oNTGc2zJ X-Received: by 2002:a50:becf:: with SMTP id e15mr33479737edk.135.1573574441040; Tue, 12 Nov 2019 08:00:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1573574441; cv=none; d=google.com; s=arc-20160816; b=heLMJWKV3sR9rZdskwEZWkalTN84xHsjNXpcfApFOS3q8A7fczxp5NvIBppBdvs5/u fdLQsjclNhNGUOX4kHl+dKva983OBg5dLLv2DVG/hNGKPNPQfv2/GzkiU6r++NU2vKOW HhUgF+upZbub3Uk0ZRenxO+Oq8FpPgzAFaVTbTGnKsM+GCeD3jDruK6GmvjyUvHXHPtf YlLCmK3aS9bPbY7Ijk49DNkbOMQ+VJD53W8njaUWchwrcJ8TQutVUw8Ur4WuQ9mhmfuY j9IOfJNR4hLdKgjWrIOe/HFQOHlOLN06PinAOILipo5KBBpYzXYSEtMSsie03/H7PRCv f7dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=l2NzdYQz/sQZbBc/qgDLqXD9wmou0kds99RyKwYDFCM=; b=h2CRTQ9wu5bTlB5pcoe4/irOVA4jJS27bq5/QtRnnmXTnC043yLooaCTm57rbsTKKi 0dC90bU5qeu4xcPDN6crgPNPy4WLBpo+RPpvI3CmJsQvEJWeqLCuVWOgemQI2nlC9r6y zp6m8GeKFczs8ZlOaGfaOrKCK8KaBaLOwegGDURv6LgRPIMu5E1J3fTLCIgXWligRqcu R8F3ATCSI2UdaJX8e0wbYOEWEoW7MPj5povUO80dJP3AM96N8NeUPL/8cZcw66T2e+5O Vx+P91pZX9QKSLmpwuKR7ZK4k+B6HZXC4/8F0VpwhkdQf4+gsD2mV5MAn3iljssgvwCk /j0A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id fi6si189849ejb.430.2019.11.12.08.00.16; Tue, 12 Nov 2019 08:00:41 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726980AbfKLP7k (ORCPT + 99 others); Tue, 12 Nov 2019 10:59:40 -0500 Received: from mx2.suse.de ([195.135.220.15]:56904 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725954AbfKLP7k (ORCPT ); Tue, 12 Nov 2019 10:59:40 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id E801CB3BC; Tue, 12 Nov 2019 15:59:37 +0000 (UTC) From: Nicolas Saenz Julienne To: andrew.murray@arm.com, maz@kernel.org, linux-kernel@vger.kernel.org Cc: james.quinlan@broadcom.com, mbrugger@suse.com, f.fainelli@gmail.com, phil@raspberrypi.org, wahrenst@gmx.net, jeremy.linton@arm.com, Nicolas Saenz Julienne , Robin Murphy , bcm-kernel-feedback-list@broadcom.com, linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, devicetree@vger.kernel.org, netdev@vger.kernel.org, linux-rdma@vger.kernel.org, linux-rockchip@lists.infradead.org, iommu@lists.linux-foundation.org Subject: [PATCH v2 0/6] Raspberry Pi 4 PCIe support Date: Tue, 12 Nov 2019 16:59:19 +0100 Message-Id: <20191112155926.16476-1-nsaenzjulienne@suse.de> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series aims at providing support for Raspberry Pi 4's PCIe controller, which is also shared with the Broadcom STB family of devices. There was a previous attempt to upstream this some years ago[1] but was blocked as most STB PCIe integrations have a sparse DMA mapping[2] which is something currently not supported by the kernel. Luckily this is not the case for the Raspberry Pi 4. Note that the driver code is to be based on top of Rob Herring's series simplifying inbound and outbound range parsing. [1] https://patchwork.kernel.org/cover/10605933/ [2] https://patchwork.kernel.org/patch/10605957/ --- Changes since v1: - add generic rounddown/roundup_pow_two64() patch - Add MAINTAINERS patch - Fix Kconfig - Cleanup probe, use up to date APIs, exit on MSI failure - Get rid of linux,pci-domain and other unused constructs - Use edge triggered setup for MSI - Cleanup MSI implementation - Fix multiple cosmetic issues - Remove supend/resume code Jim Quinlan (3): dt-bindings: PCI: Add bindings for brcmstb's PCIe device PCI: brcmstb: add Broadcom STB PCIe host controller driver PCI: brcmstb: add MSI capability Nicolas Saenz Julienne (3): linux/log2.h: Add roundup/rounddown_pow_two64() family of functions ARM: dts: bcm2711: Enable PCIe controller MAINTAINERS: Add brcmstb PCIe controller .../bindings/pci/brcm,stb-pcie.yaml | 110 ++ MAINTAINERS | 4 + arch/arm/boot/dts/bcm2711.dtsi | 46 + drivers/net/ethernet/mellanox/mlx4/en_clock.c | 3 +- drivers/pci/controller/Kconfig | 9 + drivers/pci/controller/Makefile | 1 + drivers/pci/controller/pcie-brcmstb.c | 1179 +++++++++++++++++ drivers/pci/controller/pcie-cadence-ep.c | 7 +- drivers/pci/controller/pcie-cadence.c | 7 +- drivers/pci/controller/pcie-rockchip-ep.c | 9 +- include/linux/log2.h | 52 + kernel/dma/direct.c | 3 +- 12 files changed, 1412 insertions(+), 18 deletions(-) create mode 100644 Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml create mode 100644 drivers/pci/controller/pcie-brcmstb.c -- 2.24.0