From nobody Thu Nov 14 06:46:43 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1705999762275300.6349578036941; Tue, 23 Jan 2024 00:49:22 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rSCSg-0001Qp-3T; Tue, 23 Jan 2024 03:48:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rSCSc-0001O7-PU; Tue, 23 Jan 2024 03:48:46 -0500 Received: from isrv.corpit.ru ([86.62.121.231]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rSCSb-0004ul-1e; Tue, 23 Jan 2024 03:48:46 -0500 Received: from tsrv.corpit.ru (tsrv.tls.msk.ru [192.168.177.2]) by isrv.corpit.ru (Postfix) with ESMTP id D244A46673; Tue, 23 Jan 2024 11:49:11 +0300 (MSK) Received: from tls.msk.ru (mjt.wg.tls.msk.ru [192.168.177.130]) by tsrv.corpit.ru (Postfix) with SMTP id 95979699F1; Tue, 23 Jan 2024 11:48:31 +0300 (MSK) Received: (nullmailer pid 3828117 invoked by uid 1000); Tue, 23 Jan 2024 08:48:31 -0000 From: Michael Tokarev To: qemu-devel@nongnu.org Cc: qemu-stable@nongnu.org, Gerd Hoffmann , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Michael Tokarev Subject: [Stable-7.2.9 14/20] hw/pflash: refactor pflash_data_write() Date: Tue, 23 Jan 2024 11:48:24 +0300 Message-Id: <20240123084831.3828060-6-mjt@tls.msk.ru> X-Mailer: git-send-email 2.39.2 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=86.62.121.231; envelope-from=mjt@tls.msk.ru; helo=isrv.corpit.ru X-Spam_score_int: -68 X-Spam_score: -6.9 X-Spam_bar: ------ X-Spam_report: (-6.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZM-MESSAGEID: 1705999766160100004 From: Gerd Hoffmann Move the offset calculation, do it once at the start of the function and let the 'p' variable point directly to the memory location which should be updated. This makes it simpler to update other buffers than pfl->storage in an upcoming patch. No functional change. Signed-off-by: Gerd Hoffmann Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-ID: <20240108160900.104835-2-kraxel@redhat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 (cherry picked from commit 3b14a555fdb627ac091559ef5931c887d06590d8) Signed-off-by: Michael Tokarev diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c index 0cbc2fb4cb..c250214944 100644 --- a/hw/block/pflash_cfi01.c +++ b/hw/block/pflash_cfi01.c @@ -404,33 +404,35 @@ static void pflash_update(PFlashCFI01 *pfl, int offse= t, static inline void pflash_data_write(PFlashCFI01 *pfl, hwaddr offset, uint32_t value, int width, int be) { - uint8_t *p =3D pfl->storage; + uint8_t *p; =20 trace_pflash_data_write(pfl->name, offset, width, value, pfl->counter); + p =3D pfl->storage + offset; + switch (width) { case 1: - p[offset] =3D value; + p[0] =3D value; break; case 2: if (be) { - p[offset] =3D value >> 8; - p[offset + 1] =3D value; + p[0] =3D value >> 8; + p[1] =3D value; } else { - p[offset] =3D value; - p[offset + 1] =3D value >> 8; + p[0] =3D value; + p[1] =3D value >> 8; } break; case 4: if (be) { - p[offset] =3D value >> 24; - p[offset + 1] =3D value >> 16; - p[offset + 2] =3D value >> 8; - p[offset + 3] =3D value; + p[0] =3D value >> 24; + p[1] =3D value >> 16; + p[2] =3D value >> 8; + p[3] =3D value; } else { - p[offset] =3D value; - p[offset + 1] =3D value >> 8; - p[offset + 2] =3D value >> 16; - p[offset + 3] =3D value >> 24; + p[0] =3D value; + p[1] =3D value >> 8; + p[2] =3D value >> 16; + p[3] =3D value >> 24; } break; } --=20 2.39.2