From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753259AbdAZJKK (ORCPT ); Thu, 26 Jan 2017 04:10:10 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:45989 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753116AbdAZJGM (ORCPT ); Thu, 26 Jan 2017 04:06:12 -0500 From: Maxime Ripard To: Chen-Yu Tsai , Maxime Ripard , Ulf Hansson Cc: Rob Herring , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, Andre Przywara Subject: [PATCH v4 10/13] arm64: allwinner: a64: Increase the MMC max frequency Date: Thu, 26 Jan 2017 10:06:03 +0100 Message-Id: X-Mailer: git-send-email 2.11.0 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The eMMC controller seem to have a maximum frequency of 200MHz, while the regular MMC controllers are capped at 150MHz. Since older SoCs cannot go that high, we cannot change the default maximum frequency, but fortunately for us we have a property for that in the DT. This also has the side effect of allowing to use the MMC HS200 and SD SDR104 modes for the boards that support it (with either 1.2v or 1.8v IOs). Signed-off-by: Maxime Ripard arm64: allwinner: a64: Limit MMC0 and MMC1 rates to 150MHz Trying to set the bus to 200MHz on MMC1 when doing SDIO is failing. Allwinner sets the maximum for this bus to 150MHz, so enforce that limit. This hasn't been tested with MMC0, but the documented limit is the same, and I expect the behaviour to be the same. Signed-off-by: Maxime Ripard --- arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 3 +++ 1 file changed, 3 insertions(+), 0 deletions(-) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi index 7b79c319ad3c..cb3e0cf2191a 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi @@ -130,6 +130,7 @@ resets = <&ccu RST_BUS_MMC0>; reset-names = "ahb"; interrupts = ; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -143,6 +144,7 @@ resets = <&ccu RST_BUS_MMC1>; reset-names = "ahb"; interrupts = ; + max-frequency = <150000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; @@ -156,6 +158,7 @@ resets = <&ccu RST_BUS_MMC2>; reset-names = "ahb"; interrupts = ; + max-frequency = <200000000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; -- git-series 0.8.11