From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Evan Quan <evan.quan@amd.com>,
Alex Deucher <alexander.deucher@amd.com>,
Sasha Levin <sashal@kernel.org>,
amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: [PATCH AUTOSEL 5.4 14/38] drm/amd/powerplay: correct Vega20 cached smu feature state
Date: Mon, 24 Aug 2020 12:37:26 -0400 [thread overview]
Message-ID: <20200824163751.606577-14-sashal@kernel.org> (raw)
In-Reply-To: <20200824163751.606577-1-sashal@kernel.org>
From: Evan Quan <evan.quan@amd.com>
[ Upstream commit 266d81d9eed30f4994d76a2b237c63ece062eefe ]
Correct the cached smu feature state on pp_features sysfs
setting.
Signed-off-by: Evan Quan <evan.quan@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
.../drm/amd/powerplay/hwmgr/vega20_hwmgr.c | 38 +++++++++----------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
index f5915308e643a..08b91c31532ba 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
@@ -981,27 +981,15 @@ static int vega20_disable_all_smu_features(struct pp_hwmgr *hwmgr)
{
struct vega20_hwmgr *data =
(struct vega20_hwmgr *)(hwmgr->backend);
- uint64_t features_enabled;
- int i;
- bool enabled;
- int ret = 0;
+ int i, ret = 0;
PP_ASSERT_WITH_CODE((ret = smum_send_msg_to_smc(hwmgr,
PPSMC_MSG_DisableAllSmuFeatures)) == 0,
"[DisableAllSMUFeatures] Failed to disable all smu features!",
return ret);
- ret = vega20_get_enabled_smc_features(hwmgr, &features_enabled);
- PP_ASSERT_WITH_CODE(!ret,
- "[DisableAllSMUFeatures] Failed to get enabled smc features!",
- return ret);
-
- for (i = 0; i < GNLD_FEATURES_MAX; i++) {
- enabled = (features_enabled & data->smu_features[i].smu_feature_bitmap) ?
- true : false;
- data->smu_features[i].enabled = enabled;
- data->smu_features[i].supported = enabled;
- }
+ for (i = 0; i < GNLD_FEATURES_MAX; i++)
+ data->smu_features[i].enabled = 0;
return 0;
}
@@ -3211,10 +3199,11 @@ static int vega20_get_ppfeature_status(struct pp_hwmgr *hwmgr, char *buf)
static int vega20_set_ppfeature_status(struct pp_hwmgr *hwmgr, uint64_t new_ppfeature_masks)
{
- uint64_t features_enabled;
- uint64_t features_to_enable;
- uint64_t features_to_disable;
- int ret = 0;
+ struct vega20_hwmgr *data =
+ (struct vega20_hwmgr *)(hwmgr->backend);
+ uint64_t features_enabled, features_to_enable, features_to_disable;
+ int i, ret = 0;
+ bool enabled;
if (new_ppfeature_masks >= (1ULL << GNLD_FEATURES_MAX))
return -EINVAL;
@@ -3243,6 +3232,17 @@ static int vega20_set_ppfeature_status(struct pp_hwmgr *hwmgr, uint64_t new_ppfe
return ret;
}
+ /* Update the cached feature enablement state */
+ ret = vega20_get_enabled_smc_features(hwmgr, &features_enabled);
+ if (ret)
+ return ret;
+
+ for (i = 0; i < GNLD_FEATURES_MAX; i++) {
+ enabled = (features_enabled & data->smu_features[i].smu_feature_bitmap) ?
+ true : false;
+ data->smu_features[i].enabled = enabled;
+ }
+
return 0;
}
--
2.25.1
next prev parent reply other threads:[~2020-08-24 17:05 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-24 16:37 [PATCH AUTOSEL 5.4 01/38] spi: stm32: clear only asserted irq flags on interrupt Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 02/38] jbd2: make sure jh have b_transaction set in refile/unfile_buffer Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 03/38] ext4: don't BUG on inconsistent journal feature Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 04/38] ext4: handle read only external journal device Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 05/38] jbd2: abort journal if free a async write error metadata buffer Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 06/38] ext4: handle option set by mount flags correctly Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 07/38] ext4: handle error of ext4_setup_system_zone() on remount Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 08/38] ext4: correctly restore system zone info when remount fails Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 09/38] fs: prevent BUG_ON in submit_bh_wbc() Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 10/38] spi: stm32h7: fix race condition at end of transfer Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 11/38] spi: stm32: fix fifo threshold level in case of short transfer Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 12/38] spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 13/38] spi: stm32: always perform registers configuration prior to transfer Sasha Levin
2020-08-24 16:37 ` Sasha Levin [this message]
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 15/38] drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 16/38] drm/amd/display: Switch to immediate mode for updating infopackets Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 17/38] libbpf: Handle GCC built-in types for Arm NEON Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 18/38] netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 19/38] can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect corruptions Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 20/38] ALSA: hda/realtek: Add model alc298-samsung-headphone Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 21/38] s390/cio: add cond_resched() in the slow_eval_known_fn() loop Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 22/38] ASoC: wm8994: Avoid attempts to read unreadable registers Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 23/38] selftests: disable rp_filter for icmp_redirect.sh Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 24/38] scsi: fcoe: Fix I/O path allocation Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 25/38] scsi: ufs: Fix possible infinite loop in ufshcd_hold Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 26/38] scsi: ufs: Improve interrupt handling for shared interrupts Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 27/38] scsi: ufs: Clean up completed request without interrupt notification Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 28/38] scsi: qla2xxx: Fix login timeout Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 29/38] scsi: qla2xxx: Check if FW supports MQ before enabling Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 30/38] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 31/38] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 32/38] macvlan: validate setting of multiple remote source MAC addresses Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 33/38] net: gianfar: Add of_node_put() before goto statement Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 34/38] drm/amdgpu: disable gfxoff for navy_flounder Sasha Levin
2020-08-24 18:25 ` Alex Deucher
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 35/38] Revert "drm/amdgpu: disable gfxoff for navy_flounder" Sasha Levin
2020-08-24 18:25 ` Alex Deucher
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 36/38] powerpc/perf: Fix soft lockups due to missed interrupt accounting Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 37/38] arm64: Move handling of erratum 1418040 into C code Sasha Levin
2020-08-24 16:37 ` [PATCH AUTOSEL 5.4 38/38] arm64: Allow booting of late CPUs affected by erratum 1418040 Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200824163751.606577-14-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=evan.quan@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome