From patchwork Tue Nov 13 14:01:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997127 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="pXLEyYVi"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTny73Z7z9s3x for ; Wed, 14 Nov 2018 01:01:58 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387540AbeKNAAN (ORCPT ); Tue, 13 Nov 2018 19:00:13 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:50815 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387564AbeKNAAM (ORCPT ); Tue, 13 Nov 2018 19:00:12 -0500 Received: by mail-wm1-f67.google.com with SMTP id 124-v6so12119471wmw.0 for ; Tue, 13 Nov 2018 06:01:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=0uqZU8gDHiv/neEGi/hrgDK8MU/UOgRvLZjvxfNOd/I=; b=pXLEyYVi7xk0SDGCkD5Y1ijc20sYg43PO7FF5Ii9S7OMZMW80DFLiF+kCgRmUqxyiR o3bcuXYEa54fs2rggnBxWAa6iAM1kzvQVzhkWPUHnelnFzHhILejvVhWx3g3manDZ4xt Gfnhk0eLmrS2IAfQOJzCRBqP0kv1oT19u8VW0XkrHrnp+fob5e5aBYD4fbbBooLGPnOR a+0gn4pB9BDdohjzrBwvryRKmanWXkSSMBqmskFsDMAD2SaaseafMiaCt4zHSYjLLWbc C67jmWgjPFs5Lw0Css3+YkWBhQHRvMdQbfWwM99LWk0Y0ZB1eZg4dXVgb1y4EvJWfVEf fG8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=0uqZU8gDHiv/neEGi/hrgDK8MU/UOgRvLZjvxfNOd/I=; b=bGM68TxXODmKbMdedxkqXIGiTJmRCL1VsSS4jlVkKWg3+a2y0duyzw3yf1h9mgoVk2 K+SmRPxJxnViCGiTkBnrWYWzxmckWlJZtx7LX4fW2HYH7hUMBENLssApZG+HzPwAmMAp HYgBYJHty4Gg44R0y0QGtN+MzTTIzWdscIns18gEqvfriOIKg1rljzwR8RZQ1iwy8Ew9 rfn/j+A0dslMY5cQIZs8+xjvbvSGyOyhgpHHHCEaFJD+09YJO9NtK7+eCKxDfeGLh+n4 I/WWjZ2pLeokvkZnghawI+g0l2GxZaCqYY0BCOMrUlJoSvjNsmjbAHFhPVTJkZsF5sKr gwIg== X-Gm-Message-State: AGRZ1gJEj0u3vmzIMoiCKzihWQmLkNTJTXQB7tcXEP46ZNxUVaAle805 JBHkPNe4QOGuCn7A7LXsPXyzgd/OWxE= X-Google-Smtp-Source: AJdET5cGhZk6/cOVbPrvR9ypywUUj8C/WS5YdF9VjGZLtBZXxc7blVkWSGEcBSlK5+2a4sBzMvRZVw== X-Received: by 2002:a1c:7fc1:: with SMTP id a184mr1113108wmd.55.1542117715063; Tue, 13 Nov 2018 06:01:55 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.01.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:01:54 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 01/25] nvmem: add new config option Date: Tue, 13 Nov 2018 15:01:09 +0100 Message-Id: <20181113140133.17385-2-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to add nvmem support for MTD. TI DaVinci is the first platform that will be using it, but only in non-DT mode. In order not to introduce any new interface to supporting of which we would have to commit - add a new config option that tells nvmem not to use the DT node of the parent device. This way we won't be creating nvmem devices corresponding with MTD partitions defined in device tree. By default MTD will set this new field to true. Once a set of bindings for MTD nvmem cells is agreed upon, we'll be able to remove this option. Signed-off-by: Bartosz Golaszewski --- drivers/nvmem/core.c | 3 ++- include/linux/nvmem-provider.h | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index 9b18ce90f907..ac7971e8154e 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -604,7 +604,8 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config) nvmem->priv = config->priv; nvmem->reg_read = config->reg_read; nvmem->reg_write = config->reg_write; - nvmem->dev.of_node = config->dev->of_node; + if (!config->no_of_node) + nvmem->dev.of_node = config->dev->of_node; if (config->id == -1 && config->name) { dev_set_name(&nvmem->dev, "%s", config->name); diff --git a/include/linux/nvmem-provider.h b/include/linux/nvmem-provider.h index 1e3283c2af77..e53545e9852b 100644 --- a/include/linux/nvmem-provider.h +++ b/include/linux/nvmem-provider.h @@ -30,6 +30,7 @@ typedef int (*nvmem_reg_write_t)(void *priv, unsigned int offset, * @ncells: Number of elements in cells. * @read_only: Device is read-only. * @root_only: Device is accessibly to root only. + * @no_of_node: Device should not use the parent's of_node even if it's !NULL. * @reg_read: Callback to read data. * @reg_write: Callback to write data. * @size: Device size. @@ -53,6 +54,7 @@ struct nvmem_config { int ncells; bool read_only; bool root_only; + bool no_of_node; nvmem_reg_read_t reg_read; nvmem_reg_write_t reg_write; int size; From patchwork Tue Nov 13 14:01:10 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997184 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="1ikfHGcP"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTtD56hjz9rxp for ; Wed, 14 Nov 2018 01:05:40 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387533AbeKNAAP (ORCPT ); Tue, 13 Nov 2018 19:00:15 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:35690 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387564AbeKNAAO (ORCPT ); Tue, 13 Nov 2018 19:00:14 -0500 Received: by mail-wr1-f65.google.com with SMTP id z16-v6so13460830wrv.2 for ; Tue, 13 Nov 2018 06:01:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ksw4hZ+0N23CBRzViPcOA1hnkMZq7TwewkS2aWR80tA=; b=1ikfHGcPDC7civleiORZ2R6ytLyQkE+DF3bz38/TlgOGb4db6Pb5oyhZCqXDaGbq9u DMPdIAFqsnfD+HrHgIQRcFmJaUKvccb3hcn6kXpyiVb5WWDx8MKiSsTIKNeBAqS12BmK WTGRTHXYdtkpZ4bXgwIK9/EQ06exjzKtDLzIv0x9ygty09EtOkezSa7WPzHm/dtfUVc0 3TM292Mj0wUaEsBOyUFj3K1IrRLUtm6dISO4RJGy7DiDHtY+lmfEZpEdrXRWQq/44uqt jGXp6oIku4gvdtFVjyTgRR7z9WmtcqiX44GF0l5Msezrhrptp4uLgVx/09rGO1tOlIai c0QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ksw4hZ+0N23CBRzViPcOA1hnkMZq7TwewkS2aWR80tA=; b=oYrE2UwepsIhNPPit01NpCk/FAT2sxEavUjCRqV7W4HOs3EK2+6tS/Mq+lMTkMKNLd GeWWTES11FRyvLVGw9g2D6Rg0G0hg/6Yj4rPQz4AiBHPGCVrbELpW7YbTf8GK7mypd7I M5wK8C0T2mmq7lZNchecqw3C2/PewbzzXaYxbIS7PnIyH5kM18VXDjsZm3ONE+PP1eE7 VH61VP1h1NaRNUYlQbbVQ2UXL57LedMvY1nIolBWSPxsJeAkV4O4PtuS8GuSImLIRaJf SaHolDc54UgRtlUMAC5Gt+qJ3KbT0J11cvD4YvZYejPz93nRxIWG3P0lsZaAfMsV/Juh aEpQ== X-Gm-Message-State: AGRZ1gJ7npeB+VVKiAfg5/7Glg42oLS3iUfBM2fxXF3IrvIWbmaKy8my RD9dJK+wp/oYuJAlxI8bk7q+9A== X-Google-Smtp-Source: AJdET5ckp3K70W7StwZJeboEAtFKzDmx/OnuA1iLeoinTgd75JyxZfX9FHcefhNMMtZoneFrPyq7Mg== X-Received: by 2002:adf:eb0b:: with SMTP id s11-v6mr5036642wrn.102.1542117716930; Tue, 13 Nov 2018 06:01:56 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.01.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:01:56 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Alban Bedel , Bartosz Golaszewski Subject: [PATCH v2 02/25] mtd: add support for reading MTD devices via the nvmem API Date: Tue, 13 Nov 2018 15:01:10 +0100 Message-Id: <20181113140133.17385-3-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Alban Bedel Allow drivers that use the nvmem API to read data stored on MTD devices. For this the mtd devices are registered as read-only NVMEM providers. We don't support device tree systems for now. Signed-off-by: Alban Bedel [Bartosz: - include linux/nvmem-provider.h - set the name of the nvmem provider - set no_of_node to true in nvmem_config - don't check the return value of nvmem_unregister() - it cannot fail - tweaked the commit message] Signed-off-by: Bartosz Golaszewski Acked-by: Boris Brezillon --- drivers/mtd/Kconfig | 1 + drivers/mtd/mtdcore.c | 56 +++++++++++++++++++++++++++++++++++++++++ include/linux/mtd/mtd.h | 2 ++ 3 files changed, 59 insertions(+) diff --git a/drivers/mtd/Kconfig b/drivers/mtd/Kconfig index c77f537323ec..efbe7a6f1d8f 100644 --- a/drivers/mtd/Kconfig +++ b/drivers/mtd/Kconfig @@ -1,5 +1,6 @@ menuconfig MTD tristate "Memory Technology Device (MTD) support" + imply NVMEM help Memory Technology Devices are flash, RAM and similar chips, often used for solid state file systems on embedded devices. This option diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c index 97ac219c082e..5f1053d995b0 100644 --- a/drivers/mtd/mtdcore.c +++ b/drivers/mtd/mtdcore.c @@ -41,6 +41,7 @@ #include #include #include +#include #include #include @@ -488,6 +489,50 @@ int mtd_pairing_groups(struct mtd_info *mtd) } EXPORT_SYMBOL_GPL(mtd_pairing_groups); +static int mtd_nvmem_reg_read(void *priv, unsigned int offset, + void *val, size_t bytes) +{ + struct mtd_info *mtd = priv; + size_t retlen; + int err; + + err = mtd_read(mtd, offset, bytes, &retlen, val); + if (err && err != -EUCLEAN) + return err; + + return retlen == bytes ? 0 : -EIO; +} + +static int mtd_nvmem_add(struct mtd_info *mtd) +{ + struct nvmem_config config = {}; + + config.dev = &mtd->dev; + config.name = mtd->name; + config.owner = THIS_MODULE; + config.reg_read = mtd_nvmem_reg_read; + config.size = mtd->size; + config.word_size = 1; + config.stride = 1; + config.read_only = true; + config.root_only = true; + config.no_of_node = true; + config.priv = mtd; + + mtd->nvmem = nvmem_register(&config); + if (IS_ERR(mtd->nvmem)) { + /* Just ignore if there is no NVMEM support in the kernel */ + if (PTR_ERR(mtd->nvmem) == -ENOSYS) { + mtd->nvmem = NULL; + } else { + dev_err(&mtd->dev, "Failed to register NVMEM device\n"); + return PTR_ERR(mtd->nvmem); + } + } + + return 0; +} + static struct dentry *dfs_dir_mtd; /** @@ -570,6 +615,11 @@ int add_mtd_device(struct mtd_info *mtd) if (error) goto fail_added; + /* Add the nvmem provider */ + error = mtd_nvmem_add(mtd); + if (error) + goto fail_nvmem_add; + if (!IS_ERR_OR_NULL(dfs_dir_mtd)) { mtd->dbg.dfs_dir = debugfs_create_dir(dev_name(&mtd->dev), dfs_dir_mtd); if (IS_ERR_OR_NULL(mtd->dbg.dfs_dir)) { @@ -595,6 +645,8 @@ int add_mtd_device(struct mtd_info *mtd) __module_get(THIS_MODULE); return 0; +fail_nvmem_add: + device_unregister(&mtd->dev); fail_added: of_node_put(mtd_get_of_node(mtd)); idr_remove(&mtd_idr, i); @@ -637,6 +689,10 @@ int del_mtd_device(struct mtd_info *mtd) mtd->index, mtd->name, mtd->usecount); ret = -EBUSY; } else { + /* Try to remove the NVMEM provider */ + if (mtd->nvmem) + nvmem_unregister(mtd->nvmem); + device_unregister(&mtd->dev); idr_remove(&mtd_idr, mtd->index); diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index cd0be91bdefa..545070c2ee64 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -25,6 +25,7 @@ #include #include #include +#include #include @@ -341,6 +342,7 @@ struct mtd_info { struct device dev; int usecount; struct mtd_debug_info dbg; + struct nvmem_device *nvmem; }; int mtd_ooblayout_ecc(struct mtd_info *mtd, int section, From patchwork Tue Nov 13 14:01:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997129 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="flIOjd+6"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTp32JQkz9s47 for ; Wed, 14 Nov 2018 01:02:03 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387736AbeKNAAR (ORCPT ); Tue, 13 Nov 2018 19:00:17 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:40669 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387692AbeKNAAR (ORCPT ); Tue, 13 Nov 2018 19:00:17 -0500 Received: by mail-wm1-f66.google.com with SMTP id q26so1501990wmf.5 for ; Tue, 13 Nov 2018 06:01:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gfq4XRjjbAnhbxC0lgPGakIYrPJx0tENtiXKTaGI3BI=; b=flIOjd+6kFlVvUssc1XI60NRDkppc7AOUcbQs8WkhSZGBtFjuBtU92y0kC3j5xhchk EipnF51qbtzluJ7dOwyp2IZKZnW0goqSf4MX/Em6jBiAZ4t4o9vhyxHZMfmAR5t+0HNB Ys3aiIuvhVa/+O3hF79UN7yh33qkyNEaBHuoHtVGfnGn5wbe9z2H+eo+f1Zc3FbVJmFH 8wnPA/EP0FnSaiP9QX43G6lCFSupgWHMp9SxOXaEZSK+jonH5iwJ7bJ9LqtGYSorTV7D +WVQzV15CLUc45vAnldhnf018i57oWUwEnopThjG6YXezJDiQrsT0rb0PF0ZQqXACH93 udbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gfq4XRjjbAnhbxC0lgPGakIYrPJx0tENtiXKTaGI3BI=; b=bHD/MvP2gzHGOl5TuqQoHalhNFYm64UoJ9kl6a36RhuuEY3aC9vL8S2d1Z6PjId4W/ 8LD70pjsqU84qpPi94iT3ZFKVOaMiakw06c09WI1reU5FXSW4/97iTYyFRyQlNfT4EP6 Q+McGgiFuL8AJ5VdreytxJwe+yoQi2JJDNmZo54Yq1RNNuVr7MJuAsM+6YOXYIbnz9rF GpKZoPxaN1TMebzSvWaPqLv9BAPEjfTZSiRIY9c/lLXdZyz9/UDGIIZzPAdxFAlmFpAt LLZhJIptEVk+YNedISpzyYxvdRxISevo5v8YWqnozQBj5T28SgJPEEBQaxd/M6DwdM7n Jl/Q== X-Gm-Message-State: AGRZ1gIU/S0Naq60QgOx81myxM7xkIASFFkT2IdurXLAnRfSvUvAKEW/ 2bLQ83IEaACrnLuTprY+Kw6WCw== X-Google-Smtp-Source: AJdET5dVFYdef5NnXnoThRlxYuwormlMCw9pHVyvcwkVBO5TMKrATK3PcV48UNjo/+oa88y/xv/4uw== X-Received: by 2002:a1c:58c5:: with SMTP id m188-v6mr3181760wmb.85.1542117718885; Tue, 13 Nov 2018 06:01:58 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.01.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:01:58 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 03/25] ARM: davinci: dm365-evm: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:11 +0100 Message-Id: <20181113140133.17385-4-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-dm365-evm.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/arch/arm/mach-davinci/board-dm365-evm.c b/arch/arm/mach-davinci/board-dm365-evm.c index 8143756ff38b..8703fc18dd3b 100644 --- a/arch/arm/mach-davinci/board-dm365-evm.c +++ b/arch/arm/mach-davinci/board-dm365-evm.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -203,6 +204,27 @@ static struct platform_device davinci_aemif_device = { .num_resources = ARRAY_SIZE(davinci_aemif_resources), }; +static struct nvmem_cell_info davinci_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x7f00, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table davinci_nvmem_cell_table = { + .nvmem_name = "1-00500", + .cells = davinci_nvmem_cells, + .ncells = ARRAY_SIZE(davinci_nvmem_cells), +}; + +static struct nvmem_cell_lookup davinci_nvmem_cell_lookup = { + .nvmem_name = "1-00500", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct at24_platform_data eeprom_info = { .byte_len = (256*1024) / 8, .page_size = 64, @@ -781,6 +803,9 @@ static __init void dm365_evm_init(void) if (ret) pr_warn("%s: GPIO init failed: %d\n", __func__, ret); + nvmem_add_cell_table(&davinci_nvmem_cell_table); + nvmem_add_cell_lookups(&davinci_nvmem_cell_lookup, 1); + evm_init_i2c(); davinci_serial_init(dm365_serial_device); From patchwork Tue Nov 13 14:01:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997183 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="hPfwQE70"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTt540Ygz9rxp for ; Wed, 14 Nov 2018 01:05:33 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388115AbeKNADt (ORCPT ); Tue, 13 Nov 2018 19:03:49 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:54630 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387730AbeKNAAS (ORCPT ); Tue, 13 Nov 2018 19:00:18 -0500 Received: by mail-wm1-f66.google.com with SMTP id r63-v6so12089029wma.4 for ; Tue, 13 Nov 2018 06:02:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=H8x7i2Y0NQGhPOwYVcZG4ieMSrsXoI3OcuJ/XVYngLQ=; b=hPfwQE70p7pPEvw9+TUWD5NNH4b9dL17YrJaEUNEtZ7KYndN9V+FdRwV5aYAMttn0v QXve1XUIFOuEJJRuCd1VqaBj5QqxVpR9PMgABcgvfqvwoSl0undeasFfaTHFdE4oMd99 NcpL+1vyCCTTCfw1FOPmuveSOihp2RQpm3badhB9t273Qfu75hsUKkZx6PVqGP2zSMAJ M26MNR9rMwfRrVJYb4xVlmgb06t1aAnvUvPlHJ0ObUd95oNDAVMKAyVLecHO/OHTS9yf ejOGxnb6Vpp0Gmee1NYG2V4oHSrfk/ZF1Xcg9k9Z4EcjX+pATrJuI8AN4Lo8A7xNiw/7 /eNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=H8x7i2Y0NQGhPOwYVcZG4ieMSrsXoI3OcuJ/XVYngLQ=; b=i94zAjjPZVF6YJsLE36MXRgNbLAKTJ47jgKwhX2CXeHypwPbiPDW03tgfur56TPVze 1HxGwcMj6WMJe2Xb6w1kznuZ6ZthYmXHw37P/UQpSqW4lMNosTfnPqtKG4u14ISjGx/K o1m0P2u8Ya+gl7WU8JublNotYBpW0PPTyI0HIAC+E7H9V/h426CbKiF+virbp8uL28YL KAJsipQWPgEQ7UZLDiagHF2nxqJim67KuIOpzZRILC/TRWockJcntL1UP2Di33rRP58M eDQ1VU1bmir/ebD6POn/xZ2f2BiRksqZ9sQRCECuR1mhaJcACl7vpNJ5AqzAOhg85qLp TIUA== X-Gm-Message-State: AGRZ1gJi1YFtdHrj/L2HDV8oVV/iSFtn6gTjcpkGp9YWmMncq2aBWQBE fCwoIHeGoMDx9dkv3kZ8joFB9Q== X-Google-Smtp-Source: AJdET5dFcmh9LMc8AGT0EEsXUesVg/vqWwWx5Zo9mOUI6KdJwAKlRZQfUs9KoHRfAeOBsCksGprZXg== X-Received: by 2002:a1c:bc82:: with SMTP id m124-v6mr3337326wmf.76.1542117720757; Tue, 13 Nov 2018 06:02:00 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.01.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:00 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 04/25] ARM: davinci: dm644x-evm: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:12 +0100 Message-Id: <20181113140133.17385-5-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-dm644x-evm.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c index e4a8f9225d16..e1428115067f 100644 --- a/arch/arm/mach-davinci/board-dm644x-evm.c +++ b/arch/arm/mach-davinci/board-dm644x-evm.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -510,6 +511,27 @@ static struct pcf857x_platform_data pcf_data_u35 = { * - ... newer boards may have more */ +static struct nvmem_cell_info dm644evm_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x7f00, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table dm644evm_nvmem_cell_table = { + .nvmem_name = "1-00500", + .cells = dm644evm_nvmem_cells, + .ncells = ARRAY_SIZE(dm644evm_nvmem_cells), +}; + +static struct nvmem_cell_lookup dm644evm_nvmem_cell_lookup = { + .nvmem_name = "1-00500", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct at24_platform_data eeprom_info = { .byte_len = (256*1024) / 8, .page_size = 64, @@ -842,6 +864,8 @@ static __init void davinci_evm_init(void) platform_add_devices(davinci_evm_devices, ARRAY_SIZE(davinci_evm_devices)); #ifdef CONFIG_I2C + nvmem_add_cell_table(&dm644evm_nvmem_cell_table); + nvmem_add_cell_lookups(&dm644evm_nvmem_cell_lookup, 1); evm_init_i2c(); davinci_setup_mmc(0, &dm6446evm_mmc_config); #endif From patchwork Tue Nov 13 14:01:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997180 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="jDdFw9kR"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTsw5Jcwz9rxp for ; Wed, 14 Nov 2018 01:05:24 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387767AbeKNAAV (ORCPT ); Tue, 13 Nov 2018 19:00:21 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:35411 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387744AbeKNAAU (ORCPT ); Tue, 13 Nov 2018 19:00:20 -0500 Received: by mail-wm1-f68.google.com with SMTP id t15-v6so11575909wmt.0 for ; Tue, 13 Nov 2018 06:02:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9klMrKm/3PJPsH9a0HqCufZa/6Vrvj6NDHHgs6SRwqk=; b=jDdFw9kRW9gcJvRRdAZyjHYhnvNLGzy+wQsmSewMZw3DgFsy0N44E2WjOqJg63UxgX 3Z7tsCFbJDX/A1LvBBFuQI7ansJBzUW3ylklFfSQDmxSjVvA5gYoOPZOtQr86pYHhn3b C6agZtyhqW6wai5t3iC9y1MVTAgU7XJLCDHokBZ0C8Xcg2D8ZF23aj4kDiyjyAoC1CuS fXrN48zjXbOe5evTX8KZwLoP9WuQT4+gM69XqzU8vucZ6Kf6NWOE6QzgnhQg7LXd05cQ UgKZEqOKo9bBDwcjVE93vxVDw3XSQ1UPjJg+nC0g8PCgbOcw38bnkfYgAWAH5G4tHsFP +4Jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=9klMrKm/3PJPsH9a0HqCufZa/6Vrvj6NDHHgs6SRwqk=; b=SgWPqvugwWgCoMkHgH0Q/tDd06jJssayiEvC6cTxD6Z2muOS14vrcEEuLBqrtW7Jrc MW8ig0f/5iBzFQAXMrjcYk8sc+xzIfPgAy4Fy52vs/QWDG9RBPEdiOv+DLfAus+a0RS1 Om3Lz/ZRunQxM2/JwGkYwQI19fFReTG5mPq9/8Nar6Ldn2Q92RYSB/8Yml0uqcP82gla yRomojUGIJULI6IMjKmQsNLyCA7NEQTOL/01VbMNJA2EzUKZkmUb+K9RlFxkorBRsvS5 o6HppmA5HUHxz1DoW3wnmreVSwNVx/k+tX+EpljCkni5N5LkytebZhg9L4fD3uMvZnXy F/NQ== X-Gm-Message-State: AGRZ1gL1HlSRxfLbMcQwMYznxfYcZVEBcc77lr7jydQCQ0mllpr64F0j CQZwDETnrHfO+He1KPnx+t/jRQ== X-Google-Smtp-Source: AJdET5eh9qS2xiVsYcwo2W/msU20vv4lzowJVug19BE2Xd2dwUU26CVKyFE+TK95TPRYawmJ6efSsg== X-Received: by 2002:a1c:730b:: with SMTP id d11-v6mr3319072wmb.107.1542117722512; Tue, 13 Nov 2018 06:02:02 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:01 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 05/25] ARM: davinci: dm646x-evm: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:13 +0100 Message-Id: <20181113140133.17385-6-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-dm646x-evm.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 3e5ee09ee717..8d5be6dd2019 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include @@ -342,6 +343,27 @@ static struct pcf857x_platform_data pcf_data = { * - ... newer boards may have more */ +static struct nvmem_cell_info dm646x_evm_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x7f00, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table dm646x_evm_nvmem_cell_table = { + .nvmem_name = "1-00500", + .cells = dm646x_evm_nvmem_cells, + .ncells = ARRAY_SIZE(dm646x_evm_nvmem_cells), +}; + +static struct nvmem_cell_lookup dm646x_evm_nvmem_cell_lookup = { + .nvmem_name = "1-00500", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct at24_platform_data eeprom_info = { .byte_len = (256*1024) / 8, .page_size = 64, @@ -815,6 +837,8 @@ static __init void evm_init(void) pr_warn("%s: GPIO init failed: %d\n", __func__, ret); #ifdef CONFIG_I2C + nvmem_add_cell_table(&dm646x_evm_nvmem_cell_table); + nvmem_add_cell_lookups(&dm646x_evm_nvmem_cell_lookup, 1); evm_init_i2c(); #endif From patchwork Tue Nov 13 14:01:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997131 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="s82lrLNE"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTp75rSmz9sBZ for ; Wed, 14 Nov 2018 01:02:07 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387762AbeKNAAX (ORCPT ); Tue, 13 Nov 2018 19:00:23 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:38033 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387764AbeKNAAW (ORCPT ); Tue, 13 Nov 2018 19:00:22 -0500 Received: by mail-wm1-f68.google.com with SMTP id f2-v6so11498199wme.3 for ; Tue, 13 Nov 2018 06:02:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MBcgf2nPd9qfbo4Sweh/oy//ofcxfsuOB7x8NJzIAM8=; b=s82lrLNEYvwtPScP0erBPVI689DjeHX8K4Z2YOKi/1SbNbd5eo7CfaNHSJrgMzuut8 zO9Bk5ivNlOydFEoQPPxnbcqLp/U4mY2k4zRm7qjZMBma4vcA71t7SDjzF2DoXfqwRUk laP2HhyYakJMGwV8sacGOq2A3J7+j4hCQKw5rnguQdLzm4fWk1zrLnNZVbaPz6T8yl+D GEjGlToCDSuoQyN/7vRoBRg59OXWmif238qYqlvAuxVy+dukgnvPQqlnJBwOp3e6FNF0 5ax3cKWrCE+n/67huJiBalkiyMjGD5PL/H+thxMH3HmaxR5DpbPPGcTbx+wXAjfqxZ+I I6fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=MBcgf2nPd9qfbo4Sweh/oy//ofcxfsuOB7x8NJzIAM8=; b=HqQIj1kyoip8H30jEhQ+FlCAtF0cqdCgJpBRmt7G/cmFUBlCKaoB368dzdglavuDHO crgbNEo7Hp0nr7aaQG5ejQtkAGA89czrgs3/F57sNlHkNXxQET1PN28en5dbWolJcJTb 7VEf74Tj/g5bGcw9UEiViaFwrAp2+EMFlJ9YF3jzgwkZcliwGtZQ0PoDENb7JhEdVHyI cS5E80OUoEAZJ8DA66xhLkZ3VE8LS1dX0fqyU5P03wmEE0AI02cRyosxlU5p9YW6ZGGG kOxzO8lSUNiS91ZtFI7E0VluTafYZOKUgP68ECMmdqr/M9pvHMykj5l7+fOfdVX6YXYU u9uQ== X-Gm-Message-State: AGRZ1gIbUYojl0HorhJAtvrwIb9p4f6SdW8HGbQJhGabI6HdLoBnDDh9 ZEIiZuQ6IwuKsxaPpsEJWXj91A== X-Google-Smtp-Source: AJdET5eo0yk9C4P5t7GkAu/UgDBxNFHT6slEZbPHc0cit4MGTQjXPt6qB9J90xv8PBV774TU6lRppQ== X-Received: by 2002:a7b:c7d3:: with SMTP id z19-v6mr3147764wmk.151.1542117724688; Tue, 13 Nov 2018 06:02:04 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:03 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 06/25] ARM: davinci: da830-evm: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:14 +0100 Message-Id: <20181113140133.17385-7-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-da830-evm.c | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c index 7d8ab36ff83d..e52ec1619b70 100644 --- a/arch/arm/mach-davinci/board-da830-evm.c +++ b/arch/arm/mach-davinci/board-da830-evm.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -435,6 +436,27 @@ static inline void da830_evm_init_lcdc(int mux_mode) static inline void da830_evm_init_lcdc(int mux_mode) { } #endif +static struct nvmem_cell_info da830_evm_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x7f00, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table da830_evm_nvmem_cell_table = { + .nvmem_name = "1-00500", + .cells = da830_evm_nvmem_cells, + .ncells = ARRAY_SIZE(da830_evm_nvmem_cells), +}; + +static struct nvmem_cell_lookup da830_evm_nvmem_cell_lookup = { + .nvmem_name = "1-00500", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct at24_platform_data da830_evm_i2c_eeprom_info = { .byte_len = SZ_256K / 8, .page_size = 64, @@ -620,6 +642,10 @@ static __init void da830_evm_init(void) __func__, ret); davinci_serial_init(da8xx_serial_device); + + nvmem_add_cell_table(&da830_evm_nvmem_cell_table); + nvmem_add_cell_lookups(&da830_evm_nvmem_cell_lookup, 1); + i2c_register_board_info(1, da830_evm_i2c_devices, ARRAY_SIZE(da830_evm_i2c_devices)); From patchwork Tue Nov 13 14:01:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997133 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="2JE+mT1M"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpB5QxLz9sCX for ; Wed, 14 Nov 2018 01:02:10 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387799AbeKNAAZ (ORCPT ); Tue, 13 Nov 2018 19:00:25 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:45996 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387792AbeKNAAY (ORCPT ); Tue, 13 Nov 2018 19:00:24 -0500 Received: by mail-wr1-f65.google.com with SMTP id k15-v6so13405024wre.12 for ; Tue, 13 Nov 2018 06:02:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=0nBaGmCe8u5S4UVpGAAxUhIXM3J5gHJ7tC52GdLpEYw=; b=2JE+mT1MHwAJB9tMw7ZKBp/ZTRI9D1TvxAJJi+MOUi9GyzhUTfoCywDSOLBlpvnf9u LLdzWD/qqqRyaGwTmvCZh82uJVEXArdE5iGRdZshN2ym4q9Bt510dJ1jcLdpVIAfk2TK 7r65XjuS+KsX6897coZMa4La9TbNLn1R9fIFw61FXKyHr1KLBXmoEuwPzX6oVKZaObiZ ULWBfXRMOgXsFHb9fszKVRQEWnEUoLM4d4mv7py/Me2OK5iOoX+bo+pB0O05aPojZbMC Pw4N7k77lPVTvbsc7xJYpH1l9dRWJBsTqXuDn6D090NhjL/36px6Bm3m62WXPxKiApWd jAXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=0nBaGmCe8u5S4UVpGAAxUhIXM3J5gHJ7tC52GdLpEYw=; b=rMsY3L5INNPHxEyvg1OAEZ6waNuvk6HyBT0hSdcj0kKvItp4gEeRD8fgvO4GdbhKf7 uMkDqKUfoxhMnGT09k6aTBqNzeGOCi9ZnBi8aKS0+Lk6Kx9rgm1bYOWIs3f9sbKb7jQz 1g0psJX18F7vmWIzh64RyGzktQLyb+IuALzWhM/GrRz9dJK2/zFLhh31vR+jaq4NJNtp k62FjrbfhoiYOuXwL/jrZzdtN3sbFgorusB3yNvnHrtDlHjbas1P4hOfvhF9r9QpxFR9 gaRsG2PFsezOEXHocDo8bIMYoo8nAaa4imD/D/ncRJR3iUgq8JP58UnOwbU6DFu3HUar fbtA== X-Gm-Message-State: AGRZ1gL3HOspHCludHmanqWzKc+dtWR2gtjgjC5iGD0+9ZpkkxF/Bwzh eGdEbgxvJSBurk8g1JSCOz/KRQ== X-Google-Smtp-Source: AJdET5edcxTPvfdf26vGBHt0p8MJGe74nWAFbrLFpUABbvq1P0sFXZKijao2Y5aEZMtYGy8ZPU627Q== X-Received: by 2002:adf:93e6:: with SMTP id 93-v6mr4932479wrp.311.1542117726462; Tue, 13 Nov 2018 06:02:06 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:05 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 07/25] ARM: davinci: mityomapl138: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:15 +0100 Message-Id: <20181113140133.17385-8-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-mityomapl138.c | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c index 2933e0c87cfa..8df16e81b69e 100644 --- a/arch/arm/mach-davinci/board-mityomapl138.c +++ b/arch/arm/mach-davinci/board-mityomapl138.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -161,6 +162,31 @@ static void read_factory_config(struct nvmem_device *nvmem, void *context) mityomapl138_cpufreq_init(partnum); } +/* + * We don't define a cell for factory config as it will be accessed from the + * board file using the nvmem notifier chain. + */ +static struct nvmem_cell_info mityomapl138_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x64, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table mityomapl138_nvmem_cell_table = { + .nvmem_name = "1-00500", + .cells = mityomapl138_nvmem_cells, + .ncells = ARRAY_SIZE(mityomapl138_nvmem_cells), +}; + +static struct nvmem_cell_lookup mityomapl138_nvmem_cell_lookup = { + .nvmem_name = "1-00500", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct at24_platform_data mityomapl138_fd_chip = { .byte_len = 256, .page_size = 8, @@ -543,6 +569,9 @@ static void __init mityomapl138_init(void) davinci_serial_init(da8xx_serial_device); + nvmem_add_cell_table(&mityomapl138_nvmem_cell_table); + nvmem_add_cell_lookups(&mityomapl138_nvmem_cell_lookup, 1); + ret = da8xx_register_i2c(0, &mityomap_i2c_0_pdata); if (ret) pr_warn("i2c0 registration failed: %d\n", ret); From patchwork Tue Nov 13 14:01:16 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997176 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="vO//26UF"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTsb1zvvz9rxp for ; Wed, 14 Nov 2018 01:05:07 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387823AbeKNAA0 (ORCPT ); Tue, 13 Nov 2018 19:00:26 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:36207 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387802AbeKNAA0 (ORCPT ); Tue, 13 Nov 2018 19:00:26 -0500 Received: by mail-wr1-f67.google.com with SMTP id z13-v6so13445547wrs.3 for ; Tue, 13 Nov 2018 06:02:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2dGXQZPFaTjyJ9mbBpSbIbBRV6cQuE8HcUaZBf8FEvM=; b=vO//26UF3txJxtF/2FCpjLmGd2dVHLNEN4upAAl6DlwQOZBtNjhOd7m652wyigewuB vM70iRUYi0eXzIuma6nuWHxed3jdh3GzpMtfIPEC4if70duX2MOLSrKqeyCb4B1NkQFd S4Iw7UqriQGMsUqkEUlNPbXVL67xhSoRsr/VUXn9jIrZDbuYqXqBRjFJ3oxg4wQI0UYt ZGeBxHJVDGPjsSvBiBB5fXl876Km+cBW4QVdOqGUEd3PKnd4TqpXzW/aOoHVuhZenq/2 jYbvQYQCdWm0F/1iiDJXRnO4wC0gN7YNSNaulIS4pX7pw3JCdligOFr9VfFpSXGs9MM7 T1Ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2dGXQZPFaTjyJ9mbBpSbIbBRV6cQuE8HcUaZBf8FEvM=; b=eutjSdniPnT5rQAkiSrqA9xD44uk+Q1Qc8iaTt7wnr/Icdv5LcDTmcEQQAKIDxcT5t GXVjDnY6Dnjd797/YHzmaf7p7TYgkahCr5RiatdPRCNCV4ATtn2/F3FoZIbCZABe2Nk7 v4Gm/MXUUO6iyUGHFvCzU0GzVHVQwabCZ5TIvWdMh8DBLFQdfkp5ZNsd1PLWGN7Etgtv ZxcFsE7nsfi84CGai+qIQNh6lsJEDBfe7nPjHaPguQcEW7PnHTX2UhL3uTkRb/ebJkSH Jj1GOCqJxjJ/qf0GiarGa/PI5cIcWApycxcfylg/bOf11aVlB8czZySEYXlS0CWCLMs+ ClUA== X-Gm-Message-State: AGRZ1gIHTiAaQMwaCBxw2BjqVOkxNRNqWpsYs/DukbAVm8xA0Xz4v2wk b1J9fRkVBzgiNWZFI02/PzlZqQ== X-Google-Smtp-Source: AJdET5dZ1kKaEOAo9CCIMFvceqpnOF650fkNUXufEbms5NWmS8ZOjj3kjC8ZSJ0SgytoS9e22Cz6kA== X-Received: by 2002:adf:eb0b:: with SMTP id s11-v6mr5037323wrn.102.1542117728193; Tue, 13 Nov 2018 06:02:08 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:07 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 08/25] ARM: davinci: dm850-evm: use cell nvmem lookup for mac address Date: Tue, 13 Nov 2018 15:01:16 +0100 Message-Id: <20181113140133.17385-9-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-da850-evm.c | 29 +++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index e1a949b47306..bac2162e2153 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -100,6 +101,31 @@ static struct mtd_partition da850evm_spiflash_part[] = { }, }; +static struct nvmem_cell_info da850evm_nvmem_cells[] = { + { + .name = "macaddr", + .offset = 0x0, + .bytes = ETH_ALEN, + } +}; + +static struct nvmem_cell_table da850evm_nvmem_cell_table = { + /* + * The nvmem name differs from the partition name because of the + * internal works of the nvmem framework. + */ + .nvmem_name = "MAC-Address0", + .cells = da850evm_nvmem_cells, + .ncells = ARRAY_SIZE(da850evm_nvmem_cells), +}; + +static struct nvmem_cell_lookup da850evm_nvmem_cell_lookup = { + .nvmem_name = "MAC-Address0", + .cell_name = "macaddr", + .dev_id = "davinci_emac.1", + .con_id = "mac-address", +}; + static struct flash_platform_data da850evm_spiflash_data = { .name = "m25p80", .parts = da850evm_spiflash_part, @@ -1395,6 +1421,9 @@ static __init void da850_evm_init(void) davinci_serial_init(da8xx_serial_device); + nvmem_add_cell_table(&da850evm_nvmem_cell_table); + nvmem_add_cell_lookups(&da850evm_nvmem_cell_lookup, 1); + i2c_register_board_info(1, da850_evm_i2c_devices, ARRAY_SIZE(da850_evm_i2c_devices)); From patchwork Tue Nov 13 14:01:17 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997175 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="amZHdIrn"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTsQ0pc7z9sBh for ; Wed, 14 Nov 2018 01:04:58 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387867AbeKNAA3 (ORCPT ); Tue, 13 Nov 2018 19:00:29 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:39324 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387802AbeKNAA2 (ORCPT ); Tue, 13 Nov 2018 19:00:28 -0500 Received: by mail-wm1-f65.google.com with SMTP id u13-v6so11539081wmc.4 for ; Tue, 13 Nov 2018 06:02:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2eIRMJcdB28q8gd3gkQor3tkK+DGn7qHJn7Cj+8GDeU=; b=amZHdIrnSs7c8jZW92v9Kikt9NDZvSE6hQEPbCPyn2jDxbBwywkhabdh36IBU1q31I o6pm2Jczv5JXrWUl1K6fffJWSjND3io0wOOjtrrItgj0If9D69u/xKrIZ25/2lITShgd Dny/nLUQJnoKUvKCJlxVTnRy6FnlDomyFFy3tp/bVeVjVDPRGVgcDndIQiZ06fPpztU/ fww7ux7TxKoOvD0fTJIWQFDm2FArtwBTw4VL7xqfYIVlenWeRRCSBjvEkihfOAD081ix zZ/lY675M6RTp+UAvj+yhod3/e4INrDAygE5LGpdh2JWXoVGrAE49on7RWLPp9uaHVYN g7tA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2eIRMJcdB28q8gd3gkQor3tkK+DGn7qHJn7Cj+8GDeU=; b=keK4yoPQu/bAhkqoYYtwZbhb07n/FHOxFc6ZxJilXFVA1tmE6onUXNNWTFeU7380Ds 2D0RfpiFEPXL8eY0du4dCZLFGz0jS/kP7LWBSYe15o/ulJpDHrDtT0x/jjLhTbOt0n4u xxzbUHFQEMankVELgiOOhpyPXx7JrF1yp+pljalPA/p/9PoANtLGaxHELHVf6lMd5TDH QMem+SIrE/HvpuBH7ZAm2Ec32Onzza/iiNtTgge4tHCsBHAqMueV3+ra8+ufg7edf7xn kIQ+EmUD6bKxMQb/9HnKAa9w6G46JcxgsywwfwFtRYw3OUyBRHSXKVa0kq6J2aWWcWaL uagw== X-Gm-Message-State: AGRZ1gLPxmFqmuurL2vtSLDRjSsQXKopVFs+a8pZ5hD65agNgqAN/egS kJVKqc2uyGZ46pB+V8S00k+bBg== X-Google-Smtp-Source: AJdET5eoE64XWNNiFm19EqpK/Nc3Y8dt7f/33XUO4NGqA04C77zBLDLjisFr8ov6/0MZ+gkc3J/b9A== X-Received: by 2002:a1c:38c5:: with SMTP id f188-v6mr3268849wma.19.1542117729980; Tue, 13 Nov 2018 06:02:09 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:09 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 09/25] ARM: davinci: da850-evm: remove unnecessary include Date: Tue, 13 Nov 2018 15:01:17 +0100 Message-Id: <20181113140133.17385-10-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski The include file for at24_platform_data is not needed in this file. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-da850-evm.c | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index bac2162e2153..6a29baf0a289 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c @@ -20,7 +20,6 @@ #include #include #include -#include #include #include #include From patchwork Tue Nov 13 14:01:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997137 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="Y1Ikk8Ng"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpJ4rSsz9sBn for ; Wed, 14 Nov 2018 01:02:16 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387853AbeKNAAb (ORCPT ); Tue, 13 Nov 2018 19:00:31 -0500 Received: from mail-wr1-f68.google.com ([209.85.221.68]:33842 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387855AbeKNAAa (ORCPT ); Tue, 13 Nov 2018 19:00:30 -0500 Received: by mail-wr1-f68.google.com with SMTP id j26-v6so13439609wre.1 for ; Tue, 13 Nov 2018 06:02:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Ccuz9dZlPq5ZTOzECk8TCynM67LjW14hECdEnE8yAoo=; b=Y1Ikk8NgQXMqwpoVUP121s+8HRZcWcJ2uhzlSaFno9Jt35RotfDNIizNFi2pJSERdE JY3i7MHMmIdMxBfGAOZXFfscqNPbJorgU6YlbYEPchiKNNSmauwS+CqByewU7L5P2Pb2 Ty+35fPZUl9PamqqCj1kh83hinbakmM/par85eA1i9xi7NSmU7BaXT5njEonCBrre3bp ZjjKoYd0lZFz9AkNwYz30Cpt/TT+zvrwVg9+76xjFlrdXY9Ie8Ata8EZ1rlmlC/9A9XG hZENno7gq9eKRmpVgJ7OziWoK2RubCX81HdDrJ74k73B+qpIt9XZzAfY/RQpLZ5lsH+B ZPQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Ccuz9dZlPq5ZTOzECk8TCynM67LjW14hECdEnE8yAoo=; b=EJsq+tBCiHloxW8Yb7fYXmaBoCQC5vaSlG0rKKEb/+R0+gZ0xoBKGieTwW8b5cB2mD FnH1XS2gJLnjeAf+DjQXImnsPp6tp8ElDIpJiOmRARkaui8XcWR3M2HcAyJAjyi+oNWx 3i6cflMYR3pQA2wtPOjPRCiX5i5CTZrM7AFxyKIXwbMLGI7ksAoIyL2+L7Mpn1n2z084 YjiiKF8b7SvVRSJLSSxYZX+n/ECI7++twd6AJeI9gLmkw7AjTmOLw9Sc3QK1elzkNpYV AVu+42st7eQ3RngWJ/WlHShBifqm6aPV57VXvtFh1KSiLoTwofuBCt+Hl0EXazvnTQ8Q cqDA== X-Gm-Message-State: AGRZ1gJirnr9Sj+1Dkk1WKyfQEAi2j3JjLuZCyT8SwJsY5epGrY/knHB azUlw9qMPyIRv77vCYbOBu81mA== X-Google-Smtp-Source: AJdET5eG9CTFTnCYCng22fl6MqKtw+y6SlVDe065gFz+CvwaX0lJzR27KK+1HT0w6VQ4Oij2wpEgHA== X-Received: by 2002:a5d:4b05:: with SMTP id v5-v6mr4999594wrq.5.1542117731700; Tue, 13 Nov 2018 06:02:11 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:11 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 10/25] net: ethernet: provide nvmem_get_mac_address() Date: Tue, 13 Nov 2018 15:01:18 +0100 Message-Id: <20181113140133.17385-11-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We already have of_get_nvmem_mac_address() but some non-DT systems want to read the MAC address from NVMEM too. Implement a generalized routine that takes struct device as argument. Signed-off-by: Bartosz Golaszewski --- include/linux/etherdevice.h | 1 + net/ethernet/eth.c | 38 +++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h index 572e11bb8696..2c0af7b00715 100644 --- a/include/linux/etherdevice.h +++ b/include/linux/etherdevice.h @@ -32,6 +32,7 @@ struct device; int eth_platform_get_mac_address(struct device *dev, u8 *mac_addr); unsigned char *arch_get_platform_mac_address(void); +int nvmem_get_mac_address(struct device *dev, void *addrbuf); u32 eth_get_headlen(void *data, unsigned int max_len); __be16 eth_type_trans(struct sk_buff *skb, struct net_device *dev); extern const struct header_ops eth_header_ops; diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c index fd8faa0dfa61..df38593d1bb4 100644 --- a/net/ethernet/eth.c +++ b/net/ethernet/eth.c @@ -47,6 +47,7 @@ #include #include #include +#include #include #include #include @@ -548,3 +549,40 @@ int eth_platform_get_mac_address(struct device *dev, u8 *mac_addr) return 0; } EXPORT_SYMBOL(eth_platform_get_mac_address); + +/** + * Obtain the MAC address from an nvmem cell named 'mac-address' associated + * with given device. + * + * @dev: Device with which the mac-address cell is associated. + * @addrbuf: Buffer to which the MAC address will be copied on success. + * + * Returns 0 on success or a negative error number on failure. + */ +int nvmem_get_mac_address(struct device *dev, void *addrbuf) +{ + struct nvmem_cell *cell; + const void *mac; + size_t len; + + cell = nvmem_cell_get(dev, "mac-address"); + if (IS_ERR(cell)) + return PTR_ERR(cell); + + mac = nvmem_cell_read(cell, &len); + nvmem_cell_put(cell); + + if (IS_ERR(mac)) + return PTR_ERR(mac); + + if (len != ETH_ALEN || !is_valid_ether_addr(mac)) { + kfree(mac); + return -EINVAL; + } + + ether_addr_copy(addrbuf, mac); + kfree(mac); + + return 0; +} +EXPORT_SYMBOL(nvmem_get_mac_address); From patchwork Tue Nov 13 14:01:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997171 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="1vYYzEVM"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrx1rmNz9rxp for ; Wed, 14 Nov 2018 01:04:33 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387915AbeKNAAc (ORCPT ); Tue, 13 Nov 2018 19:00:32 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:51372 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387854AbeKNAAb (ORCPT ); Tue, 13 Nov 2018 19:00:31 -0500 Received: by mail-wm1-f67.google.com with SMTP id w7-v6so12036612wmc.1 for ; Tue, 13 Nov 2018 06:02:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Wc5Df3TA4f94uLSsVA/a5jHyDSL54/2MBnBTB6cxEnk=; b=1vYYzEVMAGadRKLT0RQ86f6NaJeDBQdRo5PcIQW+gjQaEMORE5p4BmSYnozx2+bm01 Q2CjN2KqClhs3TvHGgbhYqzQXBryzHjpEVYV9sYA6qh5JjGG5V51d7dvn/OwjoJf7W0h Oa4OoBuyk4LpExaIlebw8tG81zlEMlBJ+qPS+KDG71vZtZIfZHyMc8wKG4ywI1oI9vSM aL3U5atBVGsibUiB+VAQqZZQcSrLbRRfNw1X+If+93zWPfsBjLFSbKNldeD47SVTv3Z7 6W42HFENmnRdP/h6KFZzTdTQjdgNiBU4isB59h9pougLYIerBRIyB+YEzk4MQIefVS7g bnfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Wc5Df3TA4f94uLSsVA/a5jHyDSL54/2MBnBTB6cxEnk=; b=qpReVvJZJ9vR6BexmFvHOS4ZOF5+WJTIKmmL+j38Zy267Hcl9qgGfkGMbhNUT4d2z3 XemmZM/fGIK+fJHGAWczUs1+WOCKs4ezZSAKhrvlbwmwZVmrfmSbfd/IutOAleRL/ngD Duul1+RG/bAnmUNJ35l7HmCoNy1rQHxpyKZWgUZRWXzxxBZGUXyi0BdELewWDtwAxYqq HBmU6cA3MY+CGav7ygQ0N/akfAXNrBz/szRtwErA/RUe8CSV1T9fDsB5TKPH5tVsL8TU 8xKPEaNucsLKEzr/6RaeJGJ7Rfp8OnF5bXZkGEIcYblckOzVB01LLNGEY7WIAGVWKUH2 M+cQ== X-Gm-Message-State: AGRZ1gKP7CzUIqcWgEJuikpIoqWNDkQanNLjTJjizB1z7jTd7TWRbozL V8OG2AqVTEvneFqcbJ6dDK8RRQ== X-Google-Smtp-Source: AJdET5eCneZzsonjCIJKb/v0cfrebw9r5UEFvH3gsPSan+oKyRzFwJATmLjnp+gyJK9zwU1UItgv/w== X-Received: by 2002:a1c:f30b:: with SMTP id q11-v6mr3301060wmq.45.1542117733498; Tue, 13 Nov 2018 06:02:13 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:12 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 11/25] net: cadence: switch to using nvmem_get_mac_address() Date: Tue, 13 Nov 2018 15:01:19 +0100 Message-Id: <20181113140133.17385-12-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We now have a generalized helper routine to read the MAC address from nvmem which takes struct device as argument. The nvmem subsystem will then try device tree first before all other potential providers. Signed-off-by: Bartosz Golaszewski Acked-by: Nicolas Ferre --- drivers/net/ethernet/cadence/macb_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c index 1d86b4d5645a..d9a208f7bb40 100644 --- a/drivers/net/ethernet/cadence/macb_main.c +++ b/drivers/net/ethernet/cadence/macb_main.c @@ -4055,7 +4055,7 @@ static int macb_probe(struct platform_device *pdev) if (mac) { ether_addr_copy(bp->dev->dev_addr, mac); } else { - err = of_get_nvmem_mac_address(np, bp->dev->dev_addr); + err = nvmem_get_mac_address(&pdev->dev, bp->dev->dev_addr); if (err) { if (err == -EPROBE_DEFER) goto err_out_free_netdev; From patchwork Tue Nov 13 14:01:20 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997168 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="bv00UTRt"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrv0G2Qz9rxp for ; Wed, 14 Nov 2018 01:04:30 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387935AbeKNAAf (ORCPT ); Tue, 13 Nov 2018 19:00:35 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:51376 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387925AbeKNAAd (ORCPT ); Tue, 13 Nov 2018 19:00:33 -0500 Received: by mail-wm1-f67.google.com with SMTP id w7-v6so12036753wmc.1 for ; Tue, 13 Nov 2018 06:02:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ow7Ut1GNJ0NN6XzS8yWgikbMVrG9z5cqZIlLq+KQDIE=; b=bv00UTRtZfOTTESxlTwAP96Arhu8T5PCHrwxCFRnOc/Oew7CX7onM+8BVynHJ1ewPq H92YdHhZJxvAxuAQViJWKmgjAYYpAyxssPxW2bS73xu6kVuE1MeguhWX5zNNROFNt5IK Wkpq52HSVVGrkcsAPWyg78ES3X1G5fTD/xfkeux4KNE7/MgHAiXOzTffGrcjtKm9Zk3S 7XDqtNs/D3ERfaLn5rWXejg1atmqKKw22zrgVFAfiUhB7fq1hrNHA6aSNaav0JxqDX+2 eg51yFk5xxxQu8pxQgxFilbzRAe8Y2ynr3AO/XWyZVecGLfYoGdDWW7TlTuMAHRMwADY TCyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ow7Ut1GNJ0NN6XzS8yWgikbMVrG9z5cqZIlLq+KQDIE=; b=RXLssu6QqQ+ByPVAPl/jjZ2jBv7ILXhGNdaZZMkLov8PtBMJ/JBVFv79Ck2cmFc31e Cw9NbYAoAOEhvYgqs1xWSYk3V7/4HmObjx82PmxOnsNsdP9rv7nI6YyOGZ3TVZK3O/Ut RtvIY9rMcoE86LicrpPTEzgYBLJ7ZyRYOZwg5SGFmtB5b3w6qnzZDLEye9KEiCGN1BRG QQGv3JJuAYtfFa5dsUZJR3Q4VIH2HUFCuyt7kytLTJbqZzXVgjoGmV4eNY5NunZulVm0 V00LsrPYUuCsTTK0S9tAkeoVmDAuV8oc1PjW2sbE3J1afmdvjOSifL2u9X7XX7lxd5v1 Eifw== X-Gm-Message-State: AGRZ1gK6YJrJKoSJkekKrdH/SM8G51xY/Z00WSZkPgTvssZFN9SZfoFR 0IP8fu4DhQoPdtC7x2HisZjfiA== X-Google-Smtp-Source: AJdET5f1p898rgta//ar53TLhYOFfejlqpL3mlIo0fcQPy1QiZ+3q7s7/E75x/rDi2YpkEA93n4W2A== X-Received: by 2002:a1c:3c83:: with SMTP id j125-v6mr3222964wma.65.1542117735429; Tue, 13 Nov 2018 06:02:15 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:14 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 12/25] of: net: kill of_get_nvmem_mac_address() Date: Tue, 13 Nov 2018 15:01:20 +0100 Message-Id: <20181113140133.17385-13-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We've switched all users to nvmem_get_mac_address(). Remove the now dead code. Signed-off-by: Bartosz Golaszewski Reviewed-by: Rob Herring --- drivers/of/of_net.c | 39 --------------------------------------- include/linux/of_net.h | 6 ------ 2 files changed, 45 deletions(-) diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c index 53189d4022a6..810ab0fbcccb 100644 --- a/drivers/of/of_net.c +++ b/drivers/of/of_net.c @@ -81,42 +81,3 @@ const void *of_get_mac_address(struct device_node *np) return of_get_mac_addr(np, "address"); } EXPORT_SYMBOL(of_get_mac_address); - -/** - * Obtain the MAC address from an nvmem provider named 'mac-address' through - * device tree. - * On success, copies the new address into memory pointed to by addr and - * returns 0. Returns a negative error code otherwise. - * @np: Device tree node containing the nvmem-cells phandle - * @addr: Pointer to receive the MAC address using ether_addr_copy() - */ -int of_get_nvmem_mac_address(struct device_node *np, void *addr) -{ - struct nvmem_cell *cell; - const void *mac; - size_t len; - int ret; - - cell = of_nvmem_cell_get(np, "mac-address"); - if (IS_ERR(cell)) - return PTR_ERR(cell); - - mac = nvmem_cell_read(cell, &len); - - nvmem_cell_put(cell); - - if (IS_ERR(mac)) - return PTR_ERR(mac); - - if (len < ETH_ALEN || !is_valid_ether_addr(mac)) { - ret = -EINVAL; - } else { - ether_addr_copy(addr, mac); - ret = 0; - } - - kfree(mac); - - return ret; -} -EXPORT_SYMBOL(of_get_nvmem_mac_address); diff --git a/include/linux/of_net.h b/include/linux/of_net.h index 90d81ee9e6a0..9cd72aab76fe 100644 --- a/include/linux/of_net.h +++ b/include/linux/of_net.h @@ -13,7 +13,6 @@ struct net_device; extern int of_get_phy_mode(struct device_node *np); extern const void *of_get_mac_address(struct device_node *np); -extern int of_get_nvmem_mac_address(struct device_node *np, void *addr); extern struct net_device *of_find_net_device_by_node(struct device_node *np); #else static inline int of_get_phy_mode(struct device_node *np) @@ -26,11 +25,6 @@ static inline const void *of_get_mac_address(struct device_node *np) return NULL; } -static inline int of_get_nvmem_mac_address(struct device_node *np, void *addr) -{ - return -ENODEV; -} - static inline struct net_device *of_find_net_device_by_node(struct device_node *np) { return NULL; From patchwork Tue Nov 13 14:01:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997170 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="oGMfCF5O"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrw3KFCz9sBZ for ; Wed, 14 Nov 2018 01:04:32 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388283AbeKNACr (ORCPT ); Tue, 13 Nov 2018 19:02:47 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:51377 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387931AbeKNAAf (ORCPT ); Tue, 13 Nov 2018 19:00:35 -0500 Received: by mail-wm1-f65.google.com with SMTP id w7-v6so12036832wmc.1 for ; Tue, 13 Nov 2018 06:02:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=f7gfNo0gVKcDfyj3+9h+7K8WG/3dMlnqMt9RiFsd5OU=; b=oGMfCF5OK/DFgVAZh3Rr9U5F+3+4HDDdwtYaoNXWsvJdQ9FPpc2idSDfHlsKVgZbuH RejXdfaoXgVLoZjHBw6+KgD+sHBNqrCqQmLJDDmfMvb0M3lSpvjp37Cgl8pwaAE1XKtY WqEdsMolG/O8VhNJHsbYh45O7FRUPQ14M1cA5mLypKrVYs7lh8Q5Kk0CBiKNMG1qHt1Y hVnqj5V+4roGp6UtwBUgpWh6Njxh1UgU7jAlakCED4RMksvPt7S5mHVZRaUmBZc2P6f0 xWdQfvqe33aZjMryRKn6M/RVxTuu4AG3Q2C54iWIHLxK/Ik6I19JRTSM0lUIX4+UVrP/ QXlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=f7gfNo0gVKcDfyj3+9h+7K8WG/3dMlnqMt9RiFsd5OU=; b=kKZpNv9Rz6+HhuOZADSfP9ifWP8CUtNvwI0VY1t3CUv4jWeHajvWKBJXcr+sPI9RX0 AdDytKk/p0/v/6TenUSXjLgNYPAOabyuvYrKX+1qrSMrMBRNbPx8u0aM9l10QdNXLNnw gxowApUhWtxv7E778ZeGHoF0rmKsbbVKICiSKxfUaBNB87ACV5qrH1p63gf7AMkqXU38 r+VR0o2yDqjLH8buMlPG+kszUaAOrq2xRH+GOJBb1s2efSFCzsUaq2JDf3YDtFtLKUmw smErS1nr0M7L8o4Py/hzSCYAoFBizjM32OaYt1LLogENYj/2yKarHxaYOW4lEhHtzIqa zd3g== X-Gm-Message-State: AGRZ1gKo5ALd1Ys5pdxRm8c9/ilcceskbcf2OcVbiXqvthkR5+JvuMrH kNgG/COakFSmeGnw6C204ObXqQ== X-Google-Smtp-Source: AJdET5eC/isFPP/JoAHtDczboZRSpAdwg7+nsuETdSWEk/5qbg/R9UpvhswrRmqH3RC9hQD4j2v5tw== X-Received: by 2002:a1c:2746:: with SMTP id n67-v6mr3358593wmn.116.1542117737445; Tue, 13 Nov 2018 06:02:17 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:16 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 13/25] net: davinci_emac: use nvmem_get_mac_address() Date: Tue, 13 Nov 2018 15:01:21 +0100 Message-Id: <20181113140133.17385-14-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski All DaVinci boards still supported in board files now define nvmem cells containing the MAC address. We want to stop using the setup callback from at24 so the MAC address for those users will no longer be provided over platform data. If we didn't get a valid MAC in pdata, try nvmem before resorting to a random MAC. Signed-off-by: Bartosz Golaszewski --- drivers/net/ethernet/ti/davinci_emac.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c index 9153db120352..840820402cd0 100644 --- a/drivers/net/ethernet/ti/davinci_emac.c +++ b/drivers/net/ethernet/ti/davinci_emac.c @@ -1912,11 +1912,15 @@ static int davinci_emac_probe(struct platform_device *pdev) ether_addr_copy(ndev->dev_addr, priv->mac_addr); if (!is_valid_ether_addr(priv->mac_addr)) { - /* Use random MAC if none passed */ - eth_hw_addr_random(ndev); - memcpy(priv->mac_addr, ndev->dev_addr, ndev->addr_len); - dev_warn(&pdev->dev, "using random MAC addr: %pM\n", - priv->mac_addr); + /* Try nvmem if MAC wasn't passed over pdata or DT. */ + rc = nvmem_get_mac_address(&pdev->dev, priv->mac_addr); + if (rc) { + /* Use random MAC if still none obtained. */ + eth_hw_addr_random(ndev); + memcpy(priv->mac_addr, ndev->dev_addr, ndev->addr_len); + dev_warn(&pdev->dev, "using random MAC addr: %pM\n", + priv->mac_addr); + } } ndev->netdev_ops = &emac_netdev_ops; From patchwork Tue Nov 13 14:01:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997165 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="I63cr+tb"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrc50hFz9rxp for ; Wed, 14 Nov 2018 01:04:16 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387854AbeKNACc (ORCPT ); Tue, 13 Nov 2018 19:02:32 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:53071 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387957AbeKNAAh (ORCPT ); Tue, 13 Nov 2018 19:00:37 -0500 Received: by mail-wm1-f68.google.com with SMTP id r11-v6so12019443wmb.2 for ; Tue, 13 Nov 2018 06:02:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OoIJe4mIDvTgdZuFApCm4Rth6o5WcRAhu1RpXcDbEn4=; b=I63cr+tbCx/td55Gvhzg57rRGVH/mP7GtwF3VQsJ+v0oIhaEfYxqxReO3Cv/96MVZC E3WqUkG/YivISQ+MKMYdujDmHFek7v09UbndzW1jCRO7lSbtmbMHgNqLTOtCp+ILUpCJ wiFeYVmMa8w+D5Jtk8MPRItODnXt6oNU10b6A9NNlxfexfGDTl95uOQv6+ikrFnTEmBd I6ZBmA9XehvRbIRABqf7mFEzURQ7fRoDStQnGkPa4PgT95zy0s78ItpZkILPGXwBugkd PYarMYhnWnfPCKu/1C8ADlyP0pWtGHy3pLxW8zskbMJAOcA3E93F6aUJGU7dMhG5F7td gchQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=OoIJe4mIDvTgdZuFApCm4Rth6o5WcRAhu1RpXcDbEn4=; b=jZjiCshXxwnVWvi4+KLeCi5wHrauQ3HfJ+Z8yf32O13OtXIkits9buTJvgbO4bMaKp LRDlJ7Hp2prF8KHL//GreIHWUNpk6+zXATtFVxhbaFRCZaXNlZaEV/F6sg5Gu/C/ilgu Y2SQAnuakJPNDaBUwzucOZsSPLftuIWhuHx6p/wqDxJIKwmZV8lF0p8+Vk3uWGztCZlt uSHaieBoA3cfy2hsfpVznhwiGgUrjrJRBZ/MYEzctjpEd0mfI6gR4/4Nvrve562OOYj9 7sU+z7VHJ+UoGHwDwe/cLiIhp3VghKWXwUA8oS2zMqQiQOJ0tr2HGwFbr14igHDlGo3o y0yQ== X-Gm-Message-State: AGRZ1gJrXTVz5xFCPfO06FWPp8z67IB/GuB5Yz3j0gtrGoYtdKXuk7WT ApC6tlZx5AlePIinoe8hlY6MJg== X-Google-Smtp-Source: AJdET5eBWqbpkPuDG25XfcRJdhNFcl9LxodbjbwiolEO+3PzHNwJNw6+CIjZNsn9xz6HcjOhubC8pA== X-Received: by 2002:a1c:38c5:: with SMTP id f188-v6mr3269398wma.19.1542117739313; Tue, 13 Nov 2018 06:02:19 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:18 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 14/25] ARM: davinci: da850-evm: remove dead MTD code Date: Tue, 13 Nov 2018 15:01:22 +0100 Message-Id: <20181113140133.17385-15-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We no longer need to register the MTD notifier to read the MAC address as it's now being done in the emac driver. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-da850-evm.c | 28 ------------------------- 1 file changed, 28 deletions(-) diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index 6a29baf0a289..128dd7d8dff6 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c @@ -150,32 +150,6 @@ static struct spi_board_info da850evm_spi_info[] = { }, }; -#ifdef CONFIG_MTD -static void da850_evm_m25p80_notify_add(struct mtd_info *mtd) -{ - char *mac_addr = davinci_soc_info.emac_pdata->mac_addr; - size_t retlen; - - if (!strcmp(mtd->name, "MAC-Address")) { - mtd_read(mtd, 0, ETH_ALEN, &retlen, mac_addr); - if (retlen == ETH_ALEN) - pr_info("Read MAC addr from SPI Flash: %pM\n", - mac_addr); - } -} - -static struct mtd_notifier da850evm_spi_notifier = { - .add = da850_evm_m25p80_notify_add, -}; - -static void da850_evm_setup_mac_addr(void) -{ - register_mtd_user(&da850evm_spi_notifier); -} -#else -static void da850_evm_setup_mac_addr(void) { } -#endif - static struct mtd_partition da850_evm_norflash_partition[] = { { .name = "bootloaders + env", @@ -1494,8 +1468,6 @@ static __init void da850_evm_init(void) if (ret) pr_warn("%s: SATA registration failed: %d\n", __func__, ret); - da850_evm_setup_mac_addr(); - ret = da8xx_register_rproc(); if (ret) pr_warn("%s: dsp/rproc registration failed: %d\n", From patchwork Tue Nov 13 14:01:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997164 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="czxsBaTI"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrX1bQvz9s3x for ; Wed, 14 Nov 2018 01:04:12 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387987AbeKNAAk (ORCPT ); Tue, 13 Nov 2018 19:00:40 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:53072 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387958AbeKNAAj (ORCPT ); Tue, 13 Nov 2018 19:00:39 -0500 Received: by mail-wm1-f65.google.com with SMTP id r11-v6so12019578wmb.2 for ; Tue, 13 Nov 2018 06:02:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=rzIOy5k8NvgMAGaMyhICjOaJC80/j9SQ1XPs3RN4Qj8=; b=czxsBaTIPylrdoZnIop/vzqSbcMKwqBFiN/pcIU147oEk9zTP3NdX9TSPh78RwQtE9 3jRDWdnsbuepnfF0ABAlMrqHS87O+5tsZ9sbMTyQBOpifi/7XMrMX/V7gwZodPwGsJGi dqVY+O4clHSia80j4pbhTM9h5nt6AVkTadJxhRQYOmlYeHNwoi2CRAGHTiDNUDPsXys7 0HKhWFEeX6T1V0Up53zF8ieYCV7cF0dbCYEzPCRajntX2XIQJoiQwtUUwXeV2TEJ+cd1 Cbd3d0z6KKefOsE3gRi19GLQivBI6DvvhWfLII38bPV+xKCsUWZVviX8ATVE12fXl0Qo rryA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=rzIOy5k8NvgMAGaMyhICjOaJC80/j9SQ1XPs3RN4Qj8=; b=iAZMDNd9EEn1wmoIwQkhGXwXUT20o52FcxBq4P+9neGnOOAViqV1Rxr0vKlNVyC4GQ K9U+LY0EVNPTFNhbWdrg/n57uqm+BvcodbmTOBd42CoLw5WEt/HrpGh6DxV/J7CdvwWr jLkRaiaDWBv6jn+7B+rxOTFFg5KWpGVfc91TT1XDBwZ2chKcgqFsM+c/DpMyXIFJojVf 8H5v6tjpKjOXP+XHAKlCo1+/iEw2GeTAxfJg4T7HHoERR5CiizyWRUUJOXydS20oNG2q 6fYlW6Fq1/OaIwwgFoNTBiYfZL7Ddpgk4w1y8XOkpx4DLvIbV4P1kjSW0zr8bXOxfj1c XWgw== X-Gm-Message-State: AGRZ1gL2rpKs02p+LHn+SsqJLyRhTL9W/xURTResdXEc3R2YU3p1AdFU RIutqKpxIg5tEhlPBFzqDaaU6Q== X-Google-Smtp-Source: AJdET5cejNO1sjS5Rs8mSVv9N6GwUYu0qmNgnOpUOzqnv3+pTsBtyBxBNVY+mFQOeYTglyIswaPP8A== X-Received: by 2002:a1c:b8d:: with SMTP id 135-v6mr3273167wml.128.1542117741207; Tue, 13 Nov 2018 06:02:21 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:20 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 15/25] ARM: davinci: mityomapl138: don't read the MAC address from machine code Date: Tue, 13 Nov 2018 15:01:23 +0100 Message-Id: <20181113140133.17385-16-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski This is now done by the emac driver using a registered nvmem cell. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-mityomapl138.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c index 8df16e81b69e..3286dc2457a5 100644 --- a/arch/arm/mach-davinci/board-mityomapl138.c +++ b/arch/arm/mach-davinci/board-mityomapl138.c @@ -121,7 +121,6 @@ static void read_factory_config(struct nvmem_device *nvmem, void *context) { int ret; const char *partnum = NULL; - struct davinci_soc_info *soc_info = &davinci_soc_info; if (!IS_BUILTIN(CONFIG_NVMEM)) { pr_warn("Factory Config not available without CONFIG_NVMEM\n"); @@ -147,13 +146,6 @@ static void read_factory_config(struct nvmem_device *nvmem, void *context) goto bad_config; } - pr_info("Found MAC = %pM\n", factory_config.mac); - if (is_valid_ether_addr(factory_config.mac)) - memcpy(soc_info->emac_pdata->mac_addr, - factory_config.mac, ETH_ALEN); - else - pr_warn("Invalid MAC found in factory config block\n"); - partnum = factory_config.partnum; pr_info("Part Number = %s\n", partnum); From patchwork Tue Nov 13 14:01:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997161 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="JoZ1fiVE"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTrH62gJz9rxp for ; Wed, 14 Nov 2018 01:03:59 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387992AbeKNAAm (ORCPT ); Tue, 13 Nov 2018 19:00:42 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:39254 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387995AbeKNAAl (ORCPT ); Tue, 13 Nov 2018 19:00:41 -0500 Received: by mail-wr1-f67.google.com with SMTP id b13so13408035wrx.6 for ; Tue, 13 Nov 2018 06:02:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nCKNyyyX49gJ9CaNap8tpDC+pK+u47mv+sMMopDxMTM=; b=JoZ1fiVE9ZF9GTDTPgNWKBckmgnqA1IB3gWL7zEF47gEGDK1+c59xiqItVL7kGGzUy dpyiuUUBsS8uXZoOraEzosPpYXdotzv/aGqX1RuNtxEWdZTqa7IpQ03wq+dKz6wtOuxb z85vrevS5euHqqIsIGzROloIry2wZrsTpK4hqkwVhbmM5skOGrAMJIxTK5wR1D2sxYaK VdZ+BuGqCpooXV9vGPFfrAwk3OtNb8WrlzFxpsCcCqz710Sc4mj64K1pIV3DLuTrq6Nn rii9XOkFbEtRdo/Pvf4wrrPNDyTWx4J/7WC7T00ZsHOVqAmkXSjHFDB4hOogAqdhlOeJ +zOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nCKNyyyX49gJ9CaNap8tpDC+pK+u47mv+sMMopDxMTM=; b=A8X2genSn446cZQPoXYuwN/kieWyJbdTawWp/IMy4+FobvkVwZu0scA7AlPA0tlQqy DM1uKnrs6tO0yNnOMLNQ8RAt1dvKpvXYUad4g2tmxfL4NHpZ45SzFezlKtnGfegWK+JS kwHP5A7nFLrGeSWM5wSrs8W8qvPtjTiSdoXkKa0+ONh+u3oliXTBNgD773y3k+0xfrGi +3VbXLZr239409WVJF/T4SqC96Gidy7V4PJjYagQu9fR+pehofDjTCEGqoqMz2zURhVu 9S97VF61iQgd8S5kVposoqVsrOgstOBySLhX8WH02DjcbtJtcawH6TfFmWycu2krMFrG gnxQ== X-Gm-Message-State: AGRZ1gI1RvvPXBNiZYU334IO/LaF5nUmPggoQerOIBo9KmQF5Ty/30i/ sX0DbGIHBuggaiQxu1fp/F6Tgw== X-Google-Smtp-Source: AJdET5dx7aWCy2FTz6P99trjv8Or2uBMgv0C6q57D9QHMF9jLch6v+RP2iHksk6DIXv07QNT8LqFEQ== X-Received: by 2002:a5d:4b05:: with SMTP id v5-v6mr5000343wrq.5.1542117743205; Tue, 13 Nov 2018 06:02:23 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.21 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:22 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 16/25] ARM: davinci: dm365-evm: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:24 +0100 Message-Id: <20181113140133.17385-17-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski Reviewed-by: Andy Shevchenko --- arch/arm/mach-davinci/board-dm365-evm.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/arch/arm/mach-davinci/board-dm365-evm.c b/arch/arm/mach-davinci/board-dm365-evm.c index 8703fc18dd3b..f016584285b0 100644 --- a/arch/arm/mach-davinci/board-dm365-evm.c +++ b/arch/arm/mach-davinci/board-dm365-evm.c @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include #include #include @@ -225,18 +225,15 @@ static struct nvmem_cell_lookup davinci_nvmem_cell_lookup = { .con_id = "mac-address", }; -static struct at24_platform_data eeprom_info = { - .byte_len = (256*1024) / 8, - .page_size = 64, - .flags = AT24_FLAG_ADDR16, - .setup = davinci_get_mac_addr, - .context = (void *)0x7f00, +static const struct property_entry eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 64), + { } }; static struct i2c_board_info i2c_info[] = { { I2C_BOARD_INFO("24c256", 0x50), - .platform_data = &eeprom_info, + .properties = eeprom_properties, }, { I2C_BOARD_INFO("tlv320aic3x", 0x18), From patchwork Tue Nov 13 14:01:25 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997140 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="IDljafRj"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpX67nCz9s3x for ; Wed, 14 Nov 2018 01:02:28 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387993AbeKNAAn (ORCPT ); Tue, 13 Nov 2018 19:00:43 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:39355 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388016AbeKNAAm (ORCPT ); Tue, 13 Nov 2018 19:00:42 -0500 Received: by mail-wm1-f65.google.com with SMTP id u13-v6so11539990wmc.4 for ; Tue, 13 Nov 2018 06:02:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sPuMqMq9r2hIniTC2IBiHD0FDPb8NBERuqBhYrjNhTE=; b=IDljafRjAEOauqjxFmN1aBn6PcPzI03ubbHWQId+R0m8iLm5HwH7ZGWm8DF/0zk6D6 8Y+9C5jWPK6BYd/oFQWB6zUQd1b3/QXbcKuqSIMX5uVo6NkhdSuofrD08F3N1cETUgOG mPBe4SwESiWeFOTf4A3iyKd4TbiL1rZTXAGVAY+z3658ZbFky24wuJ9dUHSUjh0tuMmU U5lMPlHr4gDFBSpB4fMTm/uGaDAp0TYEdwcvWNwh4oBPLexahiUYfO9nQ2484xx+INkQ 69IcVq1iuDC/3VIuwOkkh/FGMKa0WNPB86qnO+Az1ECSQjV5pVontyGkxpVUo3a7R2Wf s76g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=sPuMqMq9r2hIniTC2IBiHD0FDPb8NBERuqBhYrjNhTE=; b=rF4Z29zRLbhzbaI+ysMrW4EHYtePIiEvvUvX/OcKvQlx8aS9ywoqI3nZXGFHOAofEu qGv7VaK/kZpvdY1sgd6EVh1lqVfkzKZU7qUjaUt8TwRaaTS8fFFcAXrXmQVfNQ1PO3Yo 7vSnyMfgkt5ES6kjmvnalrBC/M/AC7as/idx8PE4FTgcNmvhobEnSF7w0RCFeKpk7/43 WjbwcdWc8WbrAqG9JEV5YdaF8QEROdVZ55K7+fAO/UmIAuqRzWeksnUeW1fksxKkPrcR dcXvArK+Pi+NIUfXS0Q6RUZVsB1We7MawvI76gSZCPlOCc2hr8VAgdaZWR5zjJMbdq/i aQcw== X-Gm-Message-State: AGRZ1gL5ZKqNqB1x1qcGQf8bstIjvWr20B/XJjFqlDTfJP/xJ5Jzow5Z 4mGC5D07PsZm/6eiNCt4I/hjUg== X-Google-Smtp-Source: AJdET5ffOXzcrmnj/X9DmPRLspwEQNS02Hmpuhdm53pLYF5ldj1o5KZ1HztDac1HlLqZ965HC/gAGQ== X-Received: by 2002:a1c:38c5:: with SMTP id f188-v6mr3269738wma.19.1542117744928; Tue, 13 Nov 2018 06:02:24 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:24 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 17/25] ARM: davinci: da830-evm: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:25 +0100 Message-Id: <20181113140133.17385-18-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski Reviewed-by: Andy Shevchenko --- arch/arm/mach-davinci/board-da830-evm.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c index e52ec1619b70..ddd871d8b44c 100644 --- a/arch/arm/mach-davinci/board-da830-evm.c +++ b/arch/arm/mach-davinci/board-da830-evm.c @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include #include #include @@ -457,12 +457,9 @@ static struct nvmem_cell_lookup da830_evm_nvmem_cell_lookup = { .con_id = "mac-address", }; -static struct at24_platform_data da830_evm_i2c_eeprom_info = { - .byte_len = SZ_256K / 8, - .page_size = 64, - .flags = AT24_FLAG_ADDR16, - .setup = davinci_get_mac_addr, - .context = (void *)0x7f00, +static const struct property_entry da830_evm_i2c_eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 64), + { } }; static int __init da830_evm_ui_expander_setup(struct i2c_client *client, @@ -496,7 +493,7 @@ static struct pcf857x_platform_data __initdata da830_evm_ui_expander_info = { static struct i2c_board_info __initdata da830_evm_i2c_devices[] = { { I2C_BOARD_INFO("24c256", 0x50), - .platform_data = &da830_evm_i2c_eeprom_info, + .properties = da830_evm_i2c_eeprom_properties, }, { I2C_BOARD_INFO("tlv320aic3x", 0x18), From patchwork Tue Nov 13 14:01:26 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997159 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="w014nPI1"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTr84glYz9rxp for ; Wed, 14 Nov 2018 01:03:52 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388069AbeKNACC (ORCPT ); Tue, 13 Nov 2018 19:02:02 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:53405 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388055AbeKNAAp (ORCPT ); Tue, 13 Nov 2018 19:00:45 -0500 Received: by mail-wm1-f66.google.com with SMTP id f10-v6so12018704wme.3 for ; Tue, 13 Nov 2018 06:02:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=NtdPGnoNcOA+uAMeykOlFvJi5M25GSj2otU8Jlp5mq4=; b=w014nPI1uJ7XLo9ncewVaZ4F3wu8fqdaXRgFGCsxn5ZsTiXFGgW8T+bc8vpPfzKJx8 g8vkxFQ2VzBmEDQ37zLwng0EVbgn0Z5b4Lr4vSmo1oQcaDy/PmrITZ/b8MXCbarvNwzP f/OGvH4iIKmWWo9ibBjb1LRaD43qlMciij1OCUqjM/XjMJ2nLJ8Q+mylydEHvj8l8Jgp 7789G2xZdpCi5eYrMggu+ZglSi3o9lCnqeVYnS0X3fdFuv27r3gkPCdTNX27PPJzS5Xv 3+vkukmuOlvhkZe2B0WlFmC/WS413912TxnPtz/uqEv19c7D2sFzO8NGpr626Nmrn3EQ CWdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=NtdPGnoNcOA+uAMeykOlFvJi5M25GSj2otU8Jlp5mq4=; b=VIAoSoXsIb4fAf0E9K1DYhToguIu/oPmKKPiqqo7s8z50Nas0duxLmLiZNuoRWFoWY 2sRMoqVSazuuq8iEATCi3KjvzIJnoYnn7YSIePL6EhHz7pcH6/XDyg0zOkciXjAmnOUn LAx2Cw0d0Um9sBQvKCrxbJyr7YgZsrBLjlHFPCEnAc9xG9BQsp9wyIUZZyoHK8vqc9qJ RZYsVjY8P3xpyPMWsDgXyOV1gkr/5iM91PckiK/kjbk1GN7aPXsqcvGjxpKOufTFjfT5 Pb+9igOhoHangN9YSRm/3vBFJI/KTzJkX5dIK/v7Bn/80kboYdmXp8mXO6Ft0yg5HdPm Ds4A== X-Gm-Message-State: AGRZ1gKTB0JoKJxM0xPWMkCUe2XMT7b4ZccH6oNKQtilGN2EqwjNybGa dSOElmoTK6497hJYU42euTsQbw== X-Google-Smtp-Source: AJdET5fLy10Q+h27Bzq/mjdp88BBAVLtFCdLs2zd+Oh1qCRYRTe/HiO6Yxd4u0R30FeSSyuhnJgtbg== X-Received: by 2002:a1c:730b:: with SMTP id d11-v6mr3320577wmb.107.1542117746750; Tue, 13 Nov 2018 06:02:26 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:26 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 18/25] ARM: davinci: dm644x-evm: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:26 +0100 Message-Id: <20181113140133.17385-19-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski Reviewed-by: Andy Shevchenko --- arch/arm/mach-davinci/board-dm644x-evm.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c index e1428115067f..efe4e170e87d 100644 --- a/arch/arm/mach-davinci/board-dm644x-evm.c +++ b/arch/arm/mach-davinci/board-dm644x-evm.c @@ -16,8 +16,8 @@ #include #include #include -#include #include +#include #include #include #include @@ -532,12 +532,9 @@ static struct nvmem_cell_lookup dm644evm_nvmem_cell_lookup = { .con_id = "mac-address", }; -static struct at24_platform_data eeprom_info = { - .byte_len = (256*1024) / 8, - .page_size = 64, - .flags = AT24_FLAG_ADDR16, - .setup = davinci_get_mac_addr, - .context = (void *)0x7f00, +static const struct property_entry eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 64), + { } }; /* @@ -647,7 +644,7 @@ static struct i2c_board_info __initdata i2c_info[] = { }, { I2C_BOARD_INFO("24c256", 0x50), - .platform_data = &eeprom_info, + .properties = eeprom_properties, }, { I2C_BOARD_INFO("tlv320aic33", 0x1b), From patchwork Tue Nov 13 14:01:27 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997157 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="WDK4EXYC"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTr11W4Tz9s3x for ; Wed, 14 Nov 2018 01:03:45 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733229AbeKNACA (ORCPT ); Tue, 13 Nov 2018 19:02:00 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:38284 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388069AbeKNAAq (ORCPT ); Tue, 13 Nov 2018 19:00:46 -0500 Received: by mail-wr1-f65.google.com with SMTP id e3-v6so13460240wrs.5 for ; Tue, 13 Nov 2018 06:02:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hh5b2k/7h0Wkn2rLn6NIi7mvwMbeZ/cPsG4EAD277Kg=; b=WDK4EXYCVbg5UVTt1LLa9JA2tefJbGBaRGYu4BQMHUTVwo9nrZI/x2Pg9f2m6SfJqi gXZZE1ZXbYo4CxQKosHQtqkTQO5nZIzNSHtUS0IFQC18X7RvFcQjkpQW2uJ0GLMCwuUj AJ+BFW67RMtcYQUKm8llOhqDviNNsM5NY87UcplZWCENknMzcJt76olth3ghcb7bmcOv ot/W6azDogQYZHpmIqsZirtRURlBAZbUN2rYh9tH5KqFQ4F8nhcM+vlrnxP35T5IH5Yh h8Tvd8sXrlMymXWdCXXHobgUx8FJ6iUUW9fNUiDB8dpmMsTl78IBPpVY3AZU6M54XEEs O3/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hh5b2k/7h0Wkn2rLn6NIi7mvwMbeZ/cPsG4EAD277Kg=; b=r18is7DkGTUzRHB3+Ns0MDV4EUp1ZvMNutPIAPsLgN/LWwjuMSmLjlEW0m3pQLsfSe l6lRGZseoIjP2BRk8ePSBzN6boY2/dMDhsLIlg0KBrZs+FQmqqQVVxrdCRUS7iVLCmAA 3okUp6VDwjmJEklSNo1SjxGB+tNM+c88oiGTpZYIvfjJ+W0viUWWFj72f56mvqfSR7WH Iff/sqi24iN96GxdZIkiAMBcmBH/TBric0/GHENXnvDiN1JZV/vNB0LmRO6ACWsMWe+M 15IONAfTl2Q7IjGee0cVSX3pJDfP6YQPIln+oIBuk3p3xsolMWBRSL00D+Aa1o1ShOCo AKpQ== X-Gm-Message-State: AGRZ1gIL8XOP1qcKL6e0yZPWcju1Lnirbo/M9dKluJbh1rvYxfzFV8QC 4o7/KMxthu8/335dW3kTvVfsgQ== X-Google-Smtp-Source: AJdET5cMvvcmsFaY7r8GYj7Me90MKajqiYiB22Zb0Nu3oX9oxsFP2cXbd1d6owPbeGt/U3pul0Qp/Q== X-Received: by 2002:adf:e543:: with SMTP id z3-v6mr2568196wrm.238.1542117748660; Tue, 13 Nov 2018 06:02:28 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:28 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 19/25] ARM: davinci: dm646x-evm: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:27 +0100 Message-Id: <20181113140133.17385-20-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski Reviewed-by: Andy Shevchenko --- arch/arm/mach-davinci/board-dm646x-evm.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 8d5be6dd2019..02b57face113 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include @@ -364,12 +364,9 @@ static struct nvmem_cell_lookup dm646x_evm_nvmem_cell_lookup = { .con_id = "mac-address", }; -static struct at24_platform_data eeprom_info = { - .byte_len = (256*1024) / 8, - .page_size = 64, - .flags = AT24_FLAG_ADDR16, - .setup = davinci_get_mac_addr, - .context = (void *)0x7f00, +static const struct property_entry eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 64), + { } }; #endif @@ -440,7 +437,7 @@ static void evm_init_cpld(void) static struct i2c_board_info __initdata i2c_info[] = { { I2C_BOARD_INFO("24c256", 0x50), - .platform_data = &eeprom_info, + .properties = eeprom_properties, }, { I2C_BOARD_INFO("pcf8574a", 0x38), From patchwork Tue Nov 13 14:01:28 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997155 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="DUVq818X"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTqn3Ldsz9rxp for ; Wed, 14 Nov 2018 01:03:33 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388095AbeKNAAt (ORCPT ); Tue, 13 Nov 2018 19:00:49 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:35765 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388012AbeKNAAt (ORCPT ); Tue, 13 Nov 2018 19:00:49 -0500 Received: by mail-wr1-f65.google.com with SMTP id z16-v6so13463247wrv.2 for ; Tue, 13 Nov 2018 06:02:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=3+tDzntZFfY3GLS/4lI4221oPwYjWwUsoPxzbNeGoww=; b=DUVq818XztF17potVvI9i1PK86EqQtT0jlWPLbOegWOH4yTLmtdDDz4q21BC3B/eYI YoKQo6AYE35b03fTLwXQ2o2KyF4nWWkmoUerwPL5EL3tMRj9T8IiIj45nI3sItiosz7P wdmmlLh+RjotdnEw62fOngzb/NCZRISqqHsO7bhR68cznZ96cSW3HhGrdYbPu+q+Tb9m q9uDdpiGrUClJhH1qf4ZLVCRaXFOJ0laD0ECnlukekcdTqstB5oebQuN3KeWEF9VYnpW gKupXEvepZHzekUG7o1wCIN99mJq5t1gjjgltVvG5lb9VVKSPt6uyEmnsaxmGyxrFT+0 pZLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3+tDzntZFfY3GLS/4lI4221oPwYjWwUsoPxzbNeGoww=; b=Xgm3j47k3zCK2gve4WTAm4JQYYtLLhxTc0pb5PNEAPU93Rj8L7PDjT4tPKb6WpxtLq S7VqePHFsZ31sdKB+5Vn4+Fr4E9rSAtBHOKst9MAQg60xqBhDNHZ/xVH+ZhjUe5bNn1Q bsJLyYm0WyFFox4fe3Ou3Y8td9qH9YIfnW7ggN3NMoq07EpJLYulYKqOq+6mzGsmEPPU +wFcbBGRbb+UtuEEPboeigG1wNvuYquuTWRSkQWxkaP5pHvLqD4CJowFPOkpCkrHQf+I 1/JKa7KeUdeRfsPPmQcQTv+snHGKaQxackfkxwjSbYUzicRCKGKIrVmIOX8xSjbVsNZp MGIA== X-Gm-Message-State: AGRZ1gLhj6gg+9gL4fZGSLHaQ09ZeVbQlz09fjNH2qrOQ9leCuG1a5sp 4MxIYqPg8IC/iaHv4KEfKgGplQ== X-Google-Smtp-Source: AJdET5fUa7P4pqTkNLMJPx+aR+6iEMAGcJAORVawMii9aSn1PUmSuSdfVOcHiOSJabclU1KqVRDk4w== X-Received: by 2002:adf:ded1:: with SMTP id i17-v6mr5283755wrn.307.1542117750456; Tue, 13 Nov 2018 06:02:30 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:29 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 20/25] ARM: davinci: sffsdr: fix the at24 eeprom device name Date: Tue, 13 Nov 2018 15:01:28 +0100 Message-Id: <20181113140133.17385-21-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski The currently used 24lc64 i2c device name doesn't match against any of the devices supported by the at24 driver. Change it to the closest compatible chip. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-sffsdr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-davinci/board-sffsdr.c b/arch/arm/mach-davinci/board-sffsdr.c index 792bb84d5011..acd9778ffa07 100644 --- a/arch/arm/mach-davinci/board-sffsdr.c +++ b/arch/arm/mach-davinci/board-sffsdr.c @@ -100,7 +100,7 @@ static struct at24_platform_data eeprom_info = { static struct i2c_board_info __initdata i2c_info[] = { { - I2C_BOARD_INFO("24lc64", 0x50), + I2C_BOARD_INFO("24c64", 0x50), .platform_data = &eeprom_info, }, /* Other I2C devices: From patchwork Tue Nov 13 14:01:29 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997153 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="zZ2+34Dg"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTqP01m1z9s3x for ; Wed, 14 Nov 2018 01:03:13 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388099AbeKNAAw (ORCPT ); Tue, 13 Nov 2018 19:00:52 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:55378 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388101AbeKNAAv (ORCPT ); Tue, 13 Nov 2018 19:00:51 -0500 Received: by mail-wm1-f66.google.com with SMTP id i73-v6so6746164wmd.5 for ; Tue, 13 Nov 2018 06:02:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ztnUf8638FUSA3Znei2oPXxpgrZCrlfwVxJL7f5VqxM=; b=zZ2+34Dgw8tffkWguG4iGMsMH70bbh6uhUNdkKwDhFjL4IRxWYrOU+2yvIBpAuTHZx 4xh5JA1UYHCUlYMAkx/bJ0Dl573316D/C8p4BroweHER1WfBAnp73CxyfRQ8x2N81O/l 57HLn+U1/gQ0dRAKmgtEW4XmL0/PGfjW5IIEd0Kodi0H38dOQyJWnUpGobPQ7nFSvSg+ S8o+glqZDkMR+y6PgS2rlmSF72xcTIESNGIPQIh/5lvlUZcljPRALzpcRXrDrDFNpARu 3nL1DwDRcjN1u3nic0kAru5TCge19MNd02RjoKwGXljpk63ecdA9Lik9Wc0W9IyR0AQ/ xIwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ztnUf8638FUSA3Znei2oPXxpgrZCrlfwVxJL7f5VqxM=; b=ZhsrCeam+xtbxzJZPz+Px8+Pse0w3/8k+rOlGlQlueM9AWrqd/5jlgSWuh0g4y8ECD GO1yiokS+Em5nrplCuX0XOtlpxIgNVwbeggHbIVLqygZqEvc1mjN4HIVtFOZvINj5fJn nfn3S56h7x5k/s+buO29nQHjkS+57fT7OdzbmXq9FJ9sdno51Iy8FpwhbfQGNtEjAdSz piVUh5PtJI/dE9wGQ5OL9fFDDS5+MOfKBPkdnITzVdceHN6P4jeETQRmlOu9EbFzWYUy LJpwhBBMuMqczYOAdv0WpymumjX0AQn5UIQpN/mejMSeVhGmt7bd+88B1c/GDXlR95ah GoUQ== X-Gm-Message-State: AGRZ1gLxZ/E0HPIRCe8wjIiUtG3BUcnDBIKEZx7Nr2pkcRmYfyxEJ+pe 3jk3HjbU4EFDknT+iWHA7d9JLw== X-Google-Smtp-Source: AJdET5fZDtnaImMGTTAvHsDmPnjEU9pLpWpgoZ9sBGQD4RDKI5fISFfh8jg9ZcLoSmrmKmjrcKTJ9w== X-Received: by 2002:a1c:e3d4:: with SMTP id a203-v6mr3298181wmh.16.1542117752512; Tue, 13 Nov 2018 06:02:32 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:31 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 21/25] ARM: davinci: sffsdr: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:29 +0100 Message-Id: <20181113140133.17385-22-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski Reviewed-by: Andy Shevchenko --- arch/arm/mach-davinci/board-sffsdr.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/arch/arm/mach-davinci/board-sffsdr.c b/arch/arm/mach-davinci/board-sffsdr.c index acd9778ffa07..ff14de1396c8 100644 --- a/arch/arm/mach-davinci/board-sffsdr.c +++ b/arch/arm/mach-davinci/board-sffsdr.c @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include @@ -92,16 +92,15 @@ static struct platform_device davinci_sffsdr_nandflash_device = { .resource = davinci_sffsdr_nandflash_resource, }; -static struct at24_platform_data eeprom_info = { - .byte_len = (64*1024) / 8, - .page_size = 32, - .flags = AT24_FLAG_ADDR16, +static const struct property_entry eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 32), + { } }; static struct i2c_board_info __initdata i2c_info[] = { { I2C_BOARD_INFO("24c64", 0x50), - .platform_data = &eeprom_info, + .properties = eeprom_properties, }, /* Other I2C devices: * MSP430, addr 0x23 (not used) From patchwork Tue Nov 13 14:01:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997152 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="Sxu9i8eO"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTqN1DFTz9rxp for ; Wed, 14 Nov 2018 01:03:12 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388133AbeKNAAx (ORCPT ); Tue, 13 Nov 2018 19:00:53 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:36257 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388109AbeKNAAw (ORCPT ); Tue, 13 Nov 2018 19:00:52 -0500 Received: by mail-wr1-f66.google.com with SMTP id z13-v6so13447382wrs.3 for ; Tue, 13 Nov 2018 06:02:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=+MhstBAWAWTvjV+7n2ZSuyCNluyXHXlSjobSaNP/M+U=; b=Sxu9i8eOfulldiOW2s6lrLD0kGLvUFXrjFvDiI91iV+FcVDZ5z1S8rnXXIv8CdlXM9 lx7GA9Lhz3RYE6o9IGN/Kx8eGTjTuaYpGeOJsqMuCGp2gRZIewhkzjKa3vUKlzEitboM U+nS7lvfka2Ql9lEEC2drCGonOpS8H4cJQEwb+/D5BMDeAfn9+R6j8LTsc2S/Piswvgg yldLYLgtyrfeZ4lf2mn0e8i/83PyeWv/54eYj7SOEyEcr5phSmlrKTD6B34cAJarXcl8 ACip3WuKeY4hnsSFwv/ZviaJ+Wsf0bnnIXrJUsgg7XO2ZomEIWERn0lxZxGRsNynSAfv 3gvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=+MhstBAWAWTvjV+7n2ZSuyCNluyXHXlSjobSaNP/M+U=; b=kBMHEsXvVf/4t2LMRsGowZLhe8iF31uWjZ6Kg+W1alZ8hSJDMoXc/Gttky0q916yZb +Ru2QDMmN73rGgZRHhmCKdRjbOyMAZG8Fy22JNz7N6wgMELNOlxNR4neIMT9Cjx/ZDnE KvZzrHj2eILeHEd1A2l9RneQp0EOX0jj7Q9M6KMwY1HsnfToduP+Hw/+ZauA/cId7Haj lBGdQ6ubAe3A0fSYQLqD4VQIY0dbY4t89EYqq9FQy0nBh44vuXj3czODQpyYvnP2mhx8 JNUsh8MeFoyns2EOROyk0TtbKgnqHP6zbVAqHuO3ezbfzHrFq4bR/u8pjTwORq2rVtZP WhBA== X-Gm-Message-State: AGRZ1gK7gsqAv5Gtq0MB0GX1Lecc4xpsK03QqmIhLKaxCZEl0yaOo4DV CJutreZ9irzPfdE7+08QrCkOhA== X-Google-Smtp-Source: AJdET5cYRF0z03J3+LXc6zQEY2KOalWWGv3duPIopAzahTAXJAf6RsHxNQP+5fXdh/tbkc05Ilp98g== X-Received: by 2002:adf:be0f:: with SMTP id n15mr2375313wrh.267.1542117754451; Tue, 13 Nov 2018 06:02:34 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:33 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 22/25] ARM: davinci: remove dead code related to MAC address reading Date: Tue, 13 Nov 2018 15:01:30 +0100 Message-Id: <20181113140133.17385-23-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski There are no more users of davinci_get_mac_addr(). Remove it. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/common.c | 15 --------------- include/linux/davinci_emac.h | 1 - 2 files changed, 16 deletions(-) diff --git a/arch/arm/mach-davinci/common.c b/arch/arm/mach-davinci/common.c index e1d0f0d841ff..0c638fe15dcb 100644 --- a/arch/arm/mach-davinci/common.c +++ b/arch/arm/mach-davinci/common.c @@ -26,21 +26,6 @@ EXPORT_SYMBOL(davinci_soc_info); void __iomem *davinci_intc_base; int davinci_intc_type; -void davinci_get_mac_addr(struct nvmem_device *nvmem, void *context) -{ - char *mac_addr = davinci_soc_info.emac_pdata->mac_addr; - off_t offset = (off_t)context; - - if (!IS_BUILTIN(CONFIG_NVMEM)) { - pr_warn("Cannot read MAC addr from EEPROM without CONFIG_NVMEM\n"); - return; - } - - /* Read MAC addr from EEPROM */ - if (nvmem_device_read(nvmem, offset, ETH_ALEN, mac_addr) == ETH_ALEN) - pr_info("Read MAC addr from EEPROM: %pM\n", mac_addr); -} - static int __init davinci_init_id(struct davinci_soc_info *soc_info) { int i; diff --git a/include/linux/davinci_emac.h b/include/linux/davinci_emac.h index 05b97144d342..28e6cf1356da 100644 --- a/include/linux/davinci_emac.h +++ b/include/linux/davinci_emac.h @@ -46,5 +46,4 @@ enum { EMAC_VERSION_2, /* DM646x */ }; -void davinci_get_mac_addr(struct nvmem_device *nvmem, void *context); #endif From patchwork Tue Nov 13 14:01:31 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997145 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="PJL8eMa9"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpm3WQDz9sBZ for ; Wed, 14 Nov 2018 01:02:40 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388161AbeKNAAz (ORCPT ); Tue, 13 Nov 2018 19:00:55 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:40754 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388153AbeKNAAy (ORCPT ); Tue, 13 Nov 2018 19:00:54 -0500 Received: by mail-wm1-f66.google.com with SMTP id q26so1504280wmf.5 for ; Tue, 13 Nov 2018 06:02:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=syCNYOhWI2Fa3CkPeYThsu7drj9CGAM/9EZeMe/84fg=; b=PJL8eMa9+jAOQEZNJcbJMuSBrsGHEjmzI10SPdojyC87xlN5V9crDDWQ+lH3v/VzOM 1BgbUtHLRcXfw/YhVhc1RMPR1tHbbr2h2C490+AKByKBjNr5cdg0KaSMeQ2FXZ3djCDX WT6Ys3rYvkQbowoqMbQhCP6WyvgYuMh3LVETsVbCH14uid6zYbfsgiJgv/1Gdx3TjQco dEjOKY9M6u1ZSaJ7RFTHKm9BhVsHRDywikCx2ORM+ukOBDPEiUcYp9J8RjeXrLgxxrv6 WHI8fixQ+evqM5Ip9WfK8/u4WR2v+o8N/UryB/bOM8UPhppphIXf4VLR9ztQb3dMp4Q+ VXDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=syCNYOhWI2Fa3CkPeYThsu7drj9CGAM/9EZeMe/84fg=; b=Z5eiKS1aTtySBRikay1jbajZDCwSc5SLghlIkENaZd2uvAmxJkeAN98qB/+9BRuunL A/APGbVWRIEL4DIL4irK6eX1RUeK3DTml2gxYbUAr9bhqF/GCQm/JESOXtTrEY9k75kv VhXitAFq1dSFHmAU5EwpTJugqiWymgqneKi3+KP701V/DcImgiFt9fGJykY7i3c78fXz LVZTAOydETqhDAqbBJGPWgbyqsNzNgKsQ4kMsjRcIkaPxgr9AnxcR8EPtx8MDw/p6swP q7H6QSwfko54dwjwVhGJ6uWQxx3d8YezvU7uoleRuTsHOHavdOZ5SVkaiMKPNBThDGsx kfuw== X-Gm-Message-State: AGRZ1gLU8zccgGWJUtSlRsyVqBxidRaH82B02BREpuBX4wDz55L4Vig8 QNvhAm/1Ku2BtAonHtNNZi3riw== X-Google-Smtp-Source: AJdET5ePKezX6JsMVmB21bIh2rzVp1xhzc1G5EZ2Oj5DB2QjqGjdRdYo3Cs8BUYnOEw6tUiFG4ab/A== X-Received: by 2002:a1c:5f85:: with SMTP id t127-v6mr3313396wmb.44.1542117756310; Tue, 13 Nov 2018 06:02:36 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:35 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 23/25] ARM: davinci: mityomapl138: use nvmem notifiers Date: Tue, 13 Nov 2018 15:01:31 +0100 Message-Id: <20181113140133.17385-24-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski Stop using the at24_platform_data setup callback in favor of nvmem notifiers. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-mityomapl138.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c index 3286dc2457a5..ac1a1699d185 100644 --- a/arch/arm/mach-davinci/board-mityomapl138.c +++ b/arch/arm/mach-davinci/board-mityomapl138.c @@ -15,6 +15,8 @@ #include #include #include +#include +#include #include #include #include @@ -117,10 +119,15 @@ static void mityomapl138_cpufreq_init(const char *partnum) static void mityomapl138_cpufreq_init(const char *partnum) { } #endif -static void read_factory_config(struct nvmem_device *nvmem, void *context) +static int read_factory_config(struct notifier_block *nb, + unsigned long event, void *data) { int ret; const char *partnum = NULL; + struct nvmem_device *nvmem = data; + + if (strcmp(nvmem_dev_name(nvmem), "1-00500") != 0) + return NOTIFY_DONE; if (!IS_BUILTIN(CONFIG_NVMEM)) { pr_warn("Factory Config not available without CONFIG_NVMEM\n"); @@ -152,8 +159,14 @@ static void read_factory_config(struct nvmem_device *nvmem, void *context) bad_config: /* default maximum speed is valid for all platforms */ mityomapl138_cpufreq_init(partnum); + + return NOTIFY_STOP; } +static struct notifier_block mityomapl138_nvmem_notifier = { + .notifier_call = read_factory_config, +}; + /* * We don't define a cell for factory config as it will be accessed from the * board file using the nvmem notifier chain. @@ -183,8 +196,6 @@ static struct at24_platform_data mityomapl138_fd_chip = { .byte_len = 256, .page_size = 8, .flags = AT24_FLAG_READONLY | AT24_FLAG_IRUGO, - .setup = read_factory_config, - .context = NULL, }; static struct davinci_i2c_platform_data mityomap_i2c_0_pdata = { @@ -561,6 +572,7 @@ static void __init mityomapl138_init(void) davinci_serial_init(da8xx_serial_device); + nvmem_register_notifier(&mityomapl138_nvmem_notifier); nvmem_add_cell_table(&mityomapl138_nvmem_cell_table); nvmem_add_cell_lookups(&mityomapl138_nvmem_cell_lookup, 1); From patchwork Tue Nov 13 14:01:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997147 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="qExkY58T"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpr0fwHz9sBZ for ; Wed, 14 Nov 2018 01:02:44 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388162AbeKNAA4 (ORCPT ); Tue, 13 Nov 2018 19:00:56 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:40806 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388147AbeKNAAz (ORCPT ); Tue, 13 Nov 2018 19:00:55 -0500 Received: by mail-wr1-f65.google.com with SMTP id p4so4266875wrt.7 for ; Tue, 13 Nov 2018 06:02:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=oXTGXgrClMlW8LabyP51oPTHLt1d9TPP5bN7Oy9yaTQ=; b=qExkY58TSHKmcZ1oSE4ta3JVB/dZ7ysem4RkJ7UwxHTzIVAaaqhUGZFtX5xnJZEO7B W3SAjTgBoTp9oHtINAtFynUeoz0Sqjyb9mQ2TJdrO19sk+arZqmg+nkLiSartLtzhP+f P23j1odqmOwAr5DE1Ic/aXE4uKDvJx68JSx92otoazG1b6ObvBw2AhXK5nvHkeRkd84d j2B8OWBC0gSZGNAolUa8THCZ7pO3cbrHtPgWP0+LbeglVSFHL1f38OYA9N0NTX+l5JDj F9wBKtNYmOsZsedkleyU/+91f58h2VEKaMgSL3LJOg63TNKdkhDhygme2UDB97oCl9Xq 733A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=oXTGXgrClMlW8LabyP51oPTHLt1d9TPP5bN7Oy9yaTQ=; b=XnOT62ZB7Q/BqgMh90/OlQ5Kf1JCs4Ag/s1YwBHXw/JKO7uXlI/dmhXO09ST8PJnxC K3fGlXdaaL9F5dDUpOTiYxVGJ6GtyANQaBbDaPT2xL1kUpI+tbjFu1k4PT5NMdUASaNb jyaFpmGyZdp8yWue4e8VEIXsI8mkcteiv43ZxKjJaCRdBiGe2TJlAGySql5lGC+MzEYI zJgg1xWo6CP3wcGDKEL+aQRHBsbhf6oh3WQXzgHZiDD/108+xuIMitpXLOJYXznDZyli 7QMtjkJ8w1zlouZAyQb3ruyzjTYiYTREah6m28fmfVh0Ec6gkUgq1ggzsU8+6Dqt0fAA MDTg== X-Gm-Message-State: AGRZ1gJH8krBWO1EtLSW2lVrBJ3M+BgTbUbgsRL/emf0RIE8smhptgKN b/4+II3uSwPP1cVi7R6TKOgSpw== X-Google-Smtp-Source: AJdET5flT2RltjYvUfFa01zp/XWVLFWbb6gSf/AtfAY9TcWAKa6PTi5TTrKaXY9u4JY8vhtJ5NX6uw== X-Received: by 2002:a5d:6405:: with SMTP id z5-v6mr4882632wru.64.1542117758021; Tue, 13 Nov 2018 06:02:38 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:37 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 24/25] ARM: davinci: mityomapl138: use device properties for at24 eeprom Date: Tue, 13 Nov 2018 15:01:32 +0100 Message-Id: <20181113140133.17385-25-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski We want to work towards phasing out the at24_platform_data structure. There are few users and its contents can be represented using generic device properties. Using device properties only will allow us to significantly simplify the at24 configuration code. Remove the at24_platform_data structure and replace it with an array of property entries. Drop the byte_len/size property, as the model name already implies the EEPROM's size. Signed-off-by: Bartosz Golaszewski --- arch/arm/mach-davinci/board-mityomapl138.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c index ac1a1699d185..a381b26328d8 100644 --- a/arch/arm/mach-davinci/board-mityomapl138.c +++ b/arch/arm/mach-davinci/board-mityomapl138.c @@ -14,13 +14,13 @@ #include #include #include +#include #include #include #include #include #include #include -#include #include #include #include @@ -192,10 +192,10 @@ static struct nvmem_cell_lookup mityomapl138_nvmem_cell_lookup = { .con_id = "mac-address", }; -static struct at24_platform_data mityomapl138_fd_chip = { - .byte_len = 256, - .page_size = 8, - .flags = AT24_FLAG_READONLY | AT24_FLAG_IRUGO, +static const struct property_entry mityomapl138_fd_chip_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 8), + PROPERTY_ENTRY_BOOL("read-only"), + { } }; static struct davinci_i2c_platform_data mityomap_i2c_0_pdata = { @@ -324,7 +324,7 @@ static struct i2c_board_info __initdata mityomap_tps65023_info[] = { }, { I2C_BOARD_INFO("24c02", 0x50), - .platform_data = &mityomapl138_fd_chip, + .properties = mityomapl138_fd_chip_properties, }, }; From patchwork Tue Nov 13 14:01:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 997148 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@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=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bgdev-pl.20150623.gappssmtp.com header.i=@bgdev-pl.20150623.gappssmtp.com header.b="olbsR3br"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42vTpr5XL9z9sBh for ; Wed, 14 Nov 2018 01:02:44 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388169AbeKNAA7 (ORCPT ); Tue, 13 Nov 2018 19:00:59 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:36270 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388170AbeKNAA6 (ORCPT ); Tue, 13 Nov 2018 19:00:58 -0500 Received: by mail-wr1-f67.google.com with SMTP id z13-v6so13447776wrs.3 for ; Tue, 13 Nov 2018 06:02:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=iOIa5X6V4cgJ8Er7nxbPwFfoAVpLi0/2bfR7wn0jpPY=; b=olbsR3bryUL+m8cdBqebdbl5sXiBN6FUNTIZZrrRemVlScb33XIwsuM9Q9JcwdtlaI 3uldKDTKUG0/HCy3olbzzAGVV3WMn5IaxgRBtR+z2cfOvBvCJfMz7jPlmmOY9ovfqpnW W7peLuHFcHJRN79Qkfs6u4BwO3jrld5XA2jhNz46Qv2dT17h7Sb5uuxfnVggmm3AEINA ixyyOemKA4Mrg+EtP2ZxEoY0HNP93lKrKE5QUVRryKO1H+nLj5B4n4IWsMivfWSg8Qnv 8i57Osmv1WgjjkOJc7SqrwWBR3rnzS9qoGU2Rtur7p44jllEE7YXbhqhSVK0aEaSoNtr /pkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=iOIa5X6V4cgJ8Er7nxbPwFfoAVpLi0/2bfR7wn0jpPY=; b=OrpRC4arhqWMWhQvAfMXRdLDzaqyGrvJqMycAVNQ9Q3J+8uaEbYUEIZSVBqBPO72Oy qLi3D6uhUav/HNjjwY3RNL5qU6xbIBV1KgY2qVYXHT6RZ0i1Jpsbn9tXBw8hTdsyxdc8 NfgIAiWWzWRLr4Xyc8OuuvJs23+8E0UWs4X4rrWMpVfqoMTPQFBkhMRBVvZvQbGgatUp sQzm50YQSOlCJECH2229QbiHLpsNh+G2rIyz4nFDnq75IQPlFzaJYna/9LFxOv6XOp7u nYlfXZ320uETkpiTHLkZ+GPN83WzAvdoPjuAv4UwlJUFaynbECo8EMqQ1Au3oNC+rRyt kfug== X-Gm-Message-State: AGRZ1gIY7A5NEAB26EABuu3uiIRkfR7+qRvXfnIp0JyTpI7qm6o+zW2+ XiE9f7BU6LuEpvTW6ZzIU+zfxw== X-Google-Smtp-Source: AJdET5cElr1EIc919X00x8jS3UjEmAF6AlgNsuVE+jywos4OXpcGORBZeCSnsTE50fMcsp3jQTkJeQ== X-Received: by 2002:adf:f8d0:: with SMTP id f16-v6mr5271023wrq.265.1542117759794; Tue, 13 Nov 2018 06:02:39 -0800 (PST) Received: from debian-brgl.home ([2a01:cb1d:af:5b00:6d6c:8493:1ab5:dad7]) by smtp.gmail.com with ESMTPSA id m69-v6sm16604122wmb.8.2018.11.13.06.02.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:02:39 -0800 (PST) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , Russell King , Arnd Bergmann , Greg Kroah-Hartman , David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Nicolas Ferre , "David S . Miller" , Grygorii Strashko , Srinivas Kandagatla , Andrew Lunn , Florian Fainelli , Rob Herring , Frank Rowand , Wolfram Sang Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org, linux-mtd@lists.infradead.org, netdev@vger.kernel.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 25/25] eeprom: at24: remove at24_platform_data Date: Tue, 13 Nov 2018 15:01:33 +0100 Message-Id: <20181113140133.17385-26-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181113140133.17385-1-brgl@bgdev.pl> References: <20181113140133.17385-1-brgl@bgdev.pl> MIME-Version: 1.0 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Bartosz Golaszewski There are no more users of at24_platform_data. Remove the relevant header and modify the driver code to not use it anymore. Signed-off-by: Bartosz Golaszewski --- MAINTAINERS | 1 - drivers/misc/eeprom/at24.c | 162 +++++++++++++---------------- include/linux/platform_data/at24.h | 60 ----------- 3 files changed, 75 insertions(+), 148 deletions(-) delete mode 100644 include/linux/platform_data/at24.h diff --git a/MAINTAINERS b/MAINTAINERS index 0abecc528dac..b3ee25e95bd0 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2456,7 +2456,6 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git S: Maintained F: Documentation/devicetree/bindings/eeprom/at24.txt F: drivers/misc/eeprom/at24.c -F: include/linux/platform_data/at24.h ATA OVER ETHERNET (AOE) DRIVER M: "Ed L. Cashin" diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c index 636ed7149793..f189a5307abd 100644 --- a/drivers/misc/eeprom/at24.c +++ b/drivers/misc/eeprom/at24.c @@ -22,10 +22,24 @@ #include #include #include -#include #include #include +/* Address pointer is 16 bit. */ +#define AT24_FLAG_ADDR16 BIT(7) +/* sysfs-entry will be read-only. */ +#define AT24_FLAG_READONLY BIT(6) +/* sysfs-entry will be world-readable. */ +#define AT24_FLAG_IRUGO BIT(5) +/* Take always 8 addresses (24c00). */ +#define AT24_FLAG_TAKE8ADDR BIT(4) +/* Factory-programmed serial number. */ +#define AT24_FLAG_SERIAL BIT(3) +/* Factory-programmed mac address. */ +#define AT24_FLAG_MAC BIT(2) +/* Does not auto-rollover reads to the next slave address. */ +#define AT24_FLAG_NO_RDROL BIT(1) + /* * I2C EEPROMs from most vendors are inexpensive and mostly interchangeable. * Differences between different vendor product lines (like Atmel AT24C or @@ -107,10 +121,6 @@ module_param_named(write_timeout, at24_write_timeout, uint, 0); MODULE_PARM_DESC(at24_write_timeout, "Time (in ms) to try writes (default 25)"); struct at24_chip_data { - /* - * these fields mirror their equivalents in - * struct at24_platform_data - */ u32 byte_len; u8 flags; }; @@ -468,63 +478,11 @@ static int at24_write(void *priv, unsigned int off, void *val, size_t count) return 0; } -static void at24_properties_to_pdata(struct device *dev, - struct at24_platform_data *chip) -{ - int err; - u32 val; - - if (device_property_present(dev, "read-only")) - chip->flags |= AT24_FLAG_READONLY; - if (device_property_present(dev, "no-read-rollover")) - chip->flags |= AT24_FLAG_NO_RDROL; - - err = device_property_read_u32(dev, "address-width", &val); - if (!err) { - switch (val) { - case 8: - if (chip->flags & AT24_FLAG_ADDR16) - dev_warn(dev, "Override address width to be 8, while default is 16\n"); - chip->flags &= ~AT24_FLAG_ADDR16; - break; - case 16: - chip->flags |= AT24_FLAG_ADDR16; - break; - default: - dev_warn(dev, "Bad \"address-width\" property: %u\n", - val); - } - } - - err = device_property_read_u32(dev, "size", &val); - if (!err) - chip->byte_len = val; - - err = device_property_read_u32(dev, "pagesize", &val); - if (!err) { - chip->page_size = val; - } else { - /* - * This is slow, but we can't know all eeproms, so we better - * play safe. Specifying custom eeprom-types via platform_data - * is recommended anyhow. - */ - chip->page_size = 1; - } -} - -static int at24_get_pdata(struct device *dev, struct at24_platform_data *pdata) +static const struct at24_chip_data *at24_get_chip_data(struct device *dev) { struct device_node *of_node = dev->of_node; const struct at24_chip_data *cdata; const struct i2c_device_id *id; - struct at24_platform_data *pd; - - pd = dev_get_platdata(dev); - if (pd) { - memcpy(pdata, pd, sizeof(*pdata)); - return 0; - } id = i2c_match_id(at24_ids, to_i2c_client(dev)); @@ -541,13 +499,9 @@ static int at24_get_pdata(struct device *dev, struct at24_platform_data *pdata) cdata = acpi_device_get_match_data(dev); if (!cdata) - return -ENODEV; + return ERR_PTR(-ENODEV); - pdata->byte_len = cdata->byte_len; - pdata->flags = cdata->flags; - at24_properties_to_pdata(dev, pdata); - - return 0; + return cdata; } static void at24_remove_dummy_clients(struct at24_data *at24) @@ -616,7 +570,8 @@ static int at24_probe(struct i2c_client *client) { struct regmap_config regmap_config = { }; struct nvmem_config nvmem_config = { }; - struct at24_platform_data pdata = { }; + u32 byte_len, page_size, flags, addrw; + const struct at24_chip_data *cdata; struct device *dev = &client->dev; bool i2c_fn_i2c, i2c_fn_block; unsigned int i, num_addresses; @@ -631,35 +586,72 @@ static int at24_probe(struct i2c_client *client) i2c_fn_block = i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_WRITE_I2C_BLOCK); - err = at24_get_pdata(dev, &pdata); + cdata = at24_get_chip_data(dev); + if (IS_ERR(cdata)) + return PTR_ERR(cdata); + + err = device_property_read_u32(dev, "pagesize", &page_size); if (err) - return err; + /* + * This is slow, but we can't know all eeproms, so we better + * play safe. Specifying custom eeprom-types via platform_data + * is recommended anyhow. + */ + page_size = 1; + + flags = cdata->flags; + if (device_property_present(dev, "read-only")) + flags |= AT24_FLAG_READONLY; + if (device_property_present(dev, "no-read-rollover")) + flags |= AT24_FLAG_NO_RDROL; + + err = device_property_read_u32(dev, "address-width", &addrw); + if (!err) { + switch (addrw) { + case 8: + if (flags & AT24_FLAG_ADDR16) + dev_warn(dev, + "Override address width to be 8, while default is 16\n"); + flags &= ~AT24_FLAG_ADDR16; + break; + case 16: + flags |= AT24_FLAG_ADDR16; + break; + default: + dev_warn(dev, "Bad \"address-width\" property: %u\n", + addrw); + } + } + + err = device_property_read_u32(dev, "size", &byte_len); + if (err) + byte_len = cdata->byte_len; if (!i2c_fn_i2c && !i2c_fn_block) - pdata.page_size = 1; + page_size = 1; - if (!pdata.page_size) { + if (!page_size) { dev_err(dev, "page_size must not be 0!\n"); return -EINVAL; } - if (!is_power_of_2(pdata.page_size)) + if (!is_power_of_2(page_size)) dev_warn(dev, "page_size looks suspicious (no power of 2)!\n"); - if (pdata.flags & AT24_FLAG_TAKE8ADDR) + if (flags & AT24_FLAG_TAKE8ADDR) num_addresses = 8; else - num_addresses = DIV_ROUND_UP(pdata.byte_len, - (pdata.flags & AT24_FLAG_ADDR16) ? 65536 : 256); + num_addresses = DIV_ROUND_UP(byte_len, + (flags & AT24_FLAG_ADDR16) ? 65536 : 256); - if ((pdata.flags & AT24_FLAG_SERIAL) && (pdata.flags & AT24_FLAG_MAC)) { + if ((flags & AT24_FLAG_SERIAL) && (flags & AT24_FLAG_MAC)) { dev_err(dev, "invalid device data - cannot have both AT24_FLAG_SERIAL & AT24_FLAG_MAC."); return -EINVAL; } regmap_config.val_bits = 8; - regmap_config.reg_bits = (pdata.flags & AT24_FLAG_ADDR16) ? 16 : 8; + regmap_config.reg_bits = (flags & AT24_FLAG_ADDR16) ? 16 : 8; regmap_config.disable_locking = true; regmap = devm_regmap_init_i2c(client, ®map_config); @@ -672,11 +664,11 @@ static int at24_probe(struct i2c_client *client) return -ENOMEM; mutex_init(&at24->lock); - at24->byte_len = pdata.byte_len; - at24->page_size = pdata.page_size; - at24->flags = pdata.flags; + at24->byte_len = byte_len; + at24->page_size = page_size; + at24->flags = flags; at24->num_addresses = num_addresses; - at24->offset_adj = at24_get_offset_adj(pdata.flags, pdata.byte_len); + at24->offset_adj = at24_get_offset_adj(flags, byte_len); at24->client[0].client = client; at24->client[0].regmap = regmap; @@ -684,10 +676,10 @@ static int at24_probe(struct i2c_client *client) if (IS_ERR(at24->wp_gpio)) return PTR_ERR(at24->wp_gpio); - writable = !(pdata.flags & AT24_FLAG_READONLY); + writable = !(flags & AT24_FLAG_READONLY); if (writable) { at24->write_max = min_t(unsigned int, - pdata.page_size, at24_io_limit); + page_size, at24_io_limit); if (!i2c_fn_i2c && at24->write_max > I2C_SMBUS_BLOCK_MAX) at24->write_max = I2C_SMBUS_BLOCK_MAX; } @@ -730,7 +722,7 @@ static int at24_probe(struct i2c_client *client) nvmem_config.priv = at24; nvmem_config.stride = 1; nvmem_config.word_size = 1; - nvmem_config.size = pdata.byte_len; + nvmem_config.size = byte_len; at24->nvmem = devm_nvmem_register(dev, &nvmem_config); if (IS_ERR(at24->nvmem)) { @@ -739,13 +731,9 @@ static int at24_probe(struct i2c_client *client) } dev_info(dev, "%u byte %s EEPROM, %s, %u bytes/write\n", - pdata.byte_len, client->name, + byte_len, client->name, writable ? "writable" : "read-only", at24->write_max); - /* export data to kernel code */ - if (pdata.setup) - pdata.setup(at24->nvmem, pdata.context); - return 0; err_clients: diff --git a/include/linux/platform_data/at24.h b/include/linux/platform_data/at24.h deleted file mode 100644 index 63507ff464ee..000000000000 --- a/include/linux/platform_data/at24.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * at24.h - platform_data for the at24 (generic eeprom) driver - * (C) Copyright 2008 by Pengutronix - * (C) Copyright 2012 by Wolfram Sang - * same license as the driver - */ - -#ifndef _LINUX_AT24_H -#define _LINUX_AT24_H - -#include -#include -#include - -/** - * struct at24_platform_data - data to set up at24 (generic eeprom) driver - * @byte_len: size of eeprom in byte - * @page_size: number of byte which can be written in one go - * @flags: tunable options, check AT24_FLAG_* defines - * @setup: an optional callback invoked after eeprom is probed; enables kernel - code to access eeprom via nvmem, see example - * @context: optional parameter passed to setup() - * - * If you set up a custom eeprom type, please double-check the parameters. - * Especially page_size needs extra care, as you risk data loss if your value - * is bigger than what the chip actually supports! - * - * An example in pseudo code for a setup() callback: - * - * void get_mac_addr(struct nvmem_device *nvmem, void *context) - * { - * u8 *mac_addr = ethernet_pdata->mac_addr; - * off_t offset = context; - * - * // Read MAC addr from EEPROM - * if (nvmem_device_read(nvmem, offset, ETH_ALEN, mac_addr) == ETH_ALEN) - * pr_info("Read MAC addr from EEPROM: %pM\n", mac_addr); - * } - * - * This function pointer and context can now be set up in at24_platform_data. - */ - -struct at24_platform_data { - u32 byte_len; /* size (sum of all addr) */ - u16 page_size; /* for writes */ - u8 flags; -#define AT24_FLAG_ADDR16 BIT(7) /* address pointer is 16 bit */ -#define AT24_FLAG_READONLY BIT(6) /* sysfs-entry will be read-only */ -#define AT24_FLAG_IRUGO BIT(5) /* sysfs-entry will be world-readable */ -#define AT24_FLAG_TAKE8ADDR BIT(4) /* take always 8 addresses (24c00) */ -#define AT24_FLAG_SERIAL BIT(3) /* factory-programmed serial number */ -#define AT24_FLAG_MAC BIT(2) /* factory-programmed mac address */ -#define AT24_FLAG_NO_RDROL BIT(1) /* does not auto-rollover reads to */ - /* the next slave address */ - - void (*setup)(struct nvmem_device *nvmem, void *context); - void *context; -}; - -#endif /* _LINUX_AT24_H */