From 56bb432a65bce10ff415231c3cdbf50cc81c03a6 Mon Sep 17 00:00:00 2001 From: Antonio Costa Date: Wed, 17 Dec 2025 23:37:43 +0000 Subject: [PATCH] rcar_gen4_pcie: add firmware for Renesas R-Car Gen4 PCIe controller This patch adds a firmware for the Renesas R-Car PCIe controller for R-Car Gen4 R8A779G SoCs. Signed-off-by: Antonio Costa Signed-off-by: Yusuke Goda Signed-off-by: Kuninori Morimoto --- LICENCE.r8a779g_pcie_phy | 28 ++++++++++++++++++++++++++++ WHENCE | 7 +++++++ rcar_gen4_pcie.bin | Bin 0 -> 32768 bytes 3 files changed, 35 insertions(+) create mode 100644 LICENCE.r8a779g_pcie_phy create mode 100644 rcar_gen4_pcie.bin diff --git a/LICENCE.r8a779g_pcie_phy b/LICENCE.r8a779g_pcie_phy new file mode 100644 index 00000000..6a56a631 --- /dev/null +++ b/LICENCE.r8a779g_pcie_phy @@ -0,0 +1,28 @@ +Copyright (c) 2025, Synopsys, Inc. +Copyright (c) 2025, Renesas Electronics Corporation +All rights reserved. + +Redistribution and use in binary form, without modification, are permitted +provided that the following conditions are met: + +1. Redistribution in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +2. The names of Synopsys, Inc. and Renesas Electronics Corporation may not be + used to endorse or promote products derived from this software without + specific prior written permission. +3. Reverse engineering, decompilation, or disassembly of this software is + not permitted. + +THIS SOFTWARE IS PROVIDED "AS IS" AND SYNOPSYS, INC. AND RENESAS ELECTRONICS +CORPORATION DISCLAIM ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL SYNOPSYS, INC. OR RENESAS ELECTRONICS CORPORATION BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, +OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/WHENCE b/WHENCE index cd2384aa..fe8bda04 100644 --- a/WHENCE +++ b/WHENCE @@ -9145,3 +9145,10 @@ Driver: sdx35 - Qualcomm SDX35 firmware image file for Foxconn vendor File: qcom/sdx35/foxconn/xbl_s_devprg_ns.melf License: Redistributable. See LICENSE.qcom and qcom/NOTICE.txt for details +-------------------------------------------------------------------------- + +Driver: pcie-rcar-gen4 - Renesas R-Car Gen4 PCIe controller + +File: rcar_gen4_pcie.bin + +Licence: Redistributable. See LICENCE.r8a779g_pcie_phy for details. diff --git a/rcar_gen4_pcie.bin b/rcar_gen4_pcie.bin new file mode 100644 index 0000000000000000000000000000000000000000..ca314c69b5794e06a39343dec5bdbb79bbe8d5f4 GIT binary patch literal 32768 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 literal 0 HcmV?d00001