From patchwork Mon Jun 25 08:08:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jun Li X-Patchwork-Id: 934114 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="i/Mnk9U2"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41Dj1H4hLrz9ryk for ; Mon, 25 Jun 2018 18:25:55 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752625AbeFYIZw (ORCPT ); Mon, 25 Jun 2018 04:25:52 -0400 Received: from mail-eopbgr60079.outbound.protection.outlook.com ([40.107.6.79]:6750 "EHLO EUR04-DB3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752576AbeFYIZu (ORCPT ); Mon, 25 Jun 2018 04:25:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MV7ZTSi+9Q1t1d0nKgiRperPLgtDE8zgSXqoBrFic6g=; b=i/Mnk9U2DI7j1pQXgUp3Z9ucxKLZ8sqV8aThbuXz6jb8VngLTvz+y2pOOXcGxlYucc8iIodPULehohIEtLi5LF9SrtLHySxCNpJVvFWFT2yZfCfafHDHv6LXhqpjLUeSNk0bZ6CFTxinmnCJx7M2j/bkwV0CT7RlfvHK0kZQLDY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=jun.li@nxp.com; Received: from b47624-OptiPlex-7040.ap.freescale.net (92.121.68.129) by VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.884.24; Mon, 25 Jun 2018 08:25:42 +0000 From: Li Jun To: robh+dt@kernel.org, gregkh@linuxfoundation.org, heikki.krogerus@linux.intel.com, linux@roeck-us.net Cc: a.hajda@samsung.com, jun.li@nxp.com, cw00.choi@samsung.com, shufan_lee@richtek.com, peter.chen@nxp.com, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-imx@nxp.com Subject: [PATCH v7 01/14] dt-bindings: connector: add properties for typec Date: Mon, 25 Jun 2018 16:08:33 +0800 Message-Id: <1529914126-22550-2-git-send-email-jun.li@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1529914126-22550-1-git-send-email-jun.li@nxp.com> References: <1529914126-22550-1-git-send-email-jun.li@nxp.com> MIME-Version: 1.0 X-Originating-IP: [92.121.68.129] X-ClientProxiedBy: HK0PR04CA0004.apcprd04.prod.outlook.com (2603:1096:203:36::16) To VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 829b5e21-0b81-4501-d832-08d5da75403a X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020); SRVR:VI1PR0402MB3920; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 3:9URUHx7vitYasWl4CuY+i8xKS3ruMMmZhOiZTuJNwHQALK7qAERvUM+do2nOlb7cv5FA5pYyejWJFVA9sJsEutkL4CvD4yFaKq5lv44WLFjK56WRYUhQaNEe+Af18MMrQRiaIM+cr+Yj8SSaA66xHPeDClQSFRUVuAbNYTuq51AdxVJWAFKXggvZFQKIjGiTuR9RBAH5a6crhRlBbpcUf0VseHtfdMyWt7gRAmi5cmrbMM7wMqZIhSTYLboBBWta; 25:tjn/5E+ZkeyModxDzZ7KWVS+in7TsMlM/1xjynCq+eM7exR2KuEDe52VkBJEWv9OsFoEsFp0LaMdy1FxLUmwYrrATSJSf2qFEYefcF97uSLsJZdxN2Dq8EuA2meywlSspZ93gHearY4B/R9Fky0GZTuikl6T8tGRIfCgiGlbnou3cCug2Sb4pAOdgW4sRT+wFiLS7UA8/wE5sa5gHvHnd7JkyzOINeZDq7varV4lns+PwJI4U/UOIrDMrPNtoA9tjzU5Dc/SgFmQfrZnyViMjJ9+NiA2si+X3UMo6PXTVZ0gSO4t7Ty6oM8Atj8wVD3dArudPew1SC6wlSC2SmwAlg==; 31:/zuwv0M5HeeIXHyiWlLSDnAHkKttDsbbESdEQ7KRBtlHkrUEoLqQxt3ygtEk+BJqJC4unSDBS3xyBINRdfE1rgjESy+WgLLbrmDOXVUcgERNCVrhWg7jo2CBhKVKR+CDNjwRsFDkB/kWzEnY6e/zbLRy0VRqqoFEk1P9cVpw+2Qk8P/C50UhFCw6969KWmw0OKYQRkKs7dZ2usK3guyR7SHgwKTjDN9O7Zkk2arfy7U= X-MS-TrafficTypeDiagnostic: VI1PR0402MB3920: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 20:V3T6yojcHZqZfnWoiz/KZcCv29ugLIzp/GC27XuknH8sT+oEbSxu+0OEcvKwm74uH3QLbeORv6yNgsdks8k1ugD9JQXy01e/+RmetAw1Ug9a75QJVXoPpvNlbSILd6+E3FWtgG6KC4JoUU1X8EYQsIs/ocgVCWSvuKTnyQY2Bz4WCKG9VlFnpwRtmFkjrauVAS7tYGql/QUCwp07yyNySFbcpp3L3bIHMjgdBJhqGttHPE/2NxfKfMXwI2CCYiM962+HPVfc7yV7ul8VDcY+TVaAPavAJdgBPBCWSSohbc1/s4E9aXW8yvMeEdVSa5f6TxESWNnKTClMQcOOcYGTm7GbQm5wyl/Iwrh646z+bX2QnTNWI0OE6A++65AJDHFocVfIAVbuGs2/MTYZHB2Fmop/s5HxaIURpJgaNgpM0hUewVXtdW73uI4H0oKRZZ1qI6Ja+HJbEoWhgFP9v/yItCVU3RdQ+EIs9FZ285PWRnou0mwT6rj5bG8A9pkod77B; 4:75l1LQKESzYO2IBlyWjNOjmfGu5PbnAYpIxiDe0mYPQxF+q2HlEMUrSUkOshcjDYea4Azl1ve7l2RWt++nsEPjR84IEKUZ7RPEoNB05Sp5mcqgp3etWPHn5Y6N1Z/0zm2Xv8dyw0K1nWKMYLVGTuOTazRDQtNNoOXgAgKLUR7vNYDUmTYrQV8WEarV7f8S5vJ2IKkCzJoxy3BhFtwVKUAfpC09aEBHuN8o0GuQSKkf7RR/VmUqIqaV8byB+yTFOVyxY95TDcIoemni6oHkT668kfXO/phlIzlIQqL8a+ojCvVPsOdQyojAP2WvJZzBgy X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:VI1PR0402MB3920; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0402MB3920; X-Forefront-PRVS: 0714841678 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(346002)(39380400002)(39860400002)(396003)(376002)(199004)(189003)(53936002)(25786009)(47776003)(316002)(2906002)(5890100001)(16586007)(6486002)(36756003)(4326008)(386003)(6506007)(186003)(6512007)(478600001)(26005)(16526019)(97736004)(8936002)(86362001)(59450400001)(50226002)(52116002)(476003)(81166006)(81156014)(486006)(76176011)(305945005)(51416003)(8676002)(2616005)(6666003)(105586002)(68736007)(446003)(11346002)(66066001)(5660300001)(7736002)(50466002)(3846002)(106356001)(48376002)(6116002)(956004); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0402MB3920; H:b47624-OptiPlex-7040.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0402MB3920; 23:ZKVEVl4f7myYAQ4HDddScDG5HRp2e2X5kgrAZdC?= WQxQj7kGjoPFHesNeGHuM/Vt61hVKEGSghNxZAbNFP4YqjFBNnXpVM4LwSXsdNAQ2LoCHjIyMnDUvUw0PUkg2V0SMFYkAAFbNz52ThR1JqZCDFC/Iz2mP4eko5IVYemfSe1OSgC9ZUOo4yQgyIOKjfO8FSBCrhpp4arzHCg/zFihgMRpvcTUB0vxTdN5wku9eiJSQ49n9Pt6+nHfopGtesJziYK5QYm5pNH7dRNULwIRc+boiVccyFHIrPZYjmMBEmVjk8wI6KLPC/N8zYpaJ3LhcRzVt3a0O6EXRzabDfg+CozXXCTbqzhPFr/aFbVQhY4leE/VJ5ZKT1Sdu1ZjZjSOWOkg8oOP6j44YSvkw6bzK8NNGhgGM6I15GWGft1oreqhVdUvUnhRiab0IKhTXvt/SlV4DEA2BKrtD+9AzYjLsUtOXY0KkOhfZX8euYEmH9wlqukO2PWSHysT+Cz0tNyH1HxWFWcL7dSu7T3IPEjaLmbwXb8abmN748PyiBjFFU0zcqcUKYvHki989td7nzVmi4wZvyxnQUwdV50CaJcN4HjqF0n0jHBCBN5SA09HsGd9IFzow04Rkcvx2zJHZ7Y1XW/BraVs3LnnX0N6xyAwguqnRHitqPLH6wUiADjMTx45r58oWRSUY1wMo4q7FykvRpGasN660Mb32jWB8RIXdGuT0D6Fnp+JKGC20U23BQHV0EW7uTVyKkYG9dfdUIFb4sVXU8NzXR6KGN55mSPzuGQM2+KZj3nhDnxoSZZ1CXdFORXjWoYniqCaVVEUZqbKHDsIuF06A7rGesMjtykUFhxs1A8u9Hak9M5KLDaqDq9DvFOG67TftYSBharpmdz6hdg4YBu++5f1bgTUYdH4R9+5tP2xU4HlYFphtJJ01Z7H+gsgvI6iV29SBWENxN7QihgirKhSF77l2wJfzBH8tPRSX/5ZWkD51lPT43L4BA/VcH/kszokaWkxhGWYWzCNzsm+8y/0fpyf0XQdRz/RYXtPxonvYic4jTy0DtFBCGjEwbKvUFphj5y2HInAJ++VNCPK7VUGur+iFhgPB/x0K5uOLDvMgX8faewtl4e2sXX+RKGxdFKaNcfKhCJxHJRayAfF3IlQaz7xHOcac9fyOFPDBvFXRRFOuw/aFJeuZ7dvFEhT/oFkVn5di2srfj+HE X-Microsoft-Antispam-Message-Info: yveJ/K/bASyo+HGFmCm8OV5yPUxm+DMi9pP9/xoRVAZtFw+6VP3AuUwwGlcvFa4UecqnCJ0Z4zpr8Ctb+Km0g6qe14VkLuWqpwhMQdpaGbSIjkHzlQiVgpewSfgdHyJOL+DYOztJpPP91102ArwW9R7zfUGTngMBlSVHe/j2nKRKyoHZo0p0Pc8ZmHfbNaO3C3pRTEtMYCeYi+3oU9Wy4MhYaT15GYSm5H3be5uIf0/Fa8s+VemRKIyHI2P5raa4gZ5ructfduYcD/1UFWA3EChwEMIGRjxn12Dx6qcz0nT0qRJa2oOAC501+Ef8JOzc7AUp2jv2PFMwZrM3Bo+/UG4uwAvbG/5w2D8b5TG5nG8= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 6:GiZKNl2PVtuAgYUzJW0JYn75NMXocw8ArJqY7JZujw5gQFHASNZh3IbdDs7mno+HSubf3cf/oFcvCQkEIMeDPCgz1OITRv7/zt/NHGlpO7io8zm03UCLkS1k13PVJrqBrWzwncVuXCkCMSGcoo3q7tTrK1bhJtCeAA1Kse5jCgsJpOFzn4gmmedRdhPa1eefKp6DGWvnlPEVyMpiyCRuDH+J6hX3aeC9M5EqKJyhssei3bW4R3UNqSuo2Aji4NpM5d6PcBzieRfuvxXWzVJODIA6AmCfjGIV1S/dWtxsN1sLP3Ma5VXwNjxFdBBlbgKqRN7AI/87y5Gt2ANhSPoerzHTURHmExKkG/UVZ0LOkLOSQIFcjbOlgh4DNzo11MbTVrwVrpjV3i390Rhj2nXH5JX2GxMAH5OdnxD7yUxqcbl38IleCZ9Y6aAAl3lTsNoFEwNC5HxFK2Y4Hf4hzS61fA==; 5:mznjh/+9QO7YAe7wWE+rqU4hq6UQLQv711MqvgcC6aUv73dgpYFyJUHKRn7YNL+z/33PF/H/0sn9PVqae2cry5v74Uq8+udEcb+xWhTetnK7rWxmF5Z/cfxAcLukfDmloofG3Rvo3sdYji65LTKcGKV+4k43pUGR7+yEUoHkZEE=; 24:6wvf1Reo+nIhrYVXFGlzOXHLwJvjwxhroIN+sd6iu0WX1tIyXyEAzv+U5nupJ7c5crj8q90SGV8ktQbFU0pyPdctFq4+AbOwMyJnmvSzlUk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 7:Iik6DMFHH6DnQQnd40z4Tz4ZQDKgodyY3h1ofBwCo/OOHTLo6wMww4897YZtlqP8iZMMhRNVQpyvjMPGRChyJCupXs2ZYfj3aAjXgmWjAMUel5BvQ152vNF4ZIjinLVuunOJRgee9wTMFkr2wyeN4vSVVAqU58cfWFqD8m83UhfKH+hIiGAD74b/RjQj8KqLfT+JtHUsLWt2nDJExjaD47odmjoq3Pz4jqfAhipP/M6d1TpD1u9+6rZm6JQC5DCz X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jun 2018 08:25:42.0638 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 829b5e21-0b81-4501-d832-08d5da75403a X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3920 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add bindings supported by current typec driver, so user can pass all those properties via dt. Reviewed-by: Rob Herring Signed-off-by: Li Jun --- .../bindings/connector/usb-connector.txt | 44 +++++++++++++++ include/dt-bindings/usb/pd.h | 62 ++++++++++++++++++++++ 2 files changed, 106 insertions(+) diff --git a/Documentation/devicetree/bindings/connector/usb-connector.txt b/Documentation/devicetree/bindings/connector/usb-connector.txt index e1463f1..8855bfc 100644 --- a/Documentation/devicetree/bindings/connector/usb-connector.txt +++ b/Documentation/devicetree/bindings/connector/usb-connector.txt @@ -15,6 +15,33 @@ Optional properties: - type: size of the connector, should be specified in case of USB-A, USB-B non-fullsize connectors: "mini", "micro". +Optional properties for usb-c-connector: +- power-role: should be one of "source", "sink" or "dual"(DRP) if typec + connector has power support. +- try-power-role: preferred power role if "dual"(DRP) can support Try.SNK + or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC. +- data-role: should be one of "host", "device", "dual"(DRD) if typec + connector supports USB data. + +Required properties for usb-c-connector with power delivery support: +- source-pdos: An array of u32 with each entry providing supported power + source data object(PDO), the detailed bit definitions of PDO can be found + in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2 + Source_Capabilities Message, the order of each entry(PDO) should follow + the PD spec chapter 6.4.1. Required for power source and power dual role. + User can specify the source PDO array via PDO_FIXED/BATT/VAR() defined in + dt-bindings/usb/pd.h. +- sink-pdos: An array of u32 with each entry providing supported power + sink data object(PDO), the detailed bit definitions of PDO can be found + in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3 + Sink Capabilities Message, the order of each entry(PDO) should follow + the PD spec chapter 6.4.1. Required for power sink and power dual role. + User can specify the sink PDO array via PDO_FIXED/BATT/VAR() defined in + dt-bindings/usb/pd.h. +- op-sink-microwatt: Sink required operating power in microwatt, if source + can't offer the power, Capability Mismatch is set. Required for power + sink and power dual role. + Required nodes: - any data bus to the connector should be modeled using the OF graph bindings specified in bindings/graph.txt, unless the bus is between parent node and @@ -73,3 +100,20 @@ ccic: s2mm005@33 { }; }; }; + +3. USB-C connector attached to a typec port controller(ptn5110), which has +power delivery support and enables drp. + +typec: ptn5110@50 { + ... + usb_con: connector { + compatible = "usb-c-connector"; + label = "USB-C"; + power-role = "dual"; + try-power-role = "sink"; + source-pdos = ; + sink-pdos = ; + op-sink-microwatt = <10000000>; + }; +}; diff --git a/include/dt-bindings/usb/pd.h b/include/dt-bindings/usb/pd.h new file mode 100644 index 0000000..7b7a92f --- /dev/null +++ b/include/dt-bindings/usb/pd.h @@ -0,0 +1,62 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __DT_POWER_DELIVERY_H +#define __DT_POWER_DELIVERY_H + +/* Power delivery Power Data Object definitions */ +#define PDO_TYPE_FIXED 0 +#define PDO_TYPE_BATT 1 +#define PDO_TYPE_VAR 2 +#define PDO_TYPE_APDO 3 + +#define PDO_TYPE_SHIFT 30 +#define PDO_TYPE_MASK 0x3 + +#define PDO_TYPE(t) ((t) << PDO_TYPE_SHIFT) + +#define PDO_VOLT_MASK 0x3ff +#define PDO_CURR_MASK 0x3ff +#define PDO_PWR_MASK 0x3ff + +#define PDO_FIXED_DUAL_ROLE (1 << 29) /* Power role swap supported */ +#define PDO_FIXED_SUSPEND (1 << 28) /* USB Suspend supported (Source) */ +#define PDO_FIXED_HIGHER_CAP (1 << 28) /* Requires more than vSafe5V (Sink) */ +#define PDO_FIXED_EXTPOWER (1 << 27) /* Externally powered */ +#define PDO_FIXED_USB_COMM (1 << 26) /* USB communications capable */ +#define PDO_FIXED_DATA_SWAP (1 << 25) /* Data role swap supported */ +#define PDO_FIXED_VOLT_SHIFT 10 /* 50mV units */ +#define PDO_FIXED_CURR_SHIFT 0 /* 10mA units */ + +#define PDO_FIXED_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_FIXED_VOLT_SHIFT) +#define PDO_FIXED_CURR(ma) ((((ma) / 10) & PDO_CURR_MASK) << PDO_FIXED_CURR_SHIFT) + +#define PDO_FIXED(mv, ma, flags) \ + (PDO_TYPE(PDO_TYPE_FIXED) | (flags) | \ + PDO_FIXED_VOLT(mv) | PDO_FIXED_CURR(ma)) + +#define VSAFE5V 5000 /* mv units */ + +#define PDO_BATT_MAX_VOLT_SHIFT 20 /* 50mV units */ +#define PDO_BATT_MIN_VOLT_SHIFT 10 /* 50mV units */ +#define PDO_BATT_MAX_PWR_SHIFT 0 /* 250mW units */ + +#define PDO_BATT_MIN_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_BATT_MIN_VOLT_SHIFT) +#define PDO_BATT_MAX_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_BATT_MAX_VOLT_SHIFT) +#define PDO_BATT_MAX_POWER(mw) ((((mw) / 250) & PDO_PWR_MASK) << PDO_BATT_MAX_PWR_SHIFT) + +#define PDO_BATT(min_mv, max_mv, max_mw) \ + (PDO_TYPE(PDO_TYPE_BATT) | PDO_BATT_MIN_VOLT(min_mv) | \ + PDO_BATT_MAX_VOLT(max_mv) | PDO_BATT_MAX_POWER(max_mw)) + +#define PDO_VAR_MAX_VOLT_SHIFT 20 /* 50mV units */ +#define PDO_VAR_MIN_VOLT_SHIFT 10 /* 50mV units */ +#define PDO_VAR_MAX_CURR_SHIFT 0 /* 10mA units */ + +#define PDO_VAR_MIN_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_VAR_MIN_VOLT_SHIFT) +#define PDO_VAR_MAX_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_VAR_MAX_VOLT_SHIFT) +#define PDO_VAR_MAX_CURR(ma) ((((ma) / 10) & PDO_CURR_MASK) << PDO_VAR_MAX_CURR_SHIFT) + +#define PDO_VAR(min_mv, max_mv, max_ma) \ + (PDO_TYPE(PDO_TYPE_VAR) | PDO_VAR_MIN_VOLT(min_mv) | \ + PDO_VAR_MAX_VOLT(max_mv) | PDO_VAR_MAX_CURR(max_ma)) + + #endif /* __DT_POWER_DELIVERY_H */ From patchwork Mon Jun 25 08:08:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jun Li X-Patchwork-Id: 934115 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="t9XYfz0M"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41Dj1M3kLhz9s2L for ; Mon, 25 Jun 2018 18:25:59 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752616AbeFYIZ6 (ORCPT ); Mon, 25 Jun 2018 04:25:58 -0400 Received: from mail-db5eur01on0040.outbound.protection.outlook.com ([104.47.2.40]:13184 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752363AbeFYIZ4 (ORCPT ); Mon, 25 Jun 2018 04:25:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Isqrhdnby7YN2NkMr9z2iOuQkFj9wW/LgJPpu4HYUPo=; b=t9XYfz0MEKut3L9IZ6MWrZUCxCMJW0dJiaUNClItnoVTnYnHqtlOAtSi7C1ruYLdkb02QQeiGUr2fuQtWFWTv1RopPBU5lXeIx/0fEiWLkBqVgffI8rf+9AysLnbx7sRnnl7Ds2UVH8cgk0EEpC0GVKLZ0nQHIHdpMqlsvq2QOQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=jun.li@nxp.com; Received: from b47624-OptiPlex-7040.ap.freescale.net (92.121.68.129) by VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.884.24; Mon, 25 Jun 2018 08:25:48 +0000 From: Li Jun To: robh+dt@kernel.org, gregkh@linuxfoundation.org, heikki.krogerus@linux.intel.com, linux@roeck-us.net Cc: a.hajda@samsung.com, jun.li@nxp.com, cw00.choi@samsung.com, shufan_lee@richtek.com, peter.chen@nxp.com, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-imx@nxp.com Subject: [PATCH v7 02/14] dt-bindings: usb: add documentation for typec port controller(TCPCI) Date: Mon, 25 Jun 2018 16:08:34 +0800 Message-Id: <1529914126-22550-3-git-send-email-jun.li@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1529914126-22550-1-git-send-email-jun.li@nxp.com> References: <1529914126-22550-1-git-send-email-jun.li@nxp.com> MIME-Version: 1.0 X-Originating-IP: [92.121.68.129] X-ClientProxiedBy: HK0PR04CA0004.apcprd04.prod.outlook.com (2603:1096:203:36::16) To VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d4e2dd88-aaf9-4455-737d-08d5da7543e1 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020); SRVR:VI1PR0402MB3920; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 3:EIPFnv1MkWEU8Qx3dNC7vxgI23JGE3gQwX2jZTg+9bh0qOJEAaBeWVJmTi0PjhFfkxsGcjmXZCChgJLAYpXLkfyQ7xscdHf4iem0EnMjPm8cq+Bdb3BDJkEf1BMWY/haJSZXiIHol6/RTEFAUY4RndXMfDyvOoIbVOTkVPn2+Gi3fmZay8NCk2cpMn+af/gWikDATRneuLlUcMtYWUQTMnIzmzHfP9tFQ3ZJlF5jgXU5JyPCuvToapXe62UH2S+1; 25:ivbV0D3Y76jDe+5R8HHwrPEc0Wd4UsDib+L68SzUrhKtm8c+WLlbuM7gbx5p4XiHABbJdPNLLjMfocqKX50NkZmWM+t1i1WU5JcUrbnbAoUzMF5Hb9IUCjWrlsNXQ3M0rZH8K8Y4PydCeOHFTOWWAA+jiaJ2dGQB3UIhRe1C+zD3GjynsnS0V78gf2e1AZAFg3eDkykEvI1QNgBM9iLP8KKS/qs4RWzEKaj1y+ZUlfYLYpi2kR5hsx/uBvoPEf3A8jBL1WTnfXe0WwrNOn5SgWxmBpU4pq7oeVn4ojUSp8FRN13/5Hjrojzvyo8bWGQm20ERGB/x3hwgOn+KxfwbcA==; 31:3Gg/NtJPP4tgZzLFkhoTUW5mM3ZDoPkGuNwDkCYjcRx62C35S2ZkiE6coJrXkLMkP/8/GK9g2OppauuVnuYuuqhR/pX1rrUW5istOB78/UuW1NYFQklKlfFFP7q5/WXIu12a/cM5+FMoewrszWj+5GOd7nzq1B078pIC0vuoAgOTHVZUQgsvqj4xKOh7tkwX3fq7Y4un0v8v6b3w4nx7BWtHGDHejk98qDPjyCQY1g0= X-MS-TrafficTypeDiagnostic: VI1PR0402MB3920: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 20:yW91M1lNzOPKIXWh5XjJ7KF1U8G5qkxnnldiQ/k56DlASFCfT+YvQxKm3b+pm348kXTGqsqXGenT1QUalSXqpaD7+VgbSDWyeXsjM2AZkn3NUbtFoYBRfezcInU0mmuTtwb5nbQ3O9Ve3HnJIzh7apgrADueuSZwZ1bsQFNx0mlBRkKPiSJXpD/qFXizdlv+cjStncepExsyMyXizV1/fXTWbGFqquwHUF78maCpr+zspYtsMUTE7Z4Rgl0p6oXTjaZH6ezPtWU31xXZSLgfzM77QuJFmlsqGjPb32WczEWM5KFMVqY6+EOLirBdyLhaKkNdmwx6NbW9P53uKWIXetmljf8qximz2fZLvl3pc05NczYB15TbJJ+L7Wt+PX4OCBEwPwNo3MKBhJc0iYfx95b9rp9MfQ5xibu4Tf9S/OlDN2QrcnrcKtDvh3WQCNUvvr29OzfTojDuxbsGks9FE5SA4ex+ZO7/O199jXokLNjLO6AedxdGe9lwbvzesqPd; 4:MiFY8E+e1r6q5yW2XFgKu7Dtcvj4QlA2nSF7FD8muhzLKCvNUG+S1BRUX/jy/u46MRyRN2PHlMrQLuhzwzRXVpSelLz2WrnebmYObzFVX0OKsVNljp7rFwRRd7diWzDBOCXxkRQaxijfSsv+jS+XS6aheqzi1610Ip/GqJ8fvxXu2chrcP0L6pm2YjOROw532WbzJNV+UfWN8LWi+tMY1WYJIPhX+ue68goy5rP7uwqMdsVidepr/Cnj0fxBbdAXVwKjD948bjX5/aA29tgD5Ap5982R/Fkdt4D/EMOHaBy4sQzThY2vKk5PdlbRAVLG X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:VI1PR0402MB3920; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0402MB3920; X-Forefront-PRVS: 0714841678 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(346002)(39380400002)(39860400002)(396003)(376002)(199004)(189003)(53936002)(25786009)(47776003)(316002)(2906002)(5890100001)(16586007)(6486002)(36756003)(4326008)(386003)(6506007)(186003)(6512007)(478600001)(26005)(16526019)(97736004)(8936002)(86362001)(50226002)(52116002)(476003)(81166006)(81156014)(486006)(76176011)(305945005)(51416003)(8676002)(2616005)(6666003)(105586002)(68736007)(446003)(11346002)(66066001)(5660300001)(7736002)(50466002)(3846002)(106356001)(48376002)(6116002)(956004); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0402MB3920; H:b47624-OptiPlex-7040.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0402MB3920; 23:4qiolwJjmto2mby0x3SINpzPTFLsKCb26tO3uta?= jWl4kW3f0Z7I7/7+wWv6VvKC2n1Gx75raE5ici53MRUFeIYfbWZDPX+gkM7h1NkZrN7ExkOwGz3YkR2JCH6MxCT0Dq142qVRtusvw+QEaddPy9DtB7ZuyGdxHUsTpv3tO/xp6PSNRo/09YD90qLu5952VBrZOb9Zu/u+MmjcWxCos34TE4Dm2JEOEr+32aM0oDqXLiAMIg5cnDIV9qgsJax1AYronqITtZ7YUcmHZbHUBhSkqGVIcXgdUbXeg6zjJaT+GI1slAWVNBsT75bZkcW5+/CmxqjZDAZoQArAyvMQiuaoeNkGbDa7GOpEdgM4Z122g5ABT919wjv1geE1Jary8lnd/NS0hvW3L8WR1in4wKLY10mXhBb1Y7Hl8aof0KQE5OeaMaKrYshzOzP5JkbByjrmhFBoVv8tVPxrluaGqth5MXgYIpjc3E77fwTEcDYcDXqVfbECXs8+6be0lQuRL8R+8zL7ARMUb2brAL4TxRpQ3BtfC6+j2senUjpt9uKyfuFNolPCmSUMOpqHyM/tXyGYRnnLURpWd0bvm7049fTKvkadA6gTjy+PDMkfXFd+ZBxZOrIWP0p3XFSif4OzXSRh67LNuwRBWM6o3vOaAgEaYgF08fEE0a/hHgEyVWwkh/61lfmxW6R5vnAb8354BnfKI2E4GRwWbmaNioiXE/paIJmWrOFchtWh1f/kdWHmQVcLPv1NDtbTYz02dh+bKoAjbvdljryP8LNqcVt1hHrn42WH3vp+5JypfLNaR4Fm71HidEGynmICSKNmckJkNnnpoSBrZOwJAklltm8qUwjY3rFfmmMu32CXv/Xgdj/3d4iozpnX/6CYd7eyLX98yhhYEokV9UPRZ8anaUSghRo7yltzRW4ExqecR4QSKLh1MNc/t+dGohj2wcXcNisJvv/v5+2RTDvkLO0h1mPDOpEcf4oGQupodXx/Uzw3xEGbjIGJmsOnAw17BEj535ooCprjeUeJqd6RgiE1rPJNJ/1g4r8SzVPYj2r80EXr3jEuVtJYHaVxGw88eetLjp67B+B2Pw4L9pMi5/ZjE7KQC205vnzymLOCKiu7ZKnsjSq15jcddBOvTS9nnKesahGveESmo/TfgRHOWB9tizF1H+GcBF/tFE3Jx0bwYSkL/iS0= X-Microsoft-Antispam-Message-Info: FjYK/6y4RIY5LbEiE2svV9E2+7AQjbYhQSBgWJIaDx1IDC/gsGlhsskYldMcg/hAtRZblHL/wsgvicCA+0NICpyZnTNVLLXcO2jMHFxFtQkN6qO9fM8S3S86nXKKAP0aUsasu0pGCNl/8lOuC1sm5KajBIf/awx54wnJT14r+H3Z3Xi4KzlT1c4uOpWWeqNaJvjaxdMrs36SV8yt48WJLydJjVyBQ+K4dc/3KZdDWFDg1c6C8rveIhrFzLqLnxuftVPzfyDHSamR8k+1TmyIvPtvqLJQAeb9QfegMo4BZLLPd77KAEsmGrCoyvw3rR6Bj0zfAkxb+RQodnib4CMszUZZbuqHTqCmdWDKBQrrgO8= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 6:9tmJquHycNeoW0jKfoRQQ7hIvqWfPd1yei66bSto/1O3L1F4fg+nbVPXqdWCqGXB6Vn4ALTIQd1p5nTUZz7ymqfs/PsW3yI3L1dWpzHHnfNRp0K9Rmy4Di40UDw+VtQyZRBU2UVbzrQwJ56ooo1rt7uJWQ7ci3hSCdCfhxv3PIZ3yeoJpGa7WjWbL2POmUqzOwsaw/NBFzhMiqHKUHfPKNbn4twBKrv/UvHaTu4h085/a81ABi7wkYSgXvk38Hwn5r4wmVnfhlvbMzbv6C0p1kCXdIo/4gpg/D+vcXp0ASxOGa0Mg7/a0vy+pGP2mPh8gIogwmiKdvK1TBTXvZWq6shR+oxZ14vdJfMgQ7sBR4QzdqZEIAtBYfqVFUjfhjuM3t0zsz0fTuHtIVqrYDMPpQ44vmhWW56VLzJX9Kbtcot0TRJFI6yvvgtQDe3RHx3nIbgn0Fhg1UkkqtQ54tJY+w==; 5:jEBPok/Hu4EPRH+IcUWU85sT8eSTOrsbzbuorCRQ945k62DNMinX0f3wjWQOgHrDucMgvTXPqxE7MDG/b2XQqr755xNiJ4/e2HwlVh7mLdRHcJ6U82N/6Qz9RqxaStpk8HtHuYQ/a15VRqvcsOehKYNZbUw2b8H0Udi79nWpnQk=; 24:U2m7kemPIcSVdS1dJZtgUwhTsgVPbSwdFOCQh8wJx/IsmqGaMS5MNDZFjOO7GOPkILFlzkut7Gvb8CmjOVyKfSapuP3XivcgCeYCLxq1/b4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 7:5dIdQUkJ4ouY8v50WyQkNNh7zcLKr2GlL3wH054puGtvdpCIC43JWVnt7ZwLeQtumTM1dXiJHk6vrRMONYmcEo3pE2tiuTiHpd48bS0Z54Zea78jlOjhZSrnCC4qcTbUO9rIXHifDYuc154NLsQLNUddQa/bzOYS5fYVuFD/jZGtI7P4lSFwpVL2i4Nn2ymscvVaHp3eSpPEgsEZ9BQJ+doNTwtDSHtnSogChXdOpJ+kP253wuGNaMQdfluLYMPc X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jun 2018 08:25:48.1420 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d4e2dd88-aaf9-4455-737d-08d5da7543e1 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3920 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org TCPCI stands for typec port controller interface, its implementation has full typec port control with power delivery support, it's a standard i2c slave with GPIO input as irq interface, detail see spec "Universal Serial Bus Type-C Port Controller Interface Specification Revision 1.0, Version 1.1" Reviewed-by: Rob Herring Signed-off-by: Li Jun --- .../devicetree/bindings/usb/typec-tcpci.txt | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/typec-tcpci.txt b/Documentation/devicetree/bindings/usb/typec-tcpci.txt new file mode 100644 index 0000000..0dd1469 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/typec-tcpci.txt @@ -0,0 +1,49 @@ +TCPCI(Typec port cotroller interface) binding +--------------------------------------------- + +Required properties: +- compatible: should be set one of following: + - "nxp,ptn5110" for NXP USB PD TCPC PHY IC ptn5110. + +- reg: the i2c slave address of typec port controller device. +- interrupt-parent: the phandle to the interrupt controller which provides + the interrupt. +- interrupts: interrupt specification for tcpci alert. + +Required sub-node: +- connector: The "usb-c-connector" attached to the tcpci chip, the bindings + of connector node are specified in + Documentation/devicetree/bindings/connector/usb-connector.txt + +Example: + +ptn5110@50 { + compatible = "nxp,ptn5110"; + reg = <0x50>; + interrupt-parent = <&gpio3>; + interrupts = <3 IRQ_TYPE_LEVEL_LOW>; + + usb_con: connector { + compatible = "usb-c-connector"; + label = "USB-C"; + data-role = "dual"; + power-role = "dual"; + try-power-role = "sink"; + source-pdos = ; + sink-pdos = ; + op-sink-microwatt = <10000000>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + usb_con_ss: endpoint { + remote-endpoint = <&usb3_data_ss>; + }; + }; + }; + }; +};