From patchwork Tue Nov 13 14:01:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 10680699 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 05EDE14E2 for ; Tue, 13 Nov 2018 14:01:57 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E98862A980 for ; Tue, 13 Nov 2018 14:01:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E741E2A9B0; Tue, 13 Nov 2018 14:01:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 57F102A980 for ; Tue, 13 Nov 2018 14:01:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387550AbeKNAAL (ORCPT ); Tue, 13 Nov 2018 19:00:11 -0500 Received: from mail-wr1-f68.google.com ([209.85.221.68]:38217 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387542AbeKNAAL (ORCPT ); Tue, 13 Nov 2018 19:00:11 -0500 Received: by mail-wr1-f68.google.com with SMTP id e3-v6so13457729wrs.5 for ; Tue, 13 Nov 2018 06:01:53 -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:mime-version :content-transfer-encoding; bh=blZocBfiQB6Ocx1ugckB4Vp/kZ87mUO0V16Q3JTe5Uw=; b=lDYiNtRzK3zuNcw1Edztz0krUaR4osTri19WlOGHjWh+xwjvl8B0A1kwvr0kSFB+PH tBYPTgnDaTFd+IU+dDJqPqA2QGbCCrGA3QWZ3/dDcNAE3aYqDcEFI00336mHc5+052L0 Mq81gwlTSfoCSV+Ov29d2q7mDBGyNt/NZ7a8FqGtn5loy1yLQPn8nObjK7EXVDnnclUa wHoB+lZmXR6xENCrzZB+s16sCd6kqgXqn/8E3byvZvSpSn/PQ7eQ0AnwYUChHFKCaAfa AW83NheMqRuy/CCmIcsDemrKmYD16+H08QMBCu5XZpAEswoSkYHs+oV6YguagJSHlmrP Yzaw== 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:mime-version :content-transfer-encoding; bh=blZocBfiQB6Ocx1ugckB4Vp/kZ87mUO0V16Q3JTe5Uw=; b=TBcXtImgeiyNVC84aBrHSdpeSJQHfHmbFRrFRFftsAFS2Ya/8YtazpmNnYQolFbl3d BtkoTsL4GtiYJLaazA4Ist8dm+a/5XwyayKO3WN2u5+K3w0/wPT/OI62lYtb/Ff1HfOX jATTAHqA4L2U8C2vbE3FK+T9uiavu8SwJbW2g89dxxYiiP1jG6ISJ6PaPBTETdDT1HvD 5xsr1N1nNBrzF6RqgnwcBMvW3T01TrvLMQCD+ZPbgK9QEEXfOJYr854lSGTEBM+6wUL3 L9qJesguB4AnPilLRGHCibawmLY5LwTvm/1P0RKPzjEULzLhJMXZ4fOKemAuzdTseZet T2uw== X-Gm-Message-State: AGRZ1gJrDzMQwcpf+lI7Yc+j+TNFhs1RtWeMuTKk1gnewdJfNUmwuF1O OTnKIBQ6MxozQ3U9OV2qeix70g== X-Google-Smtp-Source: AJdET5cGsTI7FDEsk2o/VAB/ghVOTu33ymnCmvJoRHHwuIKxCu4b3d8OU3eRakS9oCioMhob5cnT4w== X-Received: by 2002:a5d:530c:: with SMTP id e12-v6mr5001293wrv.29.1542117713204; Tue, 13 Nov 2018 06:01:53 -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.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Nov 2018 06:01:52 -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 00/25] at24: remove Date: Tue, 13 Nov 2018 15:01:08 +0100 Message-Id: <20181113140133.17385-1-brgl@bgdev.pl> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Bartosz Golaszewski Now that nvmem has gained support for defining cells from board files and looking them up from relevant drivers[1], it's time for a respin of the previous series[2] that aims at removing struct at24_platform_data from the tree. Since I took over maintainership of the at24 driver I've been working towards removing at24_platform_data in favor for device properties. DaVinci is the only platform that's still using it - all other users have already been converted. One of the obstacles in case of DaVinci is removing the setup() callback from the pdata struct, the only user of which are some davinci boards. First we add support for nvmem to MTD in a way previously discussed with Boris Brezillon and Srinivas Kandagatla. Then, since most boards use the EEPROM to store the MAC address, we register relevant cells for all users, implement a function that allows to read the MAC address from nvmem (and also replaces the previous DT-specific variant) and make davinci_emac aware of it. Next we switch all davinci users to using at24 device properties instead of platform data. While we're at it: we remove all other traces of the setup callback and platform data from davinci. Finally we remove the at24 platform data structure. I kept the review tags in patches that haven't changed from the last submission. As far as merging of this series goes: I'd like to avoid dragging it over four releases. The series is logically split into five groups: patches 1-2: nvmem and mtd changes patches 3-9: davinci arch-specific changes patches 10-13: networking changes patches 14-24: davinci specific again patch 25: final at24 change With that I believe we can do the following: Greg KH could pick up the first two patches into his char-misc tree. Sekhar would take the second group and the third would go through the networking tree since the first three sets are not linked in any way. This would be merged for 4.21. Then for the next release Sekhar would pick up 14-24, provide an immutable branch for me and I'd merge the final patch for at24 and send it upstream through Wolfram's i2c tree (maybe we could even delay the i2c PR in the merge window to avoid the immutable branch altogether). [1] https://lkml.org/lkml/2018/9/21/293 [2] https://lkml.org/lkml/2018/8/8/528 Alban Bedel (1): mtd: add support for reading MTD devices via the nvmem API Bartosz Golaszewski (24): nvmem: add new config option ARM: davinci: dm365-evm: use cell nvmem lookup for mac address ARM: davinci: dm644x-evm: use cell nvmem lookup for mac address ARM: davinci: dm646x-evm: use cell nvmem lookup for mac address ARM: davinci: da830-evm: use cell nvmem lookup for mac address ARM: davinci: mityomapl138: use cell nvmem lookup for mac address ARM: davinci: dm850-evm: use cell nvmem lookup for mac address ARM: davinci: da850-evm: remove unnecessary include net: ethernet: provide nvmem_get_mac_address() net: cadence: switch to using nvmem_get_mac_address() of: net: kill of_get_nvmem_mac_address() net: davinci_emac: use nvmem_get_mac_address() ARM: davinci: da850-evm: remove dead MTD code ARM: davinci: mityomapl138: don't read the MAC address from machine code ARM: davinci: dm365-evm: use device properties for at24 eeprom ARM: davinci: da830-evm: use device properties for at24 eeprom ARM: davinci: dm644x-evm: use device properties for at24 eeprom ARM: davinci: dm646x-evm: use device properties for at24 eeprom ARM: davinci: sffsdr: fix the at24 eeprom device name ARM: davinci: sffsdr: use device properties for at24 eeprom ARM: davinci: remove dead code related to MAC address reading ARM: davinci: mityomapl138: use nvmem notifiers ARM: davinci: mityomapl138: use device properties for at24 eeprom eeprom: at24: remove at24_platform_data MAINTAINERS | 1 - arch/arm/mach-davinci/board-da830-evm.c | 39 ++++- arch/arm/mach-davinci/board-da850-evm.c | 58 ++++---- arch/arm/mach-davinci/board-dm365-evm.c | 38 ++++- arch/arm/mach-davinci/board-dm644x-evm.c | 37 ++++- arch/arm/mach-davinci/board-dm646x-evm.c | 37 ++++- arch/arm/mach-davinci/board-mityomapl138.c | 67 ++++++--- arch/arm/mach-davinci/board-sffsdr.c | 13 +- arch/arm/mach-davinci/common.c | 15 -- drivers/misc/eeprom/at24.c | 162 ++++++++++----------- drivers/mtd/Kconfig | 1 + drivers/mtd/mtdcore.c | 56 +++++++ drivers/net/ethernet/cadence/macb_main.c | 2 +- drivers/net/ethernet/ti/davinci_emac.c | 14 +- drivers/nvmem/core.c | 3 +- drivers/of/of_net.c | 39 ----- include/linux/davinci_emac.h | 1 - include/linux/etherdevice.h | 1 + include/linux/mtd/mtd.h | 2 + include/linux/nvmem-provider.h | 2 + include/linux/of_net.h | 6 - include/linux/platform_data/at24.h | 60 -------- net/ethernet/eth.c | 38 +++++ 23 files changed, 391 insertions(+), 301 deletions(-) delete mode 100644 include/linux/platform_data/at24.h