From patchwork Tue Mar 21 11:08:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lukasz Majewski X-Patchwork-Id: 741502 X-Patchwork-Delegate: hs@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3vnVSH0rTlz9s7b for ; Tue, 21 Mar 2017 22:09:02 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 0ABEDC21D09; Tue, 21 Mar 2017 11:08:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 35516C21C50; Tue, 21 Mar 2017 11:08:53 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id CB94AC21C50; Tue, 21 Mar 2017 11:08:51 +0000 (UTC) Received: from mail-out.m-online.net (mail-out.m-online.net [212.18.0.10]) by lists.denx.de (Postfix) with ESMTPS id 88321C21C35 for ; Tue, 21 Mar 2017 11:08:51 +0000 (UTC) Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 3vnVS314rBz1qql4; Tue, 21 Mar 2017 12:08:50 +0100 (CET) Received: from localhost (dynscan01.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 3vnVS20JTLz3hjkF; Tue, 21 Mar 2017 12:08:50 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan01.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 1_Q4lLa5Nl1o; Tue, 21 Mar 2017 12:08:48 +0100 (CET) X-Auth-Info: 3BXTkyj/ZNhzgWIzAQQhWj3LoT5HEOBuwbw6OaRr4r4= Received: from localhost.localdomain (89-77-92-62.dynamic.chello.pl [89.77.92.62]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPSA; Tue, 21 Mar 2017 12:08:48 +0100 (CET) From: Lukasz Majewski To: Heiko Schocher , "Robert P. J. Day" , u-boot@lists.denx.de, Tom Rini Date: Tue, 21 Mar 2017 12:08:25 +0100 Message-Id: <1490094505-17929-1-git-send-email-lukma@denx.de> X-Mailer: git-send-email 2.1.4 Subject: [U-Boot] [PATCH] i2c: Set default I2C bus number X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" This patch allows using i2c commands (e.g. "i2c probe", "i2c md", etc) without the need to first select the bus number with e.g. "i2c dev 0". This is the "i2c" command behavior similar to the one from pre DM, where by default bus 0 was immediately accessible. Signed-off-by: Lukasz Majewski --- cmd/i2c.c | 10 ++++++++++ drivers/i2c/Kconfig | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/cmd/i2c.c b/cmd/i2c.c index 473153f..3dd7c6b 100644 --- a/cmd/i2c.c +++ b/cmd/i2c.c @@ -151,6 +151,16 @@ static int cmd_i2c_set_bus_num(unsigned int busnum) static int i2c_get_cur_bus(struct udevice **busp) { +#ifdef CONFIG_I2C_SET_DEFAULT_BUS_NUM + if (!i2c_cur_bus) { + if (cmd_i2c_set_bus_num(CONFIG_I2C_DEFAULT_BUS_NUMBER)) { + printf("Default I2C bus %d not found\n", + CONFIG_I2C_DEFAULT_BUS_NUMBER); + return -ENODEV; + } + } +#endif + if (!i2c_cur_bus) { puts("No I2C bus selected\n"); return -ENODEV; diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig index 8ac7aaf..4e9afc1 100644 --- a/drivers/i2c/Kconfig +++ b/drivers/i2c/Kconfig @@ -49,6 +49,20 @@ config I2C_CROS_EC_LDO avoid duplicating the logic in the TPS65090 regulator driver for enabling/disabling an LDO. +config I2C_SET_DEFAULT_BUS_NUM + bool "Set default I2C bus number" + depends on DM_I2C + help + Set default number of I2C bus to be accessed. This option provides + behaviour similar to old (i.e. pre DM) I2C bus driver. + +config I2C_DEFAULT_BUS_NUMBER + hex "I2C default bus number" + depends on I2C_SET_DEFAULT_BUS_NUM + default 0x0 + help + Number of default I2C bus to use + config DM_I2C_GPIO bool "Enable Driver Model for software emulated I2C bus driver" depends on DM_I2C && DM_GPIO