Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp2919164ybc; Mon, 18 Nov 2019 06:48:22 -0800 (PST) X-Google-Smtp-Source: APXvYqzz9QQ2u2UuC8telYr5wRGIJnPPt7bN6Xpnq+LJPYFfYkdcG7rfRLG6eb1COdF1NLVcL4sx X-Received: by 2002:a17:906:57d7:: with SMTP id u23mr27582318ejr.130.1574088502263; Mon, 18 Nov 2019 06:48:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574088502; cv=none; d=google.com; s=arc-20160816; b=I/htr2S7pJ8ew842E8D4bfpCGon2Qw3+/erDHCnxTl/W1E2GkkheiGifrQdDvFdcHJ VxH0x5u46RTX00LwQJAbGM9dPZh7JKXLBssiHv5YzplsF3CsUuNkJaeri/0WGJu/duV0 vrGe5PVJSYnoZGJu/JSKE5BS4zOxZzSVWYJz5rk4sjOMPEKd2TJTVa7HX981xDNmNXfZ tbyKxzQ5J/oRXTdPOTzDj5VVh8M3AdPrRUT+PdmNWHKWCRsL5EUmoz4UzfN5VRZDBIM0 t5SrGx5KuYgQp+mUokwUVpEQ7TPVRAnCyqFN4EomH2MpwS6bhmD0gCQMOjeWR22Qc+dX wl+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=kqakfDfBXyvXvA813g84Sj1qBCMFawG874+BVcic4Ng=; b=WoORNEX83PHdY+kxdgbdZZXJV1Tbe17cxC8zCjZ8GUGEFp9C1x/IQMaGtARwyKZdOj BpA8xnXKzkjplpKIioTTGl/TMhau1B0m2Y6w8YL8JIetfdAXDb/ZVtCMOmB7LXsC/GzN hxSb4sVUya6TJ/LFQMcVvMAs+UTomY+LZ6hbCJVbp4IyDI8RhrQyujRC3zdmbhPsglR1 jKCC5EPDnr+JbQol1JhhOQyg3ycoO//vEKL8bGKW1bxwOT+31h18GBQDlaZcjOqdIO9o 95q3LnQ6GazKjfRLmH0X/h2uOeDOq2kidcidNOgQUqfFWg3YjqmyFuiA4lHNlPzbDnMk Jw7A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=U5JghCJK; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id re9si12032180ejb.332.2019.11.18.06.47.58; Mon, 18 Nov 2019 06:48:22 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=U5JghCJK; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727007AbfKROol (ORCPT + 99 others); Mon, 18 Nov 2019 09:44:41 -0500 Received: from mail.kernel.org ([198.145.29.99]:55630 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726668AbfKROol (ORCPT ); Mon, 18 Nov 2019 09:44:41 -0500 Received: from mail-qt1-f169.google.com (mail-qt1-f169.google.com [209.85.160.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id EE40720722; Mon, 18 Nov 2019 14:44:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574088280; bh=O/HQpk9RxiQEt7uI/mJqMP1X3ER13daw+30uHbVimaQ=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=U5JghCJKvhmVGeyCgR7y6BBjol75ucpzIMQUQd+3he26X7Q4PyY6E4mYfSGXclaqy 3yAMZ2Ypyk3RZU6/pUP0U9yEZyqL5jzD4TNKpy3c0kIUJmboeBpFZ+YBLovSUW6igG XZ3mMq2H52WHe30poxGPoFjh0JuTzraIGZhsAFuQ= Received: by mail-qt1-f169.google.com with SMTP id j5so19019546qtn.10; Mon, 18 Nov 2019 06:44:39 -0800 (PST) X-Gm-Message-State: APjAAAWVSpIvLjvUk5Yehim6LO+P67+TcwpoyxppawuvBnAokvIBOBOo wEf5wwDa6p2Nv86ADp1C6BTx5Jw5z2uMBYhckA== X-Received: by 2002:ac8:7612:: with SMTP id t18mr27614841qtq.143.1574088279114; Mon, 18 Nov 2019 06:44:39 -0800 (PST) MIME-Version: 1.0 References: <1572588353-110682-1-git-send-email-manish.narani@xilinx.com> <1572588353-110682-5-git-send-email-manish.narani@xilinx.com> <20191104231427.GA7606@bogus> In-Reply-To: From: Rob Herring Date: Mon, 18 Nov 2019 08:44:27 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v5 4/8] dt-bindings: mmc: Add optional generic properties for mmc To: Manish Narani Cc: "ulf.hansson@linaro.org" , "mark.rutland@arm.com" , "adrian.hunter@intel.com" , Michal Simek , Jolly Shah , Nava kishore Manne , Rajan Vaja , "linux-mmc@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , git Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Nov 11, 2019 at 4:07 AM Manish Narani wrote: > > Hi Rob, > > > > -----Original Message----- > > From: Rob Herring > > Sent: Tuesday, November 5, 2019 4:44 AM > > To: Manish Narani > > Cc: ulf.hansson@linaro.org; mark.rutland@arm.com; > > adrian.hunter@intel.com; Michal Simek ; Jolly Shah > > ; Nava kishore Manne ; Rajan Vaja > > ; linux-mmc@vger.kernel.org; > > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-arm- > > kernel@lists.infradead.org; git > > Subject: Re: [PATCH v5 4/8] dt-bindings: mmc: Add optional generic > > properties for mmc > > > > On Fri, Nov 01, 2019 at 11:35:49AM +0530, Manish Narani wrote: > > > Add optional properties for mmc hosts which are used to set clk delays > > > for different speed modes in the controller. > > > > > > Signed-off-by: Manish Narani > > > --- > > > .../bindings/mmc/mmc-controller.yaml | 92 +++++++++++++++++++ > > > 1 file changed, 92 insertions(+) > > > > > > diff --git a/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > > b/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > > > index 080754e0ef35..87a83d966851 100644 > > > --- a/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > > > +++ b/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > > > @@ -212,6 +212,98 @@ properties: > > > description: > > > eMMC HS400 enhanced strobe mode is supported > > > > > > + # Below mentioned are the clock (phase) delays which are to be > > configured > > > + # in the controller while switching to particular speed mode. The range > > > + # of values are 0 to 359 degrees. > > > + > > > + clk-phase-legacy: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for Legacy Mode. > > > + > > > + clk-phase-mmc-hs: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair degrees for MMC HS. > > > + > > > + clk-phase-sd-hs: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SD HS. > > > + > > > + clk-phase-uhs-sdr12: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SDR12. > > > + > > > + clk-phase-uhs-sdr25: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SDR25. > > > + > > > + clk-phase-uhs-sdr50: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SDR50. > > > + > > > + clk-phase-uhs-sdr104: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SDR104. > > > + > > > + clk-phase-uhs-ddr50: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for SD DDR50. > > > + > > > + clk-phase-mmc-ddr52: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for MMC DDR52. > > > + > > > + clk-phase-mmc-hs200: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for MMC HS200. > > > + > > > + clk-phase-mmc-hs400: > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32 > > > + - minimum: 0 > > > + - maximum: 359 > > > + description: > > > + Input/Output Clock Delay pair in degrees for MMC HS400. > > > > This can be condensed into: > > > > patternProperties: > > > > "^clk-phase-(legacy|sd-hs|mmc-(hs|hs[24]00|ddr52)|uhs- > > (sdr(12|25|50|104)|ddr50))$": > > > > Or if you want to divide them between SD and MMC ones, that would be > > fine for me. > > Below change should work? Please review. Running 'make dt_binding_check' would tell you... > --- a/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > +++ b/Documentation/devicetree/bindings/mmc/mmc-controller.yaml > @@ -333,6 +333,16 @@ patternProperties: > required: > - reg > > + "^clk-phase-(legacy|sd-hs|mmc-(hs|hs[24]00|ddr52)|uhs-(sdr(12|25|50|104)|ddr50))$": > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint32 > + - minimum: 0 > + - maximum: 359 Drop the '-' on maximum so that minimum/maximum are 1 item in the list. > + description: > + Set the clock (phase) delays which are to be configured in the > + controller while switching to particular speed mode. These values > + are in pair of degrees. > + > dependencies: > cd-debounce-delay-ms: [ cd-gpios ] > fixed-emmc-driver-type: [ non-removable ] > @@ -351,6 +361,7 @@ examples: > keep-power-in-suspend; > wakeup-source; > mmc-pwrseq = <&sdhci0_pwrseq>; > + clk-phase-sd-hs = <63>, <72>; This should fail because it is defined as a single int. Rob