From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754154AbcG0IoL (ORCPT ); Wed, 27 Jul 2016 04:44:11 -0400 Received: from mail-db5eur01on0135.outbound.protection.outlook.com ([104.47.2.135]:56251 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753788AbcG0In7 (ORCPT ); Wed, 27 Jul 2016 04:43:59 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peda@axentia.se; From: Peter Rosin To: CC: Peter Rosin , Wolfram Sang , Rob Herring , Mark Rutland , Guenter Roeck , "David S. Miller" , Greg Kroah-Hartman , Andrew Morton , Kalle Valo , Mauro Carvalho Chehab , Emil Velikov , , , Crestez Dan Leonard Subject: [PATCH 1/7] dt-bindings: i2c: add support for 'i2c-mux' subnode Date: Wed, 27 Jul 2016 10:43:24 +0200 Message-ID: <1469609010-23049-2-git-send-email-peda@axentia.se> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1469609010-23049-1-git-send-email-peda@axentia.se> References: <1469609010-23049-1-git-send-email-peda@axentia.se> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [217.210.101.82] X-ClientProxiedBy: DB6PR0701CA0026.eurprd07.prod.outlook.com (10.168.7.164) To HE1PR02MB1306.eurprd02.prod.outlook.com (10.169.115.152) X-MS-Office365-Filtering-Correlation-Id: 08819e75-eeac-42ad-a96b-08d3b5fa242a X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1306;2:3nhBkRUeQ3XrPCGZzMT9KScNiQ4RshU5Rl+j0kjM3vaLGdQRattettC6DPdvPTEUAhUL9KeydZYXq3eHeBw+MjMSQG2nXm3qViPGULAH7AsYnLKj4KDmr1YQz/jL4ApKLk2LJNa59u1MeSmfnJe8WHr5VNXu66z2q0q+3Qs+rZjp5jYg6njlsIaLA8Z8MAoL;3:jBNsq34ruUIu5OBTwAaaDZJhuX22akjCWiFDXfpwi98v89G/6E+NLCouuK2POD2rTBXp/Z5AxiMpK00KPbLFVf3O2Gl7KAovPOKBQtyIawXcdMuy7+6mJj0q25hSDKTk X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR02MB1306; X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1306;25:FsQ5rfE+dumQbyRMIFCziF8zvZ+1+qmyPSuw1J0MaYnxeGYbEMWBYgMeuK/n/195Ot/i1MfKo4Swf3RD1dkjYvkgm/vYDb3djkUArnsu0EeWZ1AwWxkjGwp+oiYYImb+7pApjuaUKOFjpeEguiRXtParWAsepw7p6hE3yqzoJ8gr4NboDGTvuy0uLKbWN3+NLeWJubcZv4vdUK6ogbQhjJIFogz+8NglHO5y2MZ4pfy/ANPR3tmqenJ2MOdo+G2lGxci2wHsoEPs5SNzlYkQYMPM+1byzGofoP7OYMZ+SFLqXCi87FiZ57YHW6WKMwH17KtDvrTVvkKkSZwsBnoZjCthDEwyaaJ3azmes1QxVWP9gh4BhHujZQ+jvHvZ6Hx8VtBrVMQr+cwPmY/jrF9u4zntkBi8Lp8qX3kSaPJQSEU2fSmwTLFLaO37jwAc9uPyYxvv0cQjXokvU5fWgPTU0mKu5hz2fHaDAqvgshhN9pVuEX8gkRn7v8a6IutoTHkVEVdyowZjlgpkNoZOKeaBKDrKCFtPTrxGCuFBj5ourGNtsGss8ah0Yisbcks6IUBHK7Kob84lxi8kPd6Eq0ZUoIjkIgEMksJ2gxKAWZMgHiv6XM0DtGCDzip4f5mymy0sr7oKsZfXfGeOu5uVClEKLwL0cbJwaECwdyWW1F3DPEBdVQiFvv3Mhy2/aSxT6WLyYDhI0z5qFDTdeN8IeAWzbcsUt+EqMlWBtI+grmNkV64=;31:MWzxc9cKIJdE2KKTBvfEO+jG7oUZ7Wvp1HPa/Ie3gKywphmjhlW7HOQpfRhRTUC+gsfjJFRHos7kd64eZ0FzgojVh5ux3Zu+axmiv4JXj6GZ9tWlDr3whT5tMa0uJpcFqGmUij7qhXgpSIrk7//GF6DgSyDI0mPp4OKoOmdg7L8OwRuYfjfQn0tyYg1kGVtTigQFf5bB1zmlhhZhbS0yEA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040130)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041072)(6043046);SRVR:HE1PR02MB1306;BCL:0;PCL:0;RULEID:;SRVR:HE1PR02MB1306; X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1306;4:7Vm1WcEEy6Ivd5vMsCeIR7Rzr/zq9bUITlKs+XIgBtDY5t1IGWhGdup/S8xMbRtEG6dpuMicdfjl5sfEjX1TZr7wVhfJQt5FbYMIgGmSPExMTU3HBUIIkBCzfphXVMHDbbHomZyPt/swpxvqJKGMgOq32sBkuosJmeOnwmmhG0d4VDkXmYJx7URzK78fiiG4g+yIFtEOA4HN0IwMdciRXEdFyPleqQ0cRJUu3HjDZAHcuE1Ej9Sq3DR3pIDT25kII3RvMVJh2dksxd3IapHsf1bUyM+EuyBp2mAbwSE60D3pfZNb4hF1ocHLt5Nk0qMLeBL5zmb1pt/4Qaz7p/DW2s66r09jk6/2+JgfA+LqiyKzTwJPo0iYMcHY+p0ybbnbz+Gv3vNCQKYU4LsZvt5MMhw3TVjAvMX5hTVY53Sj/2o= X-Forefront-PRVS: 0016DEFF96 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6069001)(7916002)(199003)(189002)(2906002)(74482002)(101416001)(6116002)(36756003)(97736004)(33646002)(2950100001)(3846002)(586003)(106356001)(229853001)(2351001)(8676002)(77096005)(81166006)(81156014)(86362001)(4326007)(7846002)(48376002)(7736002)(305945005)(68736007)(50466002)(5003940100001)(110136002)(189998001)(92566002)(66066001)(42186005)(19580395003)(47776003)(76176999)(105586002)(50226002)(50986999)(19580405001)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:HE1PR02MB1306;H:localhost.localdomain;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR02MB1306;23:LADSoszVxSU71pFIXGK0U0CobmzA9tLDt6wHRMIoU?= =?us-ascii?Q?i74mEop6g1FueWN4kZfz8m+YQItcfMkkd4tnfxHGab+wD5YojhLJVfjrvKEo?= =?us-ascii?Q?bImOOzZg/Y/nS3mvFMovwoldKOn3a1wXXElR/dWAsZY2ga8MiOvyfgY6PQIg?= =?us-ascii?Q?rdGuvFGCjtI+4VINh1pVNQ5q7/4k7X+SPoIwWa0NEevuaT3bB310fhMWdWEL?= =?us-ascii?Q?DJlSyfndNFUK/sI8CW/dv5IhaM3b/D07DYbTd1uoItCCen0bK5y5M033fPln?= =?us-ascii?Q?nsBQu0FAV4Li7HD2MiF7wHi8h70AZkESLe69rwBUhEtcLC4gyVLZUJ5Qe8WN?= =?us-ascii?Q?NaZyIDYecF8DyYNJLWm/d98ijbNXJFgP0o2pZJbirX+adbB97+eq8oDtcNXO?= =?us-ascii?Q?S/pegEn4RIDsPjqzkbIKeIGAXgN/MCRUUcBpL4MOiTufNge3/ml/HQ/pMP9M?= =?us-ascii?Q?EmJmG+crJGSaeVIXnAJlmLIBHqneARZ989jd6Tt7Y2sq0+5xlK+pp0r8gS27?= =?us-ascii?Q?yVTYI48dY4t4dd1UTzx628KRec1w9bGnbA7aEoxorQHueVHYrcONjfWXuLVf?= =?us-ascii?Q?OsAPJi4dbU93D54MCK8tbWLIYnw06SZ5cvH7qkCB0wfRkbkEzevjNYPjtgid?= =?us-ascii?Q?FJuYx8ea6jaf7I/xfLi/4eMUJibq4XG59NpOGXTUt3aoh4KZdMWIlp6b8jNZ?= =?us-ascii?Q?wdU3uRDH37Yn8VAU+SiSqeH4wvzdZhDlyzHoNtlrlbvT1+vRVNkdWVcWL/a4?= =?us-ascii?Q?1+o9IfeKm5vJxTGWn+YxKIC1fMDCzP4kDnGjiNG8tPTGUSBBMbuHcTruw1Cq?= =?us-ascii?Q?PCUwhwL0VV/GMpSiZp19CKiR/qUar8SvKkzSLkMP915Z6qxDlLKgVK0wUVcm?= =?us-ascii?Q?CUjOki0PibP3CNWokN5mpl33fSLvyvDNQu3KyibJKnJDTi1/ONbKN+hpm/RW?= =?us-ascii?Q?6s33eoEeNwbSLNpw34JY6/icflPuSkYEZiDouhgV6ykCtmYNkso0vnbe/KBn?= =?us-ascii?Q?qO96WEgwXZj1NaDKPNed3b5wsGj+16OZl2mHxja8yjBtQ7H+G0dPGe2qA5ry?= =?us-ascii?Q?2/MTUunAv4aDyZbDFbsffo767iegEdRcPBl3omr7pbvx7xBLHUX8apnZeAY8?= =?us-ascii?Q?UQv+uVO5Ww=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1306;6:nbCV81AKZO+V/JxOmrkOj54qt6f08TnGdmoIiUns4yr8DbJkqCLb3gAp0abyQJ/wEH1UX/nOPCLb/oZecPgTjEplwBDh/8d4aueCACI8eVR0a0AO7y6yDqIAmJXoXXwtRPCNd+cuuO2chxU5lJd73su7jN/pCTH61vfnCzvqCdXrmKUhK6LzRdzbhl/wCdSEHlkLvE4GFOqpFOwTJ2d8UqNI/LWtz8vArTDfriqJH1nvffjtYLJnPJ8wo21NsFm2IKXbffo6FlejGUiN/NXYByuGrY4bHpA7rvNKGWbouJ2KQDgg9tHKW9kRXzekv4Qw;5:TK60oAsh1Et3ZRmF9BFbs++X3E5IScXVII9efoLye7kXACn12NPTbX67Z0/BF6GCb4jeKeYXneQwianXiSvsIkfsn8pWTDqLUIJjfJMNb+gBbi097rmNo+aBEA9AHWf4ArRfW4kCvJVdXtPUFrI87A==;24:xKrUSOSL9ixnnNw+lsvDo5Ypqupob5fL+WGX0Z7+oUNxSCcDr0FPNswf0J53kHLpMIaTIrg9kIsr8dhGcZHyOUljqpYfhJQ+Nv4zWJgSS4M=;7:dRdD7UAnDUPExHh8l9RFzptcxTZPYiHCLOxzyueo/j/H8rqt/NP6NgZNLG6oJCc55opiGbiVA8FOUy0rykk+xeADWpi9E65YOI2+Ad6oISERq1nH5mGS2o8uySI7dowHTEpybKL8/H4QGqwMp33+zXSx5Ju/EYeBbLnrv1OfxE+Lo9uHvHxpnfNxcqX3e1nxsh+FhFiwOhEONic7dlT7yO/FV2REuZVSzw/t1nN7hIpRzBbE6L4LSmqjiiqr1FJR SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jul 2016 08:43:50.9101 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR02MB1306 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Similar to the new optional 'i2c-bus' subnode from Jon Hunter, this adds an optional 'i2c-mux' subnode, for similar reasons. I.e. it is bad of the i2c mux core to assume that any subnode of an i2c mux device is a potential (when the 'reg' property matches) i2c-mux child bus, given that i2c mux devices might do more than mux i2c traffic. So, if an 'i2c-mux' subnode is present, dictate that all i2c-mux child buses exist beneath that subnode. Signed-off-by: Peter Rosin --- Documentation/devicetree/bindings/i2c/i2c-mux.txt | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux.txt b/Documentation/devicetree/bindings/i2c/i2c-mux.txt index af84cce5cd7b..212e6779dc5c 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mux.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-mux.txt @@ -2,19 +2,32 @@ Common i2c bus multiplexer/switch properties. An i2c bus multiplexer/switch will have several child busses that are numbered uniquely in a device dependent manner. The nodes for an i2c bus -multiplexer/switch will have one child node for each child -bus. +multiplexer/switch will have one child node for each child bus. -Required properties: +Optional properties: +- #address-cells = <1>; + This property is required is the i2c-mux child node does not exist. + +- #size-cells = <0>; + This property is required is the i2c-mux child node does not exist. + +- i2c-mux + For i2c multiplexers/switches that have child nodes that are a mixture + of both i2c child busses and other child nodes, the 'i2c-mux' subnode + can be used for populating the i2c child busses. If an 'i2c-mux' + subnode is present, only subnodes of this will be considered as i2c + child busses. + +Required properties for the i2c-mux child node: - #address-cells = <1>; - #size-cells = <0>; -Required properties for child nodes: +Required properties for i2c child bus nodes: - #address-cells = <1>; - #size-cells = <0>; - reg : The sub-bus number. -Optional properties for child nodes: +Optional properties for i2c child bus nodes: - Other properties specific to the multiplexer/switch hardware. - Child nodes conforming to i2c bus binding -- 2.1.4