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 ABCB5C10F16 for ; Wed, 24 Apr 2024 07:43:05 +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=ict926vRz1obh35Vkhv+TK3q14XaaIZWAXnUY0zi0DM=; b=QUq lx2bpGEp08wrHsIiIxyUUutUXNNpmKccGhNZnzhOPdojZThRRfS6nyDDgM5Bh3frv4X5DesF9m2FU FW9mzmjFvem7F4VZbHsK1zTv3HLod4crTWZYIRhn4Hz6yDK0ZRRXRm9szPQsN0hk01Pn3SYe22AMa p0OJod4wcpncDea+coSVi6nx580/KdZ+ejtK9wRIc1AQFxITLwiVQMdL0g/BDszJjB0qXMe1P+dKN kubovD+ywgcHT6PPa+4iGwJJmqNQRMas51AfdrQlVtN+cuMmvDxm9Kroywr+ttiE3fsMaWko+qWAI OCyxX1q+Tc67Ur2+ysy56oFjBsND5tQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rzXHO-000000038dV-1nbN; Wed, 24 Apr 2024 07:42:58 +0000 Received: from mail-yw1-x114a.google.com ([2607:f8b0:4864:20::114a]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rzXHI-000000038Zk-46t4 for linux-amlogic@lists.infradead.org; Wed, 24 Apr 2024 07:42:56 +0000 Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-6156b93c768so122436797b3.1 for ; Wed, 24 Apr 2024 00:42:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1713944571; x=1714549371; darn=lists.infradead.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=Zl0sYd+valIIqLNedoYvnicwykqmWgTtyjDljuZmiec=; b=gEQ7NAVFDnd3CvCtLBp0k3q0OL43lOd3JInFRSbaFKIFRxXxZu74f+6Y9aaOfOfdHh q9pXCPgU6XGuN6dYJ9EENDK4RQJ32Sw2CwVwC0O2vWsN1qEHP/5MABd/bbKcioy1mtYB dum41xkbnuyUGABTJlvwjF0OxHRJAiHFnAyP4zm3voPUrTXwUZoXRdrFQ5Yr7e9COyE2 92W1dzS4wiYEB7uRt16HEGKtNMYRYlU8YTXjxHlPUWj5zgAicBeKH35ka3PmEIHriP0+ Ggn2OdtqnuCSDomISV8HgKg8Fr7ot2i/kp9svdt3YWMMs3BTEoEfli2/VO7CATwWPnrF vZyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713944571; x=1714549371; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Zl0sYd+valIIqLNedoYvnicwykqmWgTtyjDljuZmiec=; b=HEGoOIKe4zOIsoJiDDXWkgN99oWyzM5WXXnprpW9Tr4v473iKeE0kG85LwDwbvlw8f CZg5kOPLJUTzUJVF6GVN1IyW2h5D95aSLvIomDIM8E59F8PZJEkWQwpDjqnz9xaPsY4v 9QDJP+7QKw7RiRQ4ZVkfTxP7ffPgDeNDcLeVvVzl0qFTX25bVTQzYbdksGnGWvh5k4SG ukxSGY4AxBjf52b9oudue9O4rNrgjkH+uUlK40yziBXPdmSQp07xoZZDha7Uy9ktCMdc xKt+h9sa9kmB8Vsra8OvkZT6T6EVtkel8On27Wk8eNvXoWNjIZrws/2+Et9PminBUPMo 2C4w== X-Forwarded-Encrypted: i=1; AJvYcCU+149jilPz+EsuXi4NkAMyooChNn15YXTTvysSnj1w2R20dDTqdNkwW+9jawbwfPDt9EIJBc35T5KC1nB4ZeTHSuSTfaLMUhJjE+IQtN3aY+U= X-Gm-Message-State: AOJu0Yy/uFiBmCC10vPu+d03lDu1lvJ3q5Tkq6pnlyIb+QwFo7KWXtSV EpbR877AJttO16EHH4c7m+dsrgagRYo/60t4OraaCro2Uf1C1XdOLDYWOzhRsaAFm9Bpr4xZB/2 T/2KoUe/8SQ== X-Google-Smtp-Source: AGHT+IHAgakRN1GMcYnGCFXgcp0S6jDEiv/2+gY/KRM4h43j6n7j458O2RZcU7HXGWBkkYoEbxUyhX44RKGCPA== X-Received: from joychakr.c.googlers.com ([fda3:e722:ac3:cc00:4f:4b78:c0a8:6ea]) (user=joychakr job=sendgmr) by 2002:a05:6902:154f:b0:de5:1f88:ae4e with SMTP id r15-20020a056902154f00b00de51f88ae4emr651015ybu.2.1713944570760; Wed, 24 Apr 2024 00:42:50 -0700 (PDT) Date: Wed, 24 Apr 2024 07:42:41 +0000 Mime-Version: 1.0 X-Mailer: git-send-email 2.44.0.769.g3c40516874-goog Message-ID: <20240424074242.519895-1-joychakr@google.com> Subject: [PATCH v2 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-20240424_004253_075825_419A2EFE X-CRM114-Status: GOOD ( 12.85 ) 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. --- 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 | 15 +++--- 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, 253 insertions(+), 231 deletions(-) -- 2.44.0.769.g3c40516874-goog _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic