Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp609303ybg; Fri, 12 Jun 2020 09:49:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwM6PZWOSmLAzTDm4UbHXz09WBLHBoF0e3MLl/lpAZQHPCdwgRudEyLVqBXeetLnhO6XS8/ X-Received: by 2002:a17:906:6890:: with SMTP id n16mr1512321ejr.553.1591980576638; Fri, 12 Jun 2020 09:49:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591980576; cv=none; d=google.com; s=arc-20160816; b=Y0k30+MA1g8ROCgfjUdbfIO2/+IoAuSkUIAKRpHm6gd96L+SqXRHqPrC7qyTNTVUFS SVXrwV2akV9AdB2U5WZ/6b19+ZCaoQzWue4u7u/8TDmEkW+wAcjhA31i1JyeMlN0mqk/ 8OW29Xe+oxlMTP6v5LpC80WS4IvN6RaRG9octVYpkIhpf/ybL95gn0E5KDEdAMUm3HJ8 SIyXUi4vCGuBYJGDMLhsJjc5U/Xgiv/0txsMkjG7Me62yIGS5Cj1hy/70or403HmNYo2 hM47qc1nPmnVO0EWMQzlF8zXWJT6qMftD3ScZ95khli/KkHfRx+aX/Lf7+nRb0ll8GZR x1rA== 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=mVrHQfMmhZdwK1/xAzGxG2RmrPNZ46V3YQdd+r/eklA=; b=ua0AhG8n+L3wYGKT74+gmY3cfVaAAd1RjsXVwgTKWIbC3vCqVedu+5DyFoY5kVsDMy BGw19nKRLLhs6zFHDI4EiEsiIQT6kzwQ96hDhVcywVp/W2urbQYk/VhSLp/UWBKeme2G WerG4YndtSV9d8NZXO10+cWa+GUFzUh4yxbBrrOzmaVFPU2tg/UQ3HTKmr2xv01EXKH9 i+yidWmRnyTcyeRgja9EDAVPI1qjPspZ+Mh5mKRyNdRLs3RhRZLfrJGXMwqP5dk5fZnv Vq4I7XTuDS4Z+e0BprOlUJ5jWRC8wXydyXElhUaI75coUhzCCxDplh5racjJdH4oRnP9 YvsQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y1si3656806edr.479.2020.06.12.09.49.13; Fri, 12 Jun 2020 09:49:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726347AbgFLQrX (ORCPT + 99 others); Fri, 12 Jun 2020 12:47:23 -0400 Received: from mx2.suse.de ([195.135.220.15]:58896 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726085AbgFLQrX (ORCPT ); Fri, 12 Jun 2020 12:47:23 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 1210FACD0; Fri, 12 Jun 2020 16:47:26 +0000 (UTC) From: Nicolas Saenz Julienne To: mbrugger@suse.com, u-boot@lists.denx.de, bmeng.cn@gmail.com, marex@denx.de, linux-kernel@vger.kernel.org Cc: sjg@chromium.org, m.szyprowski@samsung.com, s.nawrocki@samsung.com, mark.kettenis@xs4all.nl, Nicolas Saenz Julienne Subject: [PATCH v4 0/5] usb: xhci: Load Raspberry Pi 4 VL805's firmware Date: Fri, 12 Jun 2020 18:46:28 +0200 Message-Id: <20200612164632.25648-1-nsaenzjulienne@suse.de> X-Mailer: git-send-email 2.26.2 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 Newer revisions of the RPi4 need their xHCI chip, VL805, firmware to be loaded explicitly. Earlier versions didn't need that as they where using an EEPROM for that purpose. This series takes care of setting up the relevant infrastructure and run the firmware loading routine at the right moment. Note that this builds on top of Sylwester Nawrocki's "USB host support for Raspberry Pi 4 board" series. This works hand in hand with a series of device tree changes on the Linux device tree that are still being reviewed: https://patchwork.kernel.org/patch/11596403/ https://patchwork.kernel.org/patch/11596409/ --- Changes since v3: - Use reset controller Changes since v2: - Correct comment on patch #1 - Address Matthias' comments Changes since v1: - Rename function - Use callback in xhci-pci.c Nicolas Saenz Julienne (5): arm: rpi: Add function to trigger VL805's firmware load reset: Add Raspberry Pi 4 firmware reset controller configs: Enable support for reset controllers on RPi4 dm: pci: Assign controller device node to root bridge usb: xhci-pci: Add reset controller support arch/arm/mach-bcm283x/include/mach/mbox.h | 13 ++++ arch/arm/mach-bcm283x/include/mach/msg.h | 7 +++ arch/arm/mach-bcm283x/msg.c | 46 ++++++++++++++ configs/rpi_4_32b_defconfig | 1 + configs/rpi_4_defconfig | 1 + configs/rpi_arm64_defconfig | 1 + drivers/pci/pci-uclass.c | 15 ++++- drivers/reset/Kconfig | 10 ++++ drivers/reset/Makefile | 1 + drivers/reset/reset-raspberrypi.c | 60 +++++++++++++++++++ drivers/usb/host/xhci-pci.c | 38 +++++++++++- .../reset/raspberrypi,firmware-reset.h | 13 ++++ 12 files changed, 203 insertions(+), 3 deletions(-) create mode 100644 drivers/reset/reset-raspberrypi.c create mode 100644 include/dt-bindings/reset/raspberrypi,firmware-reset.h -- 2.26.2