From 74d0357f39722fde9d41d0f05bc61fd9864e7c91 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Thu, 22 Nov 2018 14:51:00 +0000 Subject: [PATCH] fixes for rockchip, add back rock960 fix not yet upstream --- arm64-96boards-Rock960-CE-board-support.patch | 139 ++++++++++++++++++ .../generic/arm/CONFIG_PCIE_ROCKCHIP_HOST | 2 +- .../generic/arm/CONFIG_PHY_ROCKCHIP_PCIE | 2 +- kernel-aarch64-debug.config | 4 +- kernel-aarch64.config | 4 +- kernel-armv7hl-debug.config | 4 +- kernel-armv7hl-lpae-debug.config | 4 +- kernel-armv7hl-lpae.config | 4 +- kernel-armv7hl.config | 4 +- kernel.spec | 2 + 10 files changed, 155 insertions(+), 14 deletions(-) create mode 100644 arm64-96boards-Rock960-CE-board-support.patch diff --git a/arm64-96boards-Rock960-CE-board-support.patch b/arm64-96boards-Rock960-CE-board-support.patch new file mode 100644 index 000000000..2d0186abb --- /dev/null +++ b/arm64-96boards-Rock960-CE-board-support.patch @@ -0,0 +1,139 @@ +From patchwork Tue Oct 16 14:00:20 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Daniel Lezcano +X-Patchwork-Id: 1000432 +Return-Path: +Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) + by smtp.lore.kernel.org (Postfix) with ESMTP id 41BB8C04EBD + for ; Tue, 16 Oct 2018 14:01:24 +0000 (UTC) +Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) + by mail.kernel.org (Postfix) with ESMTP id 032862089E + for ; Tue, 16 Oct 2018 14:01:24 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (1024-bit key) header.d=linaro.org header.i=@linaro.org + header.b="OwrJnI6D" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 032862089E +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=linaro.org +Authentication-Results: mail.kernel.org; + spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org +Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand + id S1727241AbeJPVv6 (ORCPT + ); + Tue, 16 Oct 2018 17:51:58 -0400 +Received: from mail-wr1-f68.google.com ([209.85.221.68]:43800 "EHLO + mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org + with ESMTP id S1727149AbeJPVv6 (ORCPT + ); + Tue, 16 Oct 2018 17:51:58 -0400 +Received: by mail-wr1-f68.google.com with SMTP id n1-v6so25672615wrt.10 + for ; + Tue, 16 Oct 2018 07:01:21 -0700 (PDT) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=linaro.org; s=google; + h=from:to:cc:subject:date:message-id; + bh=AyjUgKMFmAFThaK4GvWsdrdl4JZ3kTa6zVPrOmGMjOA=; + b=OwrJnI6D/huHRM5jiagiGiKBxUHFUlMvwe1t2GexoIKOTqtFGY3vwPCkrAUWdnT5+f + n+wvqEq+enR14QpmLTY3VNYAsxMcDtJOZ2R2Cw0rRdiHypMeUGRanfszUimV9omTlSGH + ApMgMERT+Pim+X1tp/uH775sDaVLHsJDyJb2Y= +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=AyjUgKMFmAFThaK4GvWsdrdl4JZ3kTa6zVPrOmGMjOA=; + b=DO/kT4iXCQgCsPC53FV7CMKKHaDQNQtZUIfHfJGQ2iRgCRNsZSYU6JYHxxjsqWSLyq + c46PNGLDG4qPZf/tveVt9wc9SPdKTk3klyT5NnQvdlNY8uv5/GTXINOWmNE0xD9hqvaP + ml6yJRUA51/KJU73p7XhGvWlMmEuStLUtXa4rlqKgush6lllYhSFpca2xkiKFhqcd+Bc + HHXRh2i0OVgTdmdb0+lSKyLXm74UHrhv1WEbgjGm+Mharwz/qsidTCXfqKPC7izgstBS + L+mjOACqna60eEsABW/p2nH9vxXAsU2ArAnmB714yeh9uckl1uRzYmMQCSD1LmmBN0q4 + 4UvQ== +X-Gm-Message-State: ABuFfojBZLkXjdlBc4AIjobar5Yk+68lR2+TEpPVGjsScLNzcmIj5eYO + yyEhPWYj3vc1MHjUcMfQLt7ahg== +X-Google-Smtp-Source: + ACcGV614RNSZy+OjIvsEaE9ONlZaDAeI1a8EpD+wP5Gt58g75Bh8DJgL6KJJ2ZjTenoZPwHLydiQBg== +X-Received: by 2002:adf:cd0c:: with SMTP id + w12-v6mr19534363wrm.67.1539698480294; + Tue, 16 Oct 2018 07:01:20 -0700 (PDT) +Received: from localhost.localdomain (221.56.88.92.rev.sfr.net. + [92.88.56.221]) + by smtp.gmail.com with ESMTPSA id + b81-v6sm10195012wmh.47.2018.10.16.07.01.18 + (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); + Tue, 16 Oct 2018 07:01:19 -0700 (PDT) +From: Daniel Lezcano +To: heiko@sntech.de +Cc: linux-kernel@vger.kernel.org, Rob Herring , + Mark Rutland , + Vicente Bergas , + Shawn Lin , + Ezequiel Garcia , + Enric Balletbo i Serra , + Manivannan Sadhasivam , + devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED + DEVICE TREE BINDINGS), + linux-arm-kernel@lists.infradead.org (moderated list:ARM/Rockchip SoC + support), + linux-rockchip@lists.infradead.org (open list:ARM/Rockchip SoC + support) +Subject: [PATCH] DT: rockchip: Fix stability issues with the 'performance' + governor on rock960 +Date: Tue, 16 Oct 2018 16:00:20 +0200 +Message-Id: <1539698431-12616-1-git-send-email-daniel.lezcano@linaro.org> +X-Mailer: git-send-email 2.7.4 +Sender: linux-kernel-owner@vger.kernel.org +Precedence: bulk +List-ID: +X-Mailing-List: linux-kernel@vger.kernel.org + +When the performance governor is set as default, the rock960 hangs +around one minute after booting, whatever the activity is (idle, key +pressed, loaded, ...). + +Based on the commit log found at https://patchwork.kernel.org/patch/10092377/ + +"vdd_log has no consumer and therefore will not be set to a specific +voltage. Still the PWM output pin gets configured and thence the vdd_log +output voltage will changed from it's default. Depending on the idle +state of the PWM this will slightly over or undervoltage the logic supply +of the RK3399 and cause instability with GbE (undervoltage) and PCIe +(overvoltage). Since the default value set by a voltage divider is the +correct supply voltage and we don't need to change it during runtime we +remove the rail from the devicetree completely so the PWM pin will not +be configured." + +After removing the vdd-log from the rock960's specific DT, the board +does no longer hang and shows a stable behavior. + +Apply the same change for the rock960 by removing the vdd-log from the +DT. + +Signed-off-by: Daniel Lezcano +Tested-by: Manivannan Sadhasivam +--- + arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi +index 6c8c4ab..56abbb0 100644 +--- a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi ++++ b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi +@@ -57,18 +57,6 @@ + regulator-always-on; + vin-supply = <&vcc_sys>; + }; +- +- vdd_log: vdd-log { +- compatible = "pwm-regulator"; +- pwms = <&pwm2 0 25000 0>; +- regulator-name = "vdd_log"; +- regulator-min-microvolt = <800000>; +- regulator-max-microvolt = <1400000>; +- regulator-always-on; +- regulator-boot-on; +- vin-supply = <&vcc_sys>; +- }; +- + }; + + &cpu_l0 { diff --git a/configs/fedora/generic/arm/CONFIG_PCIE_ROCKCHIP_HOST b/configs/fedora/generic/arm/CONFIG_PCIE_ROCKCHIP_HOST index c53c992b4..d2deb65e4 100644 --- a/configs/fedora/generic/arm/CONFIG_PCIE_ROCKCHIP_HOST +++ b/configs/fedora/generic/arm/CONFIG_PCIE_ROCKCHIP_HOST @@ -1 +1 @@ -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set diff --git a/configs/fedora/generic/arm/CONFIG_PHY_ROCKCHIP_PCIE b/configs/fedora/generic/arm/CONFIG_PHY_ROCKCHIP_PCIE index fc1bc129e..8112067fc 100644 --- a/configs/fedora/generic/arm/CONFIG_PHY_ROCKCHIP_PCIE +++ b/configs/fedora/generic/arm/CONFIG_PHY_ROCKCHIP_PCIE @@ -1 +1 @@ -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config index d4f9bb470..3c01292c0 100644 --- a/kernel-aarch64-debug.config +++ b/kernel-aarch64-debug.config @@ -4277,7 +4277,7 @@ CONFIG_PCIE_KIRIN=y CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set CONFIG_PCIE_XILINX_NWL=y CONFIG_PCIE_XILINX=y # CONFIG_PCI_FTPCI100 is not set @@ -4357,7 +4357,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m # CONFIG_PHY_SAMSUNG_USB2 is not set diff --git a/kernel-aarch64.config b/kernel-aarch64.config index 554ea1cda..8b449689d 100644 --- a/kernel-aarch64.config +++ b/kernel-aarch64.config @@ -4256,7 +4256,7 @@ CONFIG_PCIE_KIRIN=y CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set CONFIG_PCIE_XILINX_NWL=y CONFIG_PCIE_XILINX=y # CONFIG_PCI_FTPCI100 is not set @@ -4336,7 +4336,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m # CONFIG_PHY_SAMSUNG_USB2 is not set diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config index 70a91316f..4ae589a0d 100644 --- a/kernel-armv7hl-debug.config +++ b/kernel-armv7hl-debug.config @@ -4517,7 +4517,7 @@ CONFIG_PCIE_ECRC=y CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set CONFIG_PCIE_XILINX=y CONFIG_PCI_EXYNOS=y # CONFIG_PCI_FTPCI100 is not set @@ -4600,7 +4600,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config index d9f224fe6..12dbceccb 100644 --- a/kernel-armv7hl-lpae-debug.config +++ b/kernel-armv7hl-lpae-debug.config @@ -4303,7 +4303,7 @@ CONFIG_PCIE_ECRC=y # CONFIG_PCI_ENDPOINT_TEST is not set CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set # CONFIG_PCIE_XILINX is not set CONFIG_PCI_EXYNOS=y # CONFIG_PCI_FTPCI100 is not set @@ -4380,7 +4380,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config index 424f91139..13dce1e14 100644 --- a/kernel-armv7hl-lpae.config +++ b/kernel-armv7hl-lpae.config @@ -4283,7 +4283,7 @@ CONFIG_PCIE_ECRC=y # CONFIG_PCI_ENDPOINT_TEST is not set CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set # CONFIG_PCIE_XILINX is not set CONFIG_PCI_EXYNOS=y # CONFIG_PCI_FTPCI100 is not set @@ -4360,7 +4360,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config index 53d240a3f..04fa47295 100644 --- a/kernel-armv7hl.config +++ b/kernel-armv7hl.config @@ -4497,7 +4497,7 @@ CONFIG_PCIE_ECRC=y CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y -CONFIG_PCIE_ROCKCHIP_HOST=y +# CONFIG_PCIE_ROCKCHIP_HOST is not set CONFIG_PCIE_XILINX=y CONFIG_PCI_EXYNOS=y # CONFIG_PCI_FTPCI100 is not set @@ -4580,7 +4580,7 @@ CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_HDMI=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m -CONFIG_PHY_ROCKCHIP_PCIE=y +# CONFIG_PHY_ROCKCHIP_PCIE is not set CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m diff --git a/kernel.spec b/kernel.spec index 4d536b219..0f8687042 100644 --- a/kernel.spec +++ b/kernel.spec @@ -577,6 +577,8 @@ Patch305: qcom-msm89xx-fixes.patch # https://patchwork.kernel.org/project/linux-mmc/list/?submitter=71861 Patch306: arm-sdhci-esdhc-imx-fixes.patch +Patch307: arm64-96boards-Rock960-CE-board-support.patch + Patch330: bcm2835-cpufreq-add-CPU-frequency-control-driver.patch Patch331: bcm283x-drm-vc4-set-is_yuv-to-false-when-num_planes-1.patch