artulab
projects
/
openbsd
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
739bb31
)
drm/amd/display: avoid doing vm_init multiple time
author
jsg
<jsg@openbsd.org>
Mon, 5 Sep 2022 14:22:58 +0000
(14:22 +0000)
committer
jsg
<jsg@openbsd.org>
Mon, 5 Sep 2022 14:22:58 +0000
(14:22 +0000)
From Charlene Liu
85dd24ff77c15f5fc0e16bc3f288f5d1ac93e02b
in linux 5.15.y/5.15.65
5544a7b5a07480192eb5fd3536462faed2c21528
in mainline linux
sys/dev/pci/drm/amd/display/dc/dcn21/dcn21_hubbub.c
patch
|
blob
|
history
diff --git
a/sys/dev/pci/drm/amd/display/dc/dcn21/dcn21_hubbub.c
b/sys/dev/pci/drm/amd/display/dc/dcn21/dcn21_hubbub.c
index
36044cb
..
1c0f56d
100644
(file)
--- a/
sys/dev/pci/drm/amd/display/dc/dcn21/dcn21_hubbub.c
+++ b/
sys/dev/pci/drm/amd/display/dc/dcn21/dcn21_hubbub.c
@@
-67,9
+67,15
@@
static uint32_t convert_and_clamp(
void dcn21_dchvm_init(struct hubbub *hubbub)
{
struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub);
- uint32_t riommu_active;
+ uint32_t riommu_active
, prefetch_done
;
int i;
+ REG_GET(DCHVM_RIOMMU_STAT0, HOSTVM_PREFETCH_DONE, &prefetch_done);
+
+ if (prefetch_done) {
+ hubbub->riommu_active = true;
+ return;
+ }
//Init DCHVM block
REG_UPDATE(DCHVM_CTRL0, HOSTVM_INIT_REQ, 1);