From nobody Fri Jul 24 21:27:13 2026 Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.48]) (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 2EA9338E5C8 for ; Fri, 24 Jul 2026 10:32:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784889176; cv=none; b=KRR1wA8lHCtSMBbcAGLYbCwryVK1HJNjBEROzblP8iWx4viMC95BtKDJtifllBszsLfBnfqV68uUX7p+ZvqfmS3e2EDUi6j6VQtPjTvjyf57mgcEgItHGWR4yPsRclzCiiFB0uh+s1wZev8R7twt6fmfRtCsaJaSneX5fcnmTYg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784889176; c=relaxed/simple; bh=TBSOkNtzRXSxdGYzT4AwHRiOVyQe0XhtljC5AsbnXkk=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=BcgSnUbHl2jzihNN5wiQ4XWeu/IckSpZlTDWY4QXuxuTr3bL3N5IXk4SBcmnqfUHauzOTj6q2iZ3zzFSHOaLHbCz/5KuRf9WAMv516WXD/GlkPX6TVwLZrGwTUZ+dxBdFI8nxEj44wLS/BxlBoX3cUj/HCIWZl25Og/UoWQngSs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CsCsBKaf; arc=none smtp.client-ip=209.85.216.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CsCsBKaf" Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-38a0c7e841fso267065a91.2 for ; Fri, 24 Jul 2026 03:32:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784889174; x=1785493974; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=N8npoSQwGZPTgzk4AH5B8xCVhVfiDXlculKLn8/8fTI=; b=CsCsBKafNk7462w7+BsC3bjHo+2jdqR/aqP1/xmWEnoKOlAVJc75Su29k5ivMFJ5OP iniCFQ27Md3MZfJj+UULdRsHam66WT011ChiBzudCFsI/PuVZIJYXJRfnc1OAvH42dEI 1/6D+xioP+BsoY/by67uPVEqnbaAf7bma9OO9p4MziB/iEKWcEXvrTR8YYFHQ/sHlboj cUoYMvjZv1/wd+3+2XzD0a59UyXcQXEmlJxz6N5M/1fRo+WEPs9td3ug4iG9vFvajVHG ah+jTMvm7z+QBRrgAYjUYBlPS7W+q+XHTpAJH2kSPVhQRxg2h9Jwt/gJhBApCEeepBlg NuGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784889174; x=1785493974; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=N8npoSQwGZPTgzk4AH5B8xCVhVfiDXlculKLn8/8fTI=; b=iwp5OEC8SXzhPGq0nfPTMj40YZA9hrBCs18RDdXESvRDDC13Beg2DCRjYktVIlA43i HZihYvMkPWTdiEKVW1SzDLy8KFzvn8AQoMaygTzQPRRGlgHTymFdj3u5C2lji0R6Lp2r pQEyGfeh19VAvFnjKFL3AlDT8b10scMbaBvqp58/K9bUC8oe7NGmPpzzmRquLW+QOCQr WEx3Cazuyh1i2nCX0rbR9/oujadc6NiCC6tWSMaxNbABaa6eCrnVEIzg6K6RIpE+cvST 9LdyiaU0mKVF/cs9PYgaYaDh8OJ6b8sptjoVWuIKc1uejvQId6b00xbcAmIC9Shi2G0E EcLA== X-Forwarded-Encrypted: i=1; AHgh+Rp49RDec6ykvOOSqZilO2FIFupT4CXW+7CXMMirPUxjVc6EpedRKansIwnWQmXaV/EEcJu4IGYMSliSzww=@vger.kernel.org X-Gm-Message-State: AOJu0YxPxTlOG+kyit3nPkqJ06kBN+CQDxGF8wyKiIUk+PWN4OeQejLF Pd6I/9a2CpirLkcELnvBF/cGSF0tivhf/h5HYydKNstcLBck/VBohdjq X-Gm-Gg: AR+sD13iZuiw99Irs9Il7JpM7NqDQc2jpSKg7yUoooFqYEN+gIKySWgISvJBc49EV7l Fi6z9FkyLRDIFjvupXnQQj21VPbLaxJQHkQB/fYVui3Uz/VNFxQtGlgaZvqelAJ5AfL1vN07iy6 ILB2h9HeMN/PFdxQ/lCL2WNSM/xjszE0fTIPG/wtAW7oNX37EP6bIAset/PhYRH4e3Bfcsk/AUi 83cpw/rWIwPh1eKAN4pYzWu2Gp63wBNQ+7CUe3gjuYYCGhyoxJtjJytGWmkf3GuEljvRAemN4xR 9OnM5jDO3yaMc1iPD4Dwzk9XD0Olj2QJWAxgqoSAMywkHVRHL2wvWFjAJLXu+iEeoJvaH13L6Rl Kj7EEuKgznrM13hob2y3WGnhdnTMZh4CfFKD9oT1XuM061asM3YPslJzFnwJWFgenOL99KO0cAX z873O4zpsmK6PkVzJ8SXSOLvplGZx+MGYANiOYxxRnyHaSRz/VNI2PNUyPzN694aACsPkFnLV2O 5K/oil1FZUvtck/QViD0qFuJpuwYnDX X-Received: by 2002:a17:90b:53c4:b0:38d:ef48:b04 with SMTP id 98e67ed59e1d1-38ec657558amr7473973a91.10.1784889174381; Fri, 24 Jul 2026 03:32:54 -0700 (PDT) Received: from phuc-desktop.. ([183.91.15.56]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-38f039b1d3asm1212413a91.2.2026.07.24.03.32.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Jul 2026 03:32:54 -0700 (PDT) From: phucduc.bui@gmail.com To: Andrzej Hajda , Neil Armstrong Cc: Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, bui duc phuc Subject: [RFC PATCH] drm/bridge: adv7511: use cache_only during power down Date: Fri, 24 Jul 2026 17:32:35 +0700 Message-ID: <20260724103235.57577-1-phucduc.bui@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: bui duc phuc adv7511_power_on() and adv7511_power_off() restore the register state using regcache_mark_dirty() and regcache_sync(), but nothing prevents other code paths from accessing the registers over I2C while the chip is powered down. Wrap the power-down window with regcache_cache_only() to prevent direct register accesses. It is unclear whether this is necessary or whether it could affect the CEC or packet sub-regmaps, so send this as an RFC. Signed-off-by: bui duc phuc --- This RFC is related to the following patch series: https://lore.kernel.org/all/20260724100803.50169-1-phucduc.bui@gmail.com/ drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm= /bridge/adv7511/adv7511_drv.c index 3e470366bce0..49da1806797b 100644 --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c @@ -323,6 +323,7 @@ static void adv7511_power_off(struct adv7511 *adv7511) __adv7511_power_off(adv7511); if (adv7511->info->has_dsi) adv7533_dsi_power_off(adv7511); + regcache_cache_only(adv7511->regmap, true); adv7511->powered =3D false; } =20 @@ -374,11 +375,13 @@ static void adv7511_power_on(struct adv7511 *adv7511) /* * Most of the registers are reset during power down or when HPD is low. */ + regcache_cache_only(adv7511->regmap, false); ret =3D regcache_sync(adv7511->regmap); if (ret) { dev_err(&adv7511->i2c_main->dev, "Failed to sync register cache: %d\n", ret); __adv7511_power_off(adv7511); + regcache_cache_only(adv7511->regmap, true); return; } =20 --=20 2.43.0