From patchwork Wed Jan 18 15:57:10 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Rosin X-Patchwork-Id: 716735 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3v3Xdf5yKrz9ssP for ; Thu, 19 Jan 2017 03:35:34 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=axentiatech.onmicrosoft.com header.i=@axentiatech.onmicrosoft.com header.b="Uf2H57Cb"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753577AbdARQew (ORCPT ); Wed, 18 Jan 2017 11:34:52 -0500 Received: from mail-ve1eur01on0102.outbound.protection.outlook.com ([104.47.1.102]:55629 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751894AbdARQer (ORCPT ); Wed, 18 Jan 2017 11:34:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=axentiatech.onmicrosoft.com; s=selector1-axentia-se; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=e2Z7+hvSfbE1xE7hHP/raxub8R5qK0eaIkVtDMgftwY=; b=Uf2H57Cbj04mdN8pL1/QeVodCOHXO+akrSzqMmYEPHcYjsfEhguOOxST0Fu80OJZngigJABb1fvdOJtuVkOO1NsEeMzaw1lGSGTZG0NpDPeTMiajXZNZNRKvuaaWcPCr2B98b5INTB/5m/PYSJSJ5DkXuNdT06zEDoanA5kYg3A= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peda@axentia.se; Received: from localhost.localdomain (217.210.101.82) by VI1PR0202MB2558.eurprd02.prod.outlook.com (10.173.79.137) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.845.12; Wed, 18 Jan 2017 15:58:40 +0000 From: Peter Rosin To: CC: Peter Rosin , Wolfram Sang , "Rob Herring" , Mark Rutland , "Jonathan Cameron" , Hartmut Knaack , "Lars-Peter Clausen" , Peter Meerwald-Stadler , Jonathan Corbet , Andrew Morton , , , , Subject: [PATCH v8 07/12] dt-bindings: i2c: i2c-mux-simple: document i2c-mux-simple bindings Date: Wed, 18 Jan 2017 16:57:10 +0100 Message-ID: <1484755035-25927-8-git-send-email-peda@axentia.se> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1484755035-25927-1-git-send-email-peda@axentia.se> References: <1484755035-25927-1-git-send-email-peda@axentia.se> MIME-Version: 1.0 X-Originating-IP: [217.210.101.82] X-ClientProxiedBy: HE1PR0801CA0032.eurprd08.prod.outlook.com (10.167.184.42) To VI1PR0202MB2558.eurprd02.prod.outlook.com (10.173.79.137) X-MS-Office365-Filtering-Correlation-Id: 1c12cae8-9886-4021-d4fa-08d43fbae063 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:VI1PR0202MB2558; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0202MB2558; 3:3UxEpoI5asM/fDlPqioUgyWPi1tgH9gRiAvcHI93ksxkhgerQH06KFpJSedtb2C6Y1q5o2BEPsOqxc+X07cct1xeqSjV+3hNREVcBegBDJEOKZwwfHLN0tK5njvqyvRU5t/gGAiIiZ2Qt6z+2gm6ZQFDm8Iq1EQddSx5YnY8Auo3yoZ95I69c7eAQB+X5J4KACxY1/7dLncfwkpecbCtos8JceZQs0EVOIUu0LWr76+gB0+u3e7j7yL54dSYdeh1kDj2NDRmbVMdp/wLdst6Yg==; 25:HySSfUv60VKhtWM7Z2mq0CFP/wpzQoIk5F62jTiEG7ufifpTtVQKnqLOFx48L8Hki4Ljh6UtGrNUCc/9O/W8PJa4EcKoZA372F2HmDkb0U4M6hJ+MFOo+kquPr3fkWz50YotgD9t+xHicSxhvLHvAe3PbZSXh4N1EfmTp15ocRTvflLx3+z50r5W7zoL+oJf6wuBEo78jXcMIq/4z4nhlaDX2K1Bdr68ME5BfoqnahNlfpFOh0NrIjqOXFd/HKx2aC5auAq5smYv1mWollwXzHlKNpazDcoU21q/LGxI0XsC4u0R6A9SuisxjexRmFmr+ZMgAG+NssqtgtNIJ/QrayLhlEi3S3gwa7xCj+Pz5OFVfmph44N2OFbR+6K+1F6te7wY2Vt2wvSt018JsPpl6X51bZMBuQcGVHg/kID7V/iutCz3rlbt/03+C5STj3yz X-Microsoft-Exchange-Diagnostics: 1; VI1PR0202MB2558; 31:D8joGZOZIi2K0OU8HmNPUaVnQycnM92ryFGmr1awhfJ0eJEfBfqYJkL75Azqq3/AJ/F1THpbM6mYp8P7DLuVIY1YqePL5W48e9nf3pqjldShxUOmPclUwnYu+iMaTYs4u8xUNqRXndTEWU60606Tx+yUJsYZnLqDKAVAgu2e7n4v6vmTCxQC1ZhcqgRkhUE/nIfV0C3LnfhzZ8DbMnQzYJXGV4u0uQQwSknVA2wB9n+xCPkIuAbm4MEvxHV40rRM; 4:cztpFwi48fg1n/dB1is7V5giw8uhVMtiaDXxp2uFzaA5f6dFRZifkaReW2tJgCQ41WGdsO4VFtp4awiNDKmMgYjYrI66SiHlbWN4jaIvQc+VytpLwXmaCUn9590gQAxgZAfSnXc9JqzAtgFJfgil5OAJ1sYGp/EKlZMGIxkfHynQVLrbisCoWXgq8bLCUgItLtfqBsZ6xOyr7Eeag43xfTWCmlEmferk83e1oo9vT8F+OVhBHjZm6pTBZjx6uJExt/6o4cfoAgEObTFAD2Iv9+/XImZSAQH2CWvlqVDEVxy9c9bo1o9GCaJjICjPpnv3H8bOFfip69iN7xZF6R90KMAP8xKaHTGfP38tJKm21wjeesoO7nA0QAY8j9FDAqarJraON+guHv8ZdNN74p1/lNXOxyxj9WFASzoDggM9s12FyII46PhG3MbwBVgo0kiLMFfM3NQymRB1pSR16/DXtsx83iIT4YpqVyA7zsAiHF8tpvx9MdqgbNm71nzY0Qf6kANI1I4/PqvEKFZgitqGG/3/oDukgWw16SB+z0zZehV0bjjuKKYFS21WjXItzgq041smqZTL1YLIUblGS9oSHNSCKmX0aIPxXvJKnhZAg4Rt0QH+Nl2Ei5avxFJhPo1r X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6041248)(2016111802025)(20161123555025)(20161123564025)(20161123562025)(20161123560025)(6072148)(6043046); SRVR:VI1PR0202MB2558; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0202MB2558; X-Forefront-PRVS: 01917B1794 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(6069001)(7916002)(39830400002)(39450400003)(39410400002)(189002)(199003)(3846002)(38730400001)(6512007)(5660300001)(50466002)(101416001)(47776003)(48376002)(54906002)(97736004)(76176999)(53936002)(189998001)(50986999)(305945005)(7416002)(4326007)(74482002)(106356001)(2950100002)(6666003)(86362001)(6116002)(81166006)(6916009)(68736007)(5003940100001)(36756003)(7736002)(2906002)(25786008)(8666007)(42186005)(2351001)(81156014)(33646002)(6486002)(110136003)(6506006)(66066001)(92566002)(105586002)(50226002)(8676002)(230783001)(42262002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0202MB2558; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: axentia.se does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0202MB2558; 23:Ld76ZY33ta7ghbaqabusRsrih0Qp2XtI58wsYQA?= =?us-ascii?Q?C711x5TcsoNaRHblSxJLa7GWAuee/fqmD7ghF+QY5kSM6HWFTndruEPto9MC?= =?us-ascii?Q?5NQ5s/lBK82ajuVGNp8NL3wtIKLWlgKUTTREEh5xIhnjhCw5cyLkZS5Verna?= =?us-ascii?Q?HQgIzp4egCCwTV4duXuVjhjWZ4h8Pj7pVStoygy+gWExptxEJpjjboU9UKc3?= =?us-ascii?Q?kh6xY2/Cvhxdj6Ob4z5EgB3kcpqudp9gAxKOE2FpjMRXKX7qBuzFF1WmxIqp?= =?us-ascii?Q?xkcALM6F26mygF4A7+J6VxbIDf1RpSGHCD3irtX65kwAHGbQzXYfDP39yBwT?= =?us-ascii?Q?d+Af/Eg/7dKlnqWsZG8S6ZD84KT905bZsFZrl6LCfPT1ltDNhOs5L0z632EY?= =?us-ascii?Q?9I+mU7WBLNmgsWOO9N7r60j/OW78JYALzhsoBeHTy4APUJlj262XSws/ELbb?= =?us-ascii?Q?N+NZIpfEsOgNP24MNqFZT50KdX61Dp24Rmw0+mgxHjT5FcWv0Av8LO0F7Utg?= =?us-ascii?Q?F3P0wZUeg32kk0YHDbAKPxtXT+pHoDsCG+vtYuRg4C75aYL20p6IjuNHIY6c?= =?us-ascii?Q?uyfBGOsrgQdE2uROZfR90KpVQUAGLzsjNrfeySSfmsD+Ddtq6ycODUGajjDt?= =?us-ascii?Q?GKd1Q2cUV9Fwok/AxSTGPj1SIjnbtrWK2Wx5/SqOVA1AfRgXc1eOdiijYPtH?= =?us-ascii?Q?RdiANKT7xt4Qp/jgkT1CkNMos7UXU1i7eLz2E6F253stvNn0LCXCVX8kkCvR?= =?us-ascii?Q?NxS8OeGVZmqGQH3Ezb7M91C57d5KBoVMFsL7ukIkHsDFz1xqPS+izN+JtnEe?= =?us-ascii?Q?9Por8lOfibgX3K4fKMKfb13F40mpiF2/pXsuxnI2KsZTdDbHNrLJU8tbC9ua?= =?us-ascii?Q?K3hIsth7L2AqSE0+B/6zrqgyoP/QLzlRFGfG6rFJsCSE0vgK1jjxPaGbkI1t?= =?us-ascii?Q?GKduhHTHNHywr2W5MUq8yKO6+Ws9LkZhU/RESNvdsFCXZEogRrEqdMSzOXvm?= =?us-ascii?Q?4DKNQtS7op+Zb6YhS9Rwd2t9YAwWV/2hpTqhMWvdji26TCgEfG0YWLM3DFBN?= =?us-ascii?Q?paAeiUNuLNO5u8vpA6gh0gSoLhCBOVThu/9LTzOocxDsX6rGZ9AnqEVWgoRj?= =?us-ascii?Q?N/Axvc7SAaxbckipuc/8q2gnuKK7uLD9/chOIDfDZC0pRo4SmIzzmqqM2ULm?= =?us-ascii?Q?/So8cj8Yp3FjkAufmsqVtgEFrmfk4upcf4E1Msmal/E4EpKowsVAzyaaN3jB?= =?us-ascii?Q?Wb94AiSTMndp4YZepbAgUq1eafkmP5iGUCIHYnyGPnjhOGPl1yL62DFPHbck?= =?us-ascii?Q?9IwcXbj5dzlogPTb22dIZ3L4=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0202MB2558; 6:5aYGIB5fTGnA01lFl+lPQkycEGpPpA3vnUGVU2utjrwEU3k0WbwadPKMM/kRu8PVinquSnZdkbiMGNPvI4pcJx7+9nIqYHNsP/f+8jkWESIcug8bqwRxYx/YTTj1rHog4jujEs2PxrF/IhssKSslBJgSVhgwEr/eDLjh104rjPA4zxZf/UdkzBKs8GxDIoMHyuxTW7LvfywRRvlTIXH/ry5gz3HrniHy16Zg4g9s4qHxCfAXETm4PkoEuZmw8AQJq65d4amQBPr8egL/jKLjzb7PzD3WwluDCCACvH0oEw3W+tbYpaxTiPeE8cSnFN2frRKdyyFX5RhN7KWu9XWxtLNiZ31zSXN88jHNyFML1KaHjsRAuKXTtDeL4/RlgI17yzaTMoB3/L5JLjodX0AjoSWSFiMhaoi1RxKywljianCGwwGeNdt51KaX2yfA0Yff; 5:Z/W8DtpK486Y+HvKaWa0oP+vVzeZd8pES7ihMS6Opib3T5JhCL5VGjCXqFhh327wV4Q4F9TA1b0A6ls8qv4HiK+UyPwNg7XenxF0qLkynKd9+3r1IrI/ZiCl3BzGZ4c0CnufWfOXwSYQXNnxkQbY8Q==; 24:YphLZcsBcbiBsqqZOurY1QBQfADt8npDbUuSKiGk3i06Rd0MDg4XC3q1Vn8sL0GrkBWAtRHpyZJH8+UFrbzEm7YVX55FT2FjtVzY5vke+YU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0202MB2558; 7:/lOjIcFgbky6AP+uLreQzAfhQaFsyEK78i9AXZzfshpfjcFZD1ciJSedWqDYmKjVPkP23szXFImAI8pfJ2X8JOD2TNGTdrInpZjD8QdTUpLPD/8uCKFRj2zT7AitpyPuPmFUymZMjLNyvqAMOYAT/Hy4CC4078CWOjVqAfRObuJclaG7AKOqoRc5c8Tfm2yLf01DIYti+/hhfD3J1ft87+auAoHL07SE3I0fOjj6LKXFNyIbh4Q1OSb55eYsGXHQ8SbSC0yvP/xABouAEQy3ABtLEu9jmZ2I3ObDj2DtmsRY5G1h7cbWwLYXSvIaPxsMrMrOClgAVNlL0kUSJRGPQX3fqqxXV0cBVgO5V2DRwFWgZOfYsPfzyzszWgM3Sj4ZlwjBZuX+7efJ/6AJ54enpGrEhJbAGJFDpwuD2b0lkB+Egw3bLQCFHyMUE5ClICjlSPgKqsXwSvdQQodLCwhqtg== X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2017 15:58:40.8662 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0202MB2558 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Describe how a generic multiplexer controller is used to mux an i2c bus. Acked-by: Jonathan Cameron Signed-off-by: Peter Rosin --- .../devicetree/bindings/i2c/i2c-mux-simple.txt | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mux-simple.txt diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-simple.txt b/Documentation/devicetree/bindings/i2c/i2c-mux-simple.txt new file mode 100644 index 000000000000..253d5027843b --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-simple.txt @@ -0,0 +1,81 @@ +Simple I2C Bus Mux + +This binding describes an I2C bus multiplexer that uses a mux controller +from the mux subsystem to route the I2C signals. + + .-----. .-----. + | dev | | dev | + .------------. '-----' '-----' + | SoC | | | + | | .--------+--------' + | .------. | .------+ child bus A, on MUX value set to 0 + | | I2C |-|--| Mux | + | '------' | '--+---+ child bus B, on MUX value set to 1 + | .------. | | '----------+--------+--------. + | | MUX- | | | | | | + | | Ctrl |-|-----+ .-----. .-----. .-----. + | '------' | | dev | | dev | | dev | + '------------' '-----' '-----' '-----' + +Required properties: +- compatible: i2c-mux-simple,mux-locked or i2c-mux-simple,parent-locked +- i2c-parent: The phandle of the I2C bus that this multiplexer's master-side + port is connected to. +- mux-controls: The phandle of the mux controller to use for operating the + mux. +* Standard I2C mux properties. See i2c-mux.txt in this directory. +* I2C child bus nodes. See i2c-mux.txt in this directory. The sub-bus number + is also the mux-controller state described in ../mux/mux-controller.txt + +For each i2c child node, an I2C child bus will be created. They will +be numbered based on their order in the device tree. + +Whenever an access is made to a device on a child bus, the value set +in the relevant node's reg property will be set as the state in the +mux controller. + +Example: + mux: mux-controller { + compatible = "mux-gpio"; + #mux-control-cells = <0>; + + mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>, + <&pioA 1 GPIO_ACTIVE_HIGH>; + }; + + i2c-mux { + compatible = "i2c-mux-simple,mux-locked"; + i2c-parent = <&i2c1>; + + mux-controls = <&mux>; + + #address-cells = <1>; + #size-cells = <0>; + + i2c@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + + ssd1307: oled@3c { + compatible = "solomon,ssd1307fb-i2c"; + reg = <0x3c>; + pwms = <&pwm 4 3000>; + reset-gpios = <&gpio2 7 1>; + reset-active-low; + }; + }; + + i2c@3 { + reg = <3>; + #address-cells = <1>; + #size-cells = <0>; + + pca9555: pca9555@20 { + compatible = "nxp,pca9555"; + gpio-controller; + #gpio-cells = <2>; + reg = <0x20>; + }; + }; + };