From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yb1-f201.google.com (mail-yb1-f201.google.com [209.85.219.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 59B3314A0AD for ; Fri, 10 May 2024 08:29:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715329788; cv=none; b=Yyru0BvaBohIZxei62GppwRZ5wD22wJZiC+o1799h9bfgLFheauaehyvUQMUe0sJVIdC5cdMarX+TusHXKDd36C+gB6daJjLUxiOdCyQh9V4TDYYk5iWSCZXlRVOrzcZN1k3irGq8piLqelCs6vfGDw5PNWDTJgt6DltYODkp+M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715329788; c=relaxed/simple; bh=7cev1urkkriXH1Kz2Kjf4vy0a3n4geUSsLoRNQ3CwIw=; h=Date:Mime-Version:Message-ID:Subject:From:To:Cc:Content-Type; b=Ehyie8/RTyEI0qwF1UNSCF9tcMo7FqbT7u/aZmHkf70pH1ONq47ekPZnsEXGIl6Om/Ucsj9ZBvC0ebuwlQ525rYyICcGUI5eyonkwPgZ8wtLehnk8l0OA+WmPBu+QcOuMZzNepPn3H5tg07cMiH4uBeV3iK+1DYCB9CvjoK6BCw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--joychakr.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=DKgKQVl1; arc=none smtp.client-ip=209.85.219.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--joychakr.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="DKgKQVl1" Received: by mail-yb1-f201.google.com with SMTP id 3f1490d57ef6-ddaf2f115f2so2707521276.3 for ; Fri, 10 May 2024 01:29:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1715329776; x=1715934576; darn=lists.linux.dev; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=DKgKQVl1h23ScHI9gto1CjMcKqGN2+RSXsqFYIY/EYmH2WuJu/huKgofiZhANETiO3 sXw51Gzlg1xR9FlP88E/hp8nrw1SrOeCr3B/hbe/hWG25D3dHEtBi58crUMFXQAVVUYN +IgmUcLknpOAqRH8TKLSuTSid/wQVPNQuIm+OtT+KaYXH6dt9deIYExnYTEUq17UEbUN xOptZgMviUgc/RwTwI6l5e1mqfvLlyJ8qNxdGjvvpUacTJTx3tGP7Vso/pFtjTysegDJ iiXx0hbKnyqu+5A55H+OFq6Fwq0u3oAm912BrMoQvVbW6YfgsXPIhzoMjlZQH38wI4+H viKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715329776; x=1715934576; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=PUbkiuefXZrNZNUBkt1f7pfxhBe++lKXlvdwYvGneO1CjKIojVudrGwQ+K8wisBAYZ D+PK3Wuxwmk3fuF+LV14yl8z67xFrtnItbXoPCOktwloF2IpuM853JET7YG5gS75Re/W POtujO34m67NGwP48ORULIpfJTAZLYy+KwiBXgKdykfr7rlsasBIJNoGcHWif5aJ3Oyf Lm8dcq1pP9CkBXLK69tICirWtWL/d1/a35YD6o/expzykPh7bxqvJjMyS5HGvKc9yn6W ypmG/cEDmZv6pqDCnnXnpA4rtXa1ttvB/boSd3lBxBOyO5o+KMMXxe2xdZovb1SwFrsJ Ta0Q== X-Forwarded-Encrypted: i=1; AJvYcCXLtAmWF4ZCqHcyCUc4YhPdbCHkjdCDxQeRgqIO5kGDQrT5e5xbAIK8E/0g6yUSNj54NAKP7xzTWOsReizF7zKcULW5Ks8= X-Gm-Message-State: AOJu0YwJGHXn8b+3cFp/1CsHzscoVnwZLWwlA2ZqGh26SUb2IJp0URJR AhcrphJR1haj6T/gdsB9thMnK8yOxmbYNaKcus9vE4PTE+PnYse5Zs3bw10kj87My/85X0PLS7P ocqAbj2CcaA== X-Google-Smtp-Source: AGHT+IEiknRtBHdrQ2HgiFa5pD74L/Ye3Nv3Q0grhoikyts9vAUMehW+Dt9fd3K3/ZrjmNUP76nhD8GAX7HaoA== X-Received: from joychakr.c.googlers.com ([fda3:e722:ac3:cc00:4f:4b78:c0a8:6ea]) (user=joychakr job=sendgmr) by 2002:a05:6902:c09:b0:de5:5304:3206 with SMTP id 3f1490d57ef6-dee4f52d715mr180759276.11.1715329776091; Fri, 10 May 2024 01:29:36 -0700 (PDT) Date: Fri, 10 May 2024 08:29:28 +0000 Precedence: bulk X-Mailing-List: asahi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 X-Mailer: git-send-email 2.45.0.118.g7fe29c98d7-goog Message-ID: <20240510082929.3792559-1-joychakr@google.com> Subject: [PATCH v3 0/1] nvmem: Handle actual amount of data read/written by suppliers From: Joy Chakraborty To: Hector Martin , Sven Peter , Alyssa Rosenzweig , Srinivas Kandagatla , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Vladimir Zapolskiy , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , Bjorn Andersson , Konrad Dybcio , Heiko Stuebner , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Vincent Shih , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Rafal Milecki , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek Cc: Greg Kroah-Hartman , asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, manugautam@google.com, Joy Chakraborty Content-Type: text/plain; charset="UTF-8" This Patch series stems from discussions in patchset, "[PATCH v2] nvmem: rmem: Fix return value of rmem_read()" (https://lore.kernel.org/all/20240206042408.224138-1-joychakr@google.com/). Where we come across the fact that currently the nvmem suppliers do not actually let the core know how much data has been actually read or written. Instead they are expected to return 0 for success and the core assumes that the amount of data written is equal to what the core has requested. On addition this patchset will also add some guards and checks based on the count of data returned by the nvmem supplier. --- V3 Changes : Fix return value of reg_read in sunxi_sid.c driver --- V2 Changes : Rebase on for-next. --- V1 Changes : Change read/write callback prototype to ssize_t and supplier changes to accomodate the same with core checks and bounds. --- Joy Chakraborty (1): nvmem: Change return type of reg read/write to ssize_t drivers/nvmem/apple-efuses.c | 7 +-- drivers/nvmem/bcm-ocotp.c | 12 ++--- drivers/nvmem/brcm_nvram.c | 10 ++-- drivers/nvmem/core.c | 83 +++++++++++++---------------- drivers/nvmem/imx-iim.c | 6 +-- drivers/nvmem/imx-ocotp-ele.c | 4 +- drivers/nvmem/imx-ocotp-scu.c | 12 ++--- drivers/nvmem/imx-ocotp.c | 10 ++-- drivers/nvmem/jz4780-efuse.c | 7 +-- drivers/nvmem/lan9662-otpc.c | 12 ++--- drivers/nvmem/layerscape-sfp.c | 11 ++-- drivers/nvmem/lpc18xx_eeprom.c | 14 ++--- drivers/nvmem/lpc18xx_otp.c | 6 +-- drivers/nvmem/meson-efuse.c | 22 +++++--- drivers/nvmem/meson-mx-efuse.c | 6 +-- drivers/nvmem/microchip-otpc.c | 6 +-- drivers/nvmem/mtk-efuse.c | 6 +-- drivers/nvmem/mxs-ocotp.c | 7 +-- drivers/nvmem/nintendo-otp.c | 6 +-- drivers/nvmem/qcom-spmi-sdam.c | 12 ++--- drivers/nvmem/qfprom.c | 14 ++--- drivers/nvmem/qoriq-efuse.c | 6 +-- drivers/nvmem/rave-sp-eeprom.c | 18 +++---- drivers/nvmem/rmem.c | 4 +- drivers/nvmem/rockchip-efuse.c | 19 +++---- drivers/nvmem/rockchip-otp.c | 19 +++---- drivers/nvmem/sc27xx-efuse.c | 3 +- drivers/nvmem/sec-qfprom.c | 4 +- drivers/nvmem/snvs_lpgpr.c | 17 +++--- drivers/nvmem/sprd-efuse.c | 8 +-- drivers/nvmem/stm32-bsec-optee-ta.c | 12 ++--- drivers/nvmem/stm32-bsec-optee-ta.h | 20 +++---- drivers/nvmem/stm32-romem.c | 26 ++++----- drivers/nvmem/sunplus-ocotp.c | 4 +- drivers/nvmem/sunxi_sid.c | 18 ++++--- drivers/nvmem/u-boot-env.c | 6 +-- drivers/nvmem/uniphier-efuse.c | 6 +-- drivers/nvmem/vf610-ocotp.c | 7 +-- drivers/nvmem/zynqmp_nvmem.c | 13 ++--- include/linux/nvmem-provider.h | 4 +- 40 files changed, 255 insertions(+), 232 deletions(-) -- 2.45.0.118.g7fe29c98d7-goog From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4E48EC25B77 for ; Fri, 10 May 2024 08:30:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=aimzZAnQ+vrSCAPyTKuDnUJ95WpjW2JWukydsd6S8fo=; b=Swt cmXO2sXPXgWXhqUfzEzxJdRLi7z8UL2QOvYtgpPkhAnSl9gwXh/bAjbDX7fuKReI31bO/lH4eXy2y iDI0qUKyJc3DU5RpzqXnEnnq77Zzz3FgQQZB32JjPB7mYKr0eUoQds3ZlDajGBMbmw72rpelXKAbn 8s/gWVq31PN0a1NaNaw6t5BvqmlAzo/bcOL6ixKc9Apq+mR9wclWPb1VlRbwWW0qzim9hObILY9ru 3tX4RSP4dTKVtoMfmtumn5tIkfKlzQl9EcGgmjGDWXtbyMx7alHs959bpeiVfKceUFmy9aTzhHFAc nwnm8Lv6pHn3BaBF6wxIptbF1I5ylww==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5Ldn-00000004VJr-2t4b; Fri, 10 May 2024 08:30:07 +0000 Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5LdT-00000004VBE-3HsH for linux-amlogic@lists.infradead.org; Fri, 10 May 2024 08:30:02 +0000 Received: by mail-yb1-xb49.google.com with SMTP id 3f1490d57ef6-ddaf2f115f2so2707522276.3 for ; Fri, 10 May 2024 01:29:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1715329776; x=1715934576; darn=lists.infradead.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=g4wIewXaq45bxU5f6OeoxEha1ACMN1rD0f6f5V2V9IgHqKXxr3HPNX5SMNwAUFt/cU KurMXhILeZGIqWGtUnUNH1eJnvB5c6WDmWEIbE+I1A7vRRllJFxyyZI6lQEVi/o6exWA +HYxxXrzt7PNpNXMU4+PeCK9KaXIEQPuLQi0XcLOx2KnoBXH0F+Ulk0k2AraefoZ9uQm IARKU0pj62QcYfHnWI/Bew1tTYoBvNXjivY/lZ2imibDZ9HEBvcnq+eYag97GOa98fkS VS16d/TZ07BWq5MKtEWhzzdDHIKgcdxi86FPcKi4EIoePioIBKxHWKR8/SP3mLWtKjNR J3gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715329776; x=1715934576; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=v+C194VATWKWXMaZLjkIBdI1ihQv7HcN23gwIodmsf4bI3aP71PPKumEPw9q1Ky4oz 0XGNi0ZPEgSqc6BvTOYBS0tHMbHUdXoAfYkcSFJysgKE7MDv6IIZdLk+7VvVBPdndDJd tNAwj/OlFNSVZdbavCc9qU++j9b5pN9439m+wGRXOe0zsuOAIXddGkxVhlyCGvAxXz7B Tm1HiBg98Y6l1OOoLmnpUPFVdAM4c4ViYTgAS1r2LjPaQJV0y86d5hle7y9XU/RCfcLQ D7dHiAKUBkDa/YmwjywPb3I6cHA246RubCC8p5PJcsjxgjKS2xX3hI7/19YGiqy0qpOk S0Zw== X-Forwarded-Encrypted: i=1; AJvYcCUsH4CdDfV3JECwRD9keoP4qgoHWIO26sflTymlA6F98DoCOK0R3BuM588gz2vdXEia6KSSyBTwnrUcOxP4TiQJaLFRzZxZwPT4W9NS8ZAUf+M= X-Gm-Message-State: AOJu0YzRwPSsWE2jEzG8qSxufQ6cgOaCxC3JaDvO/125YkdlhyzKN9HV tfESBEXMt2GhQ9SK5mPb/x8i9yneEsIjQCRiwtcW9f9nfjzhSQHvHkRm1nWoriR6ed1G34eWrCt rB19gJqNscw== X-Google-Smtp-Source: AGHT+IEiknRtBHdrQ2HgiFa5pD74L/Ye3Nv3Q0grhoikyts9vAUMehW+Dt9fd3K3/ZrjmNUP76nhD8GAX7HaoA== X-Received: from joychakr.c.googlers.com ([fda3:e722:ac3:cc00:4f:4b78:c0a8:6ea]) (user=joychakr job=sendgmr) by 2002:a05:6902:c09:b0:de5:5304:3206 with SMTP id 3f1490d57ef6-dee4f52d715mr180759276.11.1715329776091; Fri, 10 May 2024 01:29:36 -0700 (PDT) Date: Fri, 10 May 2024 08:29:28 +0000 Mime-Version: 1.0 X-Mailer: git-send-email 2.45.0.118.g7fe29c98d7-goog Message-ID: <20240510082929.3792559-1-joychakr@google.com> Subject: [PATCH v3 0/1] nvmem: Handle actual amount of data read/written by suppliers From: Joy Chakraborty To: Hector Martin , Sven Peter , Alyssa Rosenzweig , Srinivas Kandagatla , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Vladimir Zapolskiy , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , Bjorn Andersson , Konrad Dybcio , Heiko Stuebner , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Vincent Shih , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Rafal Milecki , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek Cc: Greg Kroah-Hartman , asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, manugautam@google.com, Joy Chakraborty X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240510_012959_683815_08F8DB0E X-CRM114-Status: GOOD ( 12.90 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org This Patch series stems from discussions in patchset, "[PATCH v2] nvmem: rmem: Fix return value of rmem_read()" (https://lore.kernel.org/all/20240206042408.224138-1-joychakr@google.com/). Where we come across the fact that currently the nvmem suppliers do not actually let the core know how much data has been actually read or written. Instead they are expected to return 0 for success and the core assumes that the amount of data written is equal to what the core has requested. On addition this patchset will also add some guards and checks based on the count of data returned by the nvmem supplier. --- V3 Changes : Fix return value of reg_read in sunxi_sid.c driver --- V2 Changes : Rebase on for-next. --- V1 Changes : Change read/write callback prototype to ssize_t and supplier changes to accomodate the same with core checks and bounds. --- Joy Chakraborty (1): nvmem: Change return type of reg read/write to ssize_t drivers/nvmem/apple-efuses.c | 7 +-- drivers/nvmem/bcm-ocotp.c | 12 ++--- drivers/nvmem/brcm_nvram.c | 10 ++-- drivers/nvmem/core.c | 83 +++++++++++++---------------- drivers/nvmem/imx-iim.c | 6 +-- drivers/nvmem/imx-ocotp-ele.c | 4 +- drivers/nvmem/imx-ocotp-scu.c | 12 ++--- drivers/nvmem/imx-ocotp.c | 10 ++-- drivers/nvmem/jz4780-efuse.c | 7 +-- drivers/nvmem/lan9662-otpc.c | 12 ++--- drivers/nvmem/layerscape-sfp.c | 11 ++-- drivers/nvmem/lpc18xx_eeprom.c | 14 ++--- drivers/nvmem/lpc18xx_otp.c | 6 +-- drivers/nvmem/meson-efuse.c | 22 +++++--- drivers/nvmem/meson-mx-efuse.c | 6 +-- drivers/nvmem/microchip-otpc.c | 6 +-- drivers/nvmem/mtk-efuse.c | 6 +-- drivers/nvmem/mxs-ocotp.c | 7 +-- drivers/nvmem/nintendo-otp.c | 6 +-- drivers/nvmem/qcom-spmi-sdam.c | 12 ++--- drivers/nvmem/qfprom.c | 14 ++--- drivers/nvmem/qoriq-efuse.c | 6 +-- drivers/nvmem/rave-sp-eeprom.c | 18 +++---- drivers/nvmem/rmem.c | 4 +- drivers/nvmem/rockchip-efuse.c | 19 +++---- drivers/nvmem/rockchip-otp.c | 19 +++---- drivers/nvmem/sc27xx-efuse.c | 3 +- drivers/nvmem/sec-qfprom.c | 4 +- drivers/nvmem/snvs_lpgpr.c | 17 +++--- drivers/nvmem/sprd-efuse.c | 8 +-- drivers/nvmem/stm32-bsec-optee-ta.c | 12 ++--- drivers/nvmem/stm32-bsec-optee-ta.h | 20 +++---- drivers/nvmem/stm32-romem.c | 26 ++++----- drivers/nvmem/sunplus-ocotp.c | 4 +- drivers/nvmem/sunxi_sid.c | 18 ++++--- drivers/nvmem/u-boot-env.c | 6 +-- drivers/nvmem/uniphier-efuse.c | 6 +-- drivers/nvmem/vf610-ocotp.c | 7 +-- drivers/nvmem/zynqmp_nvmem.c | 13 ++--- include/linux/nvmem-provider.h | 4 +- 40 files changed, 255 insertions(+), 232 deletions(-) -- 2.45.0.118.g7fe29c98d7-goog _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C7D55C25B75 for ; Fri, 10 May 2024 08:30:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=l+++DdsvQi2q29ZpJP4TKyhkjPDbpHBHMTJ/OgGX1TE=; b=4Pj YHZYT4gbDL6ixye/0gRuELqTaXEx7mR0YZKh6MMxCFYAooL1bPNAky+gIpHLSSw1VXKBjWl0oFml/ jyDcTPegE+BIR8FUxOVybE/Y3Y5QzKpGzb4GpFIy6wh6DItDvqZay3F2l2ltc9vUeM7G3hlt6SC0w dkZYdhWQpUNzIwTvmUfXiPePTe8NecOcw+uoqrFdHJWpuT1koJmqObV9SGR1rn7BKB/dNezZXyJAv N0amjKliJbZigQYiuEQwM929ye/z1QTtrghHy7jsrTagv6NMX/QKa6n5SSnCdDuBSxkDlpXylLFs1 rmVPyomeoa0jusCkV2T1GNXWtUoSZcg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5Ldp-00000004VKX-0NlC; Fri, 10 May 2024 08:30:09 +0000 Received: from mail-yb1-xb4a.google.com ([2607:f8b0:4864:20::b4a]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5LdT-00000004VBD-3NzJ for linux-rockchip@lists.infradead.org; Fri, 10 May 2024 08:30:03 +0000 Received: by mail-yb1-xb4a.google.com with SMTP id 3f1490d57ef6-ddaf2f115f2so2707525276.3 for ; Fri, 10 May 2024 01:29:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1715329776; x=1715934576; darn=lists.infradead.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=g4wIewXaq45bxU5f6OeoxEha1ACMN1rD0f6f5V2V9IgHqKXxr3HPNX5SMNwAUFt/cU KurMXhILeZGIqWGtUnUNH1eJnvB5c6WDmWEIbE+I1A7vRRllJFxyyZI6lQEVi/o6exWA +HYxxXrzt7PNpNXMU4+PeCK9KaXIEQPuLQi0XcLOx2KnoBXH0F+Ulk0k2AraefoZ9uQm IARKU0pj62QcYfHnWI/Bew1tTYoBvNXjivY/lZ2imibDZ9HEBvcnq+eYag97GOa98fkS VS16d/TZ07BWq5MKtEWhzzdDHIKgcdxi86FPcKi4EIoePioIBKxHWKR8/SP3mLWtKjNR J3gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715329776; x=1715934576; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=CeYbOEwISbgxxDaOTIqXeaRQ/gyY5POYpHMTHzveZujLP5AeB9SRwxBePt1OLSW3c4 FYHxfx0Tc7wUvoSqRpG/AoQ7VH4r6CWo08g0o+oD8ZM0ZvJGJtDmvL9vIJlm68lie0B2 g0rIWMRBQ5j6c+Pw59rBb1gTZIQK7f1ljXsAYdjeig7jzUEKP7HOf5zn637L57iKgSyk PagY/lstWlupo/SEqIcI5pjdUK4q0NX6l+ebeB8Y1J45Sj0U57mZxsjrU6QMuXFpXfmj QgQrwbvP119QmuxFYw48MlnICWMaO8GdGVN+Q1Elqj1LmAQo0PY7iC2qa3q+amfeoAsC Q/1g== X-Forwarded-Encrypted: i=1; AJvYcCVFiTMEWrqilD7kgfHsyQP/iBFFKm0LYmbAdaO0IKqZ6RIohtRjg+bO7FfujlhQG/kT5sp19+eKOOl2GDJQA/uokk9j/3xdNc24/SdBWP00+ZAm X-Gm-Message-State: AOJu0Yx2HKqw8zRssHesBNBCA94jU5TDTp0OgsbRABDK/FdvOoF+hXh4 VXBcPh2jVt/WGQtOsiTwGP5d/2ZqOw7XkUTnF0AEfJPCgPbexVQvs5IzuQWwvPFrJmy9mRXs0ra GVuHz2r+HUg== X-Google-Smtp-Source: AGHT+IEiknRtBHdrQ2HgiFa5pD74L/Ye3Nv3Q0grhoikyts9vAUMehW+Dt9fd3K3/ZrjmNUP76nhD8GAX7HaoA== X-Received: from joychakr.c.googlers.com ([fda3:e722:ac3:cc00:4f:4b78:c0a8:6ea]) (user=joychakr job=sendgmr) by 2002:a05:6902:c09:b0:de5:5304:3206 with SMTP id 3f1490d57ef6-dee4f52d715mr180759276.11.1715329776091; Fri, 10 May 2024 01:29:36 -0700 (PDT) Date: Fri, 10 May 2024 08:29:28 +0000 Mime-Version: 1.0 X-Mailer: git-send-email 2.45.0.118.g7fe29c98d7-goog Message-ID: <20240510082929.3792559-1-joychakr@google.com> Subject: [PATCH v3 0/1] nvmem: Handle actual amount of data read/written by suppliers From: Joy Chakraborty To: Hector Martin , Sven Peter , Alyssa Rosenzweig , Srinivas Kandagatla , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Vladimir Zapolskiy , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , Bjorn Andersson , Konrad Dybcio , Heiko Stuebner , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Vincent Shih , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Rafal Milecki , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek Cc: Greg Kroah-Hartman , asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, manugautam@google.com, Joy Chakraborty X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240510_012959_676261_236BC545 X-CRM114-Status: GOOD ( 13.11 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org This Patch series stems from discussions in patchset, "[PATCH v2] nvmem: rmem: Fix return value of rmem_read()" (https://lore.kernel.org/all/20240206042408.224138-1-joychakr@google.com/). Where we come across the fact that currently the nvmem suppliers do not actually let the core know how much data has been actually read or written. Instead they are expected to return 0 for success and the core assumes that the amount of data written is equal to what the core has requested. On addition this patchset will also add some guards and checks based on the count of data returned by the nvmem supplier. --- V3 Changes : Fix return value of reg_read in sunxi_sid.c driver --- V2 Changes : Rebase on for-next. --- V1 Changes : Change read/write callback prototype to ssize_t and supplier changes to accomodate the same with core checks and bounds. --- Joy Chakraborty (1): nvmem: Change return type of reg read/write to ssize_t drivers/nvmem/apple-efuses.c | 7 +-- drivers/nvmem/bcm-ocotp.c | 12 ++--- drivers/nvmem/brcm_nvram.c | 10 ++-- drivers/nvmem/core.c | 83 +++++++++++++---------------- drivers/nvmem/imx-iim.c | 6 +-- drivers/nvmem/imx-ocotp-ele.c | 4 +- drivers/nvmem/imx-ocotp-scu.c | 12 ++--- drivers/nvmem/imx-ocotp.c | 10 ++-- drivers/nvmem/jz4780-efuse.c | 7 +-- drivers/nvmem/lan9662-otpc.c | 12 ++--- drivers/nvmem/layerscape-sfp.c | 11 ++-- drivers/nvmem/lpc18xx_eeprom.c | 14 ++--- drivers/nvmem/lpc18xx_otp.c | 6 +-- drivers/nvmem/meson-efuse.c | 22 +++++--- drivers/nvmem/meson-mx-efuse.c | 6 +-- drivers/nvmem/microchip-otpc.c | 6 +-- drivers/nvmem/mtk-efuse.c | 6 +-- drivers/nvmem/mxs-ocotp.c | 7 +-- drivers/nvmem/nintendo-otp.c | 6 +-- drivers/nvmem/qcom-spmi-sdam.c | 12 ++--- drivers/nvmem/qfprom.c | 14 ++--- drivers/nvmem/qoriq-efuse.c | 6 +-- drivers/nvmem/rave-sp-eeprom.c | 18 +++---- drivers/nvmem/rmem.c | 4 +- drivers/nvmem/rockchip-efuse.c | 19 +++---- drivers/nvmem/rockchip-otp.c | 19 +++---- drivers/nvmem/sc27xx-efuse.c | 3 +- drivers/nvmem/sec-qfprom.c | 4 +- drivers/nvmem/snvs_lpgpr.c | 17 +++--- drivers/nvmem/sprd-efuse.c | 8 +-- drivers/nvmem/stm32-bsec-optee-ta.c | 12 ++--- drivers/nvmem/stm32-bsec-optee-ta.h | 20 +++---- drivers/nvmem/stm32-romem.c | 26 ++++----- drivers/nvmem/sunplus-ocotp.c | 4 +- drivers/nvmem/sunxi_sid.c | 18 ++++--- drivers/nvmem/u-boot-env.c | 6 +-- drivers/nvmem/uniphier-efuse.c | 6 +-- drivers/nvmem/vf610-ocotp.c | 7 +-- drivers/nvmem/zynqmp_nvmem.c | 13 ++--- include/linux/nvmem-provider.h | 4 +- 40 files changed, 255 insertions(+), 232 deletions(-) -- 2.45.0.118.g7fe29c98d7-goog _______________________________________________ Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5CA67C25B10 for ; Fri, 10 May 2024 08:30:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=GOalHloT8eh1mnxY4HLkHPX5kWtf1J9/4AUPfUKGJxY=; b=hKU aoKYPkV3f7SwSdIPd0NNgZTrlbnqHGh16rusnHFlluPtI+7sTdkjXDkHkuZGdjcwoYAD7wW4hrZ+/ jHRLgbIXb18I3v0Z0/vQMwXngbcsVGhr1g00yc5azlUoRf6LVc20xA/V1mwtasdbOIvHN5rWqZDsO ihh2I+dxmIk8yf4AkVw0FibpcA4XfUFuo12qN1zccY8y/p6f+nIlZyVYRmah59mtfVswcAIHMMxdE qF/o9spjJRFwrZE+Aq53OlQt66QWOI5q6OLbvmauKca3836G8opgJCTmI+mgN0KXSyPzQxu11CRbU Ce0Mw44Bb6mDhVCppjktcNTxjdpSNhg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5Ldm-00000004VIb-1HTW; Fri, 10 May 2024 08:30:06 +0000 Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s5LdT-00000004VBF-21SJ for linux-arm-kernel@lists.infradead.org; Fri, 10 May 2024 08:30:01 +0000 Received: by mail-yb1-xb49.google.com with SMTP id 3f1490d57ef6-dc6b269686aso2558096276.1 for ; Fri, 10 May 2024 01:29:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1715329776; x=1715934576; darn=lists.infradead.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=g4wIewXaq45bxU5f6OeoxEha1ACMN1rD0f6f5V2V9IgHqKXxr3HPNX5SMNwAUFt/cU KurMXhILeZGIqWGtUnUNH1eJnvB5c6WDmWEIbE+I1A7vRRllJFxyyZI6lQEVi/o6exWA +HYxxXrzt7PNpNXMU4+PeCK9KaXIEQPuLQi0XcLOx2KnoBXH0F+Ulk0k2AraefoZ9uQm IARKU0pj62QcYfHnWI/Bew1tTYoBvNXjivY/lZ2imibDZ9HEBvcnq+eYag97GOa98fkS VS16d/TZ07BWq5MKtEWhzzdDHIKgcdxi86FPcKi4EIoePioIBKxHWKR8/SP3mLWtKjNR J3gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715329776; x=1715934576; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dnr78Drl0hwy8QosBN5FMiEeANWK1Ml2Xi29sDzFrpE=; b=UodBcHP8VvaaISiguNM1JGfhwLDarefXJNEH4r+VvOviL+bB/OS5JjIAGAQeakPtDL oDzPyZO00xc+lc01o9Kz2487rw9bssZqQImUhvYILXuIP0sNZmxbRvGaxTpS2gb29yUo T7A0XDIx4BeTYmcn/8j6cYp1ysltqiMIoL+fobyMlJJEN6yVP8fvkd2j5F1AX+MQMnZz 5ZWW2Tkc4A5GXcDksE4pBcdg0ohBzVitDdEbG5wELSi4fLD1fKE5d7X8GnlsY1eurr4S PrJXQf/cptX2iJaYmfwJO0zYCEuSENmlVQ5sEuYW6LeQOV1ZkZ2mfew+e3djGBNMhI+1 s9zg== X-Forwarded-Encrypted: i=1; AJvYcCWlnRC4ltjd/O/eTywOHpME4zYZ3SslgmrgH0+Qx8ACicah+gLBXwlBRYQaVSA8Na0VVfPSgETV3tEGM8Jvzh1tiIhr674hhbatDWvy7aR0VNIfgZE= X-Gm-Message-State: AOJu0YywytuzoC8LxeCAnJ2jA9P0Qi7GvsOJR1eXEhPpyx4+0XE78vbJ +FQy7K2mUOpg4YmtXRrdxgxuFV5q1mcEo3FkOgK7kUV3L/KHivFyGZOcYKNafmkRVTkiA2P/1me WHff+iwHl2A== X-Google-Smtp-Source: AGHT+IEiknRtBHdrQ2HgiFa5pD74L/Ye3Nv3Q0grhoikyts9vAUMehW+Dt9fd3K3/ZrjmNUP76nhD8GAX7HaoA== X-Received: from joychakr.c.googlers.com ([fda3:e722:ac3:cc00:4f:4b78:c0a8:6ea]) (user=joychakr job=sendgmr) by 2002:a05:6902:c09:b0:de5:5304:3206 with SMTP id 3f1490d57ef6-dee4f52d715mr180759276.11.1715329776091; Fri, 10 May 2024 01:29:36 -0700 (PDT) Date: Fri, 10 May 2024 08:29:28 +0000 Mime-Version: 1.0 X-Mailer: git-send-email 2.45.0.118.g7fe29c98d7-goog Message-ID: <20240510082929.3792559-1-joychakr@google.com> Subject: [PATCH v3 0/1] nvmem: Handle actual amount of data read/written by suppliers From: Joy Chakraborty To: Hector Martin , Sven Peter , Alyssa Rosenzweig , Srinivas Kandagatla , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Vladimir Zapolskiy , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Claudiu Beznea , Matthias Brugger , AngeloGioacchino Del Regno , Bjorn Andersson , Konrad Dybcio , Heiko Stuebner , Orson Zhai , Baolin Wang , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Vincent Shih , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Rafal Milecki , Kunihiko Hayashi , Masami Hiramatsu , Michal Simek Cc: Greg Kroah-Hartman , asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, manugautam@google.com, Joy Chakraborty X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240510_012959_611510_0CB62EC1 X-CRM114-Status: GOOD ( 14.52 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This Patch series stems from discussions in patchset, "[PATCH v2] nvmem: rmem: Fix return value of rmem_read()" (https://lore.kernel.org/all/20240206042408.224138-1-joychakr@google.com/). Where we come across the fact that currently the nvmem suppliers do not actually let the core know how much data has been actually read or written. Instead they are expected to return 0 for success and the core assumes that the amount of data written is equal to what the core has requested. On addition this patchset will also add some guards and checks based on the count of data returned by the nvmem supplier. --- V3 Changes : Fix return value of reg_read in sunxi_sid.c driver --- V2 Changes : Rebase on for-next. --- V1 Changes : Change read/write callback prototype to ssize_t and supplier changes to accomodate the same with core checks and bounds. --- Joy Chakraborty (1): nvmem: Change return type of reg read/write to ssize_t drivers/nvmem/apple-efuses.c | 7 +-- drivers/nvmem/bcm-ocotp.c | 12 ++--- drivers/nvmem/brcm_nvram.c | 10 ++-- drivers/nvmem/core.c | 83 +++++++++++++---------------- drivers/nvmem/imx-iim.c | 6 +-- drivers/nvmem/imx-ocotp-ele.c | 4 +- drivers/nvmem/imx-ocotp-scu.c | 12 ++--- drivers/nvmem/imx-ocotp.c | 10 ++-- drivers/nvmem/jz4780-efuse.c | 7 +-- drivers/nvmem/lan9662-otpc.c | 12 ++--- drivers/nvmem/layerscape-sfp.c | 11 ++-- drivers/nvmem/lpc18xx_eeprom.c | 14 ++--- drivers/nvmem/lpc18xx_otp.c | 6 +-- drivers/nvmem/meson-efuse.c | 22 +++++--- drivers/nvmem/meson-mx-efuse.c | 6 +-- drivers/nvmem/microchip-otpc.c | 6 +-- drivers/nvmem/mtk-efuse.c | 6 +-- drivers/nvmem/mxs-ocotp.c | 7 +-- drivers/nvmem/nintendo-otp.c | 6 +-- drivers/nvmem/qcom-spmi-sdam.c | 12 ++--- drivers/nvmem/qfprom.c | 14 ++--- drivers/nvmem/qoriq-efuse.c | 6 +-- drivers/nvmem/rave-sp-eeprom.c | 18 +++---- drivers/nvmem/rmem.c | 4 +- drivers/nvmem/rockchip-efuse.c | 19 +++---- drivers/nvmem/rockchip-otp.c | 19 +++---- drivers/nvmem/sc27xx-efuse.c | 3 +- drivers/nvmem/sec-qfprom.c | 4 +- drivers/nvmem/snvs_lpgpr.c | 17 +++--- drivers/nvmem/sprd-efuse.c | 8 +-- drivers/nvmem/stm32-bsec-optee-ta.c | 12 ++--- drivers/nvmem/stm32-bsec-optee-ta.h | 20 +++---- drivers/nvmem/stm32-romem.c | 26 ++++----- drivers/nvmem/sunplus-ocotp.c | 4 +- drivers/nvmem/sunxi_sid.c | 18 ++++--- drivers/nvmem/u-boot-env.c | 6 +-- drivers/nvmem/uniphier-efuse.c | 6 +-- drivers/nvmem/vf610-ocotp.c | 7 +-- drivers/nvmem/zynqmp_nvmem.c | 13 ++--- include/linux/nvmem-provider.h | 4 +- 40 files changed, 255 insertions(+), 232 deletions(-) -- 2.45.0.118.g7fe29c98d7-goog _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel