Received: by 2002:a05:6520:4211:b029:f4:110d:56bc with SMTP id o17csp2105058lkv; Thu, 20 May 2021 03:31:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyUiXoKurkapMIoI0cLYM9sKHjbIoYCYgOTgeIaxazvVtqruhscqQATyEwtrJT7S5M2+yO/ X-Received: by 2002:a17:906:e09:: with SMTP id l9mr3927656eji.528.1621506699879; Thu, 20 May 2021 03:31:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621506699; cv=none; d=google.com; s=arc-20160816; b=KO5ivdB7b4BbnZydCUC0E3DwtwIDOQefcbA0NNEI69Mbbuc9JXTXent/N5h++pFg3i MWrT0QQqbeDbINPt5zwEXQs3P3NJ7JGsPpA4QCp671sUEbPYsQtNCAsEbwvrpOE4QgFe ZgsV3VTXdguv9CmOGk55CN/X2ci3LxUqS7uVmZZD7dIv9sYV2BuPS+XaJtFw1wsGuNLj 4tAWdG9+n+pfcHSvYe5YxMXuC/rqhkLxzL8Rxg6UuBp9OUFd9oUNTKUxbMun38tTYgr8 OgdZ+AgPyeTJYuuLJUrhqkAY38MnA7MrLrdcO7+cE6F0RR6DJM+MyE5QKQ4H55Q0ZHnB E3Xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from; bh=+sS6bxxSzawOTr0IOeiHped1AsjgilnFdDN/cnjIFfI=; b=WFpYxlNtJ80buVXDqNXM4pB76ST6W+obtRnYaF2LJlwxLPxZHGiWLHrin6d2ltmjeh n5TLPYeE+TlvzyiKsvM/RJHnAtgdPZQ6oPOuashLk+idp96NyjBx5LNlYM8oG2CyCEjR Jb7Ds5Kcn31Syswqz3HGBB4V+TeLEiRpVw8NDcA842RneFTtfAafETJgkaAgIHrcZzdE cxYxeSRHHFY9Ikj7KRm01JLxi8QiYTVNsf/RNAP2OjahdjzUoZanU1xZoJ5eYE9rDDmz nF2npZ8WlGk5d9w2BAHQJTnb1bkSYuFbM5CmgvPU1//SObVpjq3fZLahF2BqQtqUMsrg dhwA== 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 lu18si2301744ejb.247.2021.05.20.03.31.15; Thu, 20 May 2021 03:31:39 -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 S237224AbhETKac (ORCPT + 99 others); Thu, 20 May 2021 06:30:32 -0400 Received: from twspam01.aspeedtech.com ([211.20.114.71]:28355 "EHLO twspam01.aspeedtech.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236182AbhETKSN (ORCPT ); Thu, 20 May 2021 06:18:13 -0400 Received: from mail.aspeedtech.com ([192.168.0.24]) by twspam01.aspeedtech.com with ESMTP id 14KA1ABH077452; Thu, 20 May 2021 18:01:10 +0800 (GMT-8) (envelope-from steven_lee@aspeedtech.com) Received: from slee-VirtualBox.localdomain (192.168.100.253) by TWMBX02.aspeed.com (192.168.0.24) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 20 May 2021 18:13:48 +0800 From: Steven Lee To: Rob Herring , Joel Stanley , "Andrew Jeffery" , Adrian Hunter , "Ulf Hansson" , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , open list , "moderated list:ASPEED SD/MMC DRIVER" , "open list:ASPEED SD/MMC DRIVER" CC: , , , Subject: [PATCH v4 1/3] ARM: dts: aspeed: ast2600evb: Add sdhci node and gpio regulator for A2 evb. Date: Thu, 20 May 2021 18:13:43 +0800 Message-ID: <20210520101346.16772-2-steven_lee@aspeedtech.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210520101346.16772-1-steven_lee@aspeedtech.com> References: <20210520101346.16772-1-steven_lee@aspeedtech.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [192.168.100.253] X-ClientProxiedBy: TWMBX02.aspeed.com (192.168.0.24) To TWMBX02.aspeed.com (192.168.0.24) X-DNSRBL: X-MAIL: twspam01.aspeedtech.com 14KA1ABH077452 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org AST2600 A2(or newer) EVB has gpio regulators for toggling signal voltage between 3.3v and 1.8v, the patch adds sdhci node and gpio regulator in the new dts file and adds commment for describing the reference design. Signed-off-by: Steven Lee --- arch/arm/boot/dts/aspeed-ast2600-evb-a2.dts | 98 +++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 arch/arm/boot/dts/aspeed-ast2600-evb-a2.dts diff --git a/arch/arm/boot/dts/aspeed-ast2600-evb-a2.dts b/arch/arm/boot/dts/aspeed-ast2600-evb-a2.dts new file mode 100644 index 000000000000..d581e8069a82 --- /dev/null +++ b/arch/arm/boot/dts/aspeed-ast2600-evb-a2.dts @@ -0,0 +1,98 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +// Copyright 2021 IBM Corp. + +#include "aspeed-ast2600-evb.dts" +#include + +/ { + model = "AST2600 A2 EVB"; + compatible = "aspeed,ast2600"; + + vcc_sdhci0: regulator-vcc-sdhci0 { + compatible = "regulator-fixed"; + regulator-name = "SDHCI0 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpios = <&gpio0 168 + GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vccq_sdhci0: regulator-vccq-sdhci0 { + compatible = "regulator-gpio"; + regulator-name = "SDHCI0 VccQ"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + gpios = <&gpio0 169 + GPIO_ACTIVE_HIGH>; + gpios-states = <1>; + states = <3300000 1>, + <1800000 0>; + }; + + vcc_sdhci1: regulator-vcc-sdhci1 { + compatible = "regulator-fixed"; + regulator-name = "SDHCI1 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpios = <&gpio0 170 + GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vccq_sdhci1: regulator-vccq-sdhci1 { + compatible = "regulator-gpio"; + regulator-name = "SDHCI1 VccQ"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + gpios = <&gpio0 171 + GPIO_ACTIVE_HIGH>; + gpios-states = <1>; + states = <3300000 1>, + <1800000 0>; + }; +}; + +&sdc { + status = "okay"; +}; + +/* + * The signal voltage of sdhci0 and sdhci1 on AST2600-A2 EVB is able to be + * toggled by GPIO pins. + * In the reference design, GPIOV0 of AST2600-A2 EVB is connected to the + * power load switch that providing 3.3v to sdhci0 vdd, GPIOV1 is connected to + * a 1.8v and a 3.3v power load switch that providing signal voltage to + * sdhci0 bus. + * If GPIOV0 is active high, sdhci0 is enabled, otherwise, sdhci0 is disabled. + * If GPIOV1 is active high, 3.3v power load switch is enabled, sdhci0 signal + * voltage is 3.3v, otherwise, 1.8v power load switch will be enabled, + * sdhci0 signal voltage becomes 1.8v. + * AST2600-A2 EVB also support toggling signal voltage for sdhci1. + * The design is the same as sdhci0, it uses GPIOV2 as power-gpio and GPIOV3 + * as power-switch-gpio. + */ +&sdhci0 { + status = "okay"; + bus-width = <4>; + max-frequency = <100000000>; + sdhci-drive-type = /bits/ 8 <3>; + sdhci-caps-mask = <0x7 0x0>; + sdhci,wp-inverted; + vmmc-supply = <&vcc_sdhci0>; + vqmmc-supply = <&vccq_sdhci0>; + clk-phase-sd-hs = <7>, <200>; +}; + +&sdhci1 { + status = "okay"; + bus-width = <4>; + max-frequency = <100000000>; + sdhci-drive-type = /bits/ 8 <3>; + sdhci-caps-mask = <0x7 0x0>; + sdhci,wp-inverted; + vmmc-supply = <&vcc_sdhci1>; + vqmmc-supply = <&vccq_sdhci1>; + clk-phase-sd-hs = <7>, <200>; +}; + -- 2.17.1