Amber Lin
b7daed1b62
drm/amdgpu: Aldebaran doesn't use semaphore
...
Simplify all Aldebaran DIDs into one ASIC type.
Signed-off-by: Amber Lin <Amber.Lin@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:41 -04:00
Alex Sierra
07744e9069
drm/amdgpu: UTLC1 RB SDMA timeout on Aldebaran
...
[Why]
This causes infinite retries on the UTCL1 RB, preventing
higher priority RB such as paging RB.
[How]
Set to one the SDMAx_UTLC1_TIMEOUT registers for all SDMAs.
Signed-off-by: Alex Sierra <alex.sierra@amd.com >
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:36 -04:00
Feifei Xu
8081f8faca
drm/amdpgu: add ATOM_DGPU_VRAM_TYPE_HBM2E vram type
...
0x61 is assigned to HBM2E in atom_dgpu_vram_type.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:33 -04:00
Hawking Zhang
44b3253a4b
drm/amdgpu: retire aldebaran gpu_info firmware
...
driver should use the gfx_info atomfirmware interface
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:28 -04:00
Hawking Zhang
7159a36e11
drm/amdgpu: query aldebaran gfx_config through atomfirmware i/f
...
For ASICs that don't support ip discovery feature, query
gfx configuration through atomfirmware interface, rather
than gpu_info firmware.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:22 -04:00
Lijo Lazar
acdd5b72c5
drm/amd/pm: Remove CPU virtual address notification in aldebaran
...
PPSMC_MSG_SetSystemVirtualDramAddrHigh/Low messages are not handled by
PMFW in aldebaran
Signed-off-by: Lijo Lazar <Lijo.Lazar@amd.com >
Reviewed-by: Kenneth Feng <Kenneth.Feng@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:19 -04:00
Lijo Lazar
f1adbe0367
drm/amd/pm: Add support to override pptable id for aldebaran
...
Temporarily force to use BU PPTable defined in VBIOS. Add support to
override PPTable defined by module parameter.Add FW reported version to
kernel log.
Signed-off-by: Lijo Lazar <Lijo.Lazar@amd.com >
Reviewed-by: Kenneth Feng <Kenneth.Feng@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:17 -04:00
Lijo Lazar
8738a82b37
drm/amd/amdgpu: Add smu_pptable module parameter
...
Temporarily add smu_pptable module parameter for aldebaran.This is used
to force soft PPTable use overriding any VBIOS PPTable.
Signed-off-by: Lijo Lazar <Lijo.Lazar@amd.com >
Reviewed-by: Kenneth Feng <kenneth.feng@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:14 -04:00
Lijo Lazar
b1138d5ec0
drm/amd/pm: Add atom_smc_dpm_info_v4_10 for aldebaran
...
Add atom_smc_dpm_info_v4_10 that defines board parameters for aldebaran
Signed-off-by: Lijo Lazar <Lijo.Lazar@amd.com >
Reviewed-by: Kenneth Feng <Kenneth.Feng@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:11 -04:00
Oak Zeng
be566196be
drm/amdgpu: Don't do FB resize under A+A config
...
Disable PCIe BAR resizing on A+A config. It's not needed because we won't use the
PCIe BAR, but it breaks the PCI BAR configuration with the current SBIOS.
Error message of FB BAR resize failure under A+A:
[ 154.913731] [drm:amdgpu_device_resize_fb_bar [amdgpu]] *ERROR* Problem resizing BAR0 (-22).
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com >
Reviewed-by: Amber Lin <Amber.Lin@amd.com >
Reviewed-by: Felix Kuehling <Felix.kuehling@amd.com >
Reviewed-by: Christian Koenig <Christian.Koenig@amd.com >
Tested-by: Amber Lin <Amber.Lin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:06 -04:00
Oak Zeng
9d0af8b4de
drm/amdgpu: pre-map device buffer as cached for A+A config
...
For A+A configuration, device memory is supposed to be mapped as
cachable from CPU side. For kernel pre-map gpu device memory using
ioremap_cache
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com >
Reviewed-by: Christian Koenig <Christian.Koenig@amd.com >
Tested-by: Amber Lin <Amber.Lin@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:03 -04:00
Feifei Xu
e5a8321350
drm/amdgpu: update atom_firmware_info_v3_4 (v2)
...
v1: Added some pspbl parameters
v2: fix fallthrough issue
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Reviewed-by: Lazar Lijo <Lijo.Lazar@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:56:01 -04:00
Feifei Xu
3d01361ce8
drm/amd/pm:add aldebaran support for getting bootup values
...
for SMU config.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:56 -04:00
Hawking Zhang
d477c5aaec
drm/amdgpu: disallow use semaphore on aldebaran
...
shall revisit the change later
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:53 -04:00
Hawking Zhang
10c71e6cc9
drm/amdgpu: switch to vega20 ih block for aldebaran
...
replace vega10 ih block with vega20 ih block for
aldebaran.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com >
Reviewed-by: Dennis Li <Dennis.Li@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:51 -04:00
Hawking Zhang
eed4bbd388
drm/amdgpu: correct IH_CHICKEN programming for aldebaran
...
For aldebaran, psp firmware won't program IH_CHICKEN.
it now depends on driver to program it properly so
either bus address or gpu virtual address is just
working for ih ring.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Acked-by: Christian König <christian.koenig@amd.com >
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com >
Reviewed-by: Dennis Li <Dennis.Li@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:48 -04:00
Hawking Zhang
b45589b837
drm/amdgpu: add mmhub error status query callback for aldebaran
...
The callback will be invoked to query mmea error
status when needed.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:46 -04:00
Hawking Zhang
27ad2ca667
drm/amdgpu: add mmhub ras error reset callback for aldebaran
...
The callback will be invoked to reset mmhub ras error
counters when needed.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:44 -04:00
Hawking Zhang
cbb84e7aab
drm/amdgpu: add mmhub ras error query callback for aldebaran
...
The callback will be invoked to harvest all kinds
of mmhub ras error
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:41 -04:00
Hawking Zhang
f5f0e4a0d5
drm/amdgpu: add sdma ras error reset callback for aldebaran
...
The callback will be invoked to reset sdma ras error
counters when needed.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:39 -04:00
Hawking Zhang
b2459840cf
drm/amdgpu: add sdma ras error query callback for aldebaran
...
The callback will be invoked to harvest all kinds
of sdma ras error
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:36 -04:00
Hawking Zhang
2fdb91a25e
drm/amdgpu: add sdma v4_4 ras function
...
sdma ras function is the main structure to support
sdma ras on aldebaran. the patch initializes late_init
late_fini callbacks.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Dennis Li<Dennis.Li@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:31 -04:00
Hawking Zhang
a6d9d6ab84
drm/amdgpu: apply sdma golden settings for aldebaran
...
perform one-time initialization for sdma registers
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:28 -04:00
Hawking Zhang
3de60d961c
drm/amdgpu: use physical_node_id to calculate aper_base
...
Similar as xgmi connected gpu nodes, physical_node_id
* segment_size should be used to calculate the offset
of aper_base.
The asic type check is redundant. once physical_node_id
and segment_size are initialized, it should be count
on.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:20 -04:00
Hawking Zhang
063a1e8341
drm/amdgpu: skip gds ras workaround for aldebaran
...
there won't be any gds useage in either kernel or
pm4 anymore for aldebaran.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:14 -04:00
Hawking Zhang
18c3d45a9a
drm/amdgpu: init gds for aldebaran
...
aldebaran removed gds internal memory for atomic usage.
it only supports gws opcode in kernel like barrier,
semaphore.etc. there won't be usage of gds in either
kernel or pm4 packet. max_wave_id should also be marked
as deprecated for aldebaran.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:10 -04:00
Feifei Xu
147d082d38
drm/amdgpu: correct vram_info for HBM2E
...
correct atom_vram_info_header_v2_6 and its vram_module.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:55:05 -04:00
Hawking Zhang
f31c4a11b4
drm/amdgpu: support get_vram_info atomfirmware i/f for aldebaran
...
Query vram_type, channel_num, channel_width
information through atomfirmware i/f
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:59 -04:00
Feifei Xu
ea9097d921
drm/amdgpu:return true for mode1_reset_support on aldebaran
...
Will remove once validation finished.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:54 -04:00
Feifei Xu
5c03e5843e
drm/amdgpu:add smu mode1/2 support for aldebaran
...
Use MSG_GfxDriverReset for mode reset and retire MSG_Mode1Reset.
Centralize soc15_asic_mode1_reset() and nv_asic_mode1_reset()functions.
Add mode2_reset_is_support() for smu->ppt_funcs.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:49 -04:00
Feifei Xu
4c2e5f513e
drm/amdgpu: Add DID for aldebaran
...
Add 0x7408,0x740C,0x740F in pciidlist.
Signed-off-by: Feifei Xu <Feifei.Xu@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:45 -04:00
John Clements
0d2c1855d5
drm/amdgpu: added support for register list loading (v2)
...
call host to psp cmd to load reg list
v2: update to latest interface (Alex)
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: John Clements <john.clements@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:41 -04:00
John Clements
b2aa382ae7
drm/amdgpu: added register list driver ctx (v2)
...
updated psp bin parsing and load register list
v2: update to latest interface (Alex)
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: John Clements <john.clements@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:38 -04:00
John Clements
d74decc412
drm/amdgpu: updated host to psp mailbox cmd (v2)
...
added host to psp cmd for register list
v2: update to new interface (Alex)
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: John Clements <john.clements@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:35 -04:00
Hawking Zhang
115ba9a9fd
drm/amdgpu: declare smuio v13_0 callbacks as static
...
fix -Wmissing-protoypes warning
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Likun Gao <Likun.Gao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:32 -04:00
Hawking Zhang
4f668d3d31
drm/amdgpu: initialize external rev_id for aldebaran
...
add exteranal rev_id for aldebaran
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:28 -04:00
Kevin Wang
e747ca0a4e
drm/amdgpu: declare sdma firmware binary file for aldebaran
...
declare sdma firmware binary file for aldebaran
Signed-off-by: Kevin Wang <kevin1.wang@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:26 -04:00
Kevin Wang
c05d1c4015
drm/amd/swsmu: add aldebaran smu13 ip support (v3)
...
Add initial swSMU support.
v1: add smu13 ip support for aldebaran asic (Kevin/Kenneth)
v2: switch to thm/mp v13_0 ip headers (Hawking)
v3: squash in updates (Alex)
Signed-off-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Kenneth Feng <kenneth.feng@amd.com >
Reviewed-by: Kenneth Feng <kenneth.feng@amd.com >
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:24 -04:00
Kevin Wang
465c437aac
drm/amd/swsmu: add aldebaran smu driver if header (v2)
...
add aldebaran smu13 driver if header
v2: squash in updates
Signed-off-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Kenneth Feng <Kenneth.feng@amd.com >
Reviewed-by: Kenneth Feng <kenneth.feng@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:20 -04:00
Hawking Zhang
cf7821a84a
drm/amdgpu: comments out vcn/jpeg ip blocks for aldebaran
...
vcn fw front door loading is not functional. comments
out vcn/jpeg ip blocks so people can load amdgpu driver
without specify ip_mask module parameter.
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Reviewed-by: James Zhu <James.Zhu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:17 -04:00
Hawking Zhang
fbaa30d87f
drm/amdgpu: initialize ta firmware for aldebaran
...
only xgmi ta is supported at this stage
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Kevin Wang <kevin1.wang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:15 -04:00
Kevin Wang
5be50a8fd8
drm/amdgpu: switch to use reg distance member for mmhub v1_7
...
switch to use register distance member for mmhub v1_7
instead of hardcode
Signed-off-by: Kevin Wang <kevin1.wang@amd.com >
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:09 -04:00
Oak Zeng
4da999cdfc
drm/amdgpu: Clean up mmhub functions for aldebaran
...
Add more function pointers to amdgpu_mmhub_funcs. ASIC specific
implementation of most mmhub functions are called from a general
function pointer, instead of calling different function for
different ASIC.
V2: Split patch into upstreamable and aldebaran
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:05 -04:00
James Zhu
f8db121e47
drm/amdgpu/jpeg: enable JPEG on aldebaran
...
enable JPEG on aldebaran
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:54:02 -04:00
James Zhu
9f386fd3aa
drm/amdgpu/vcn: enable VCN on aldebaran
...
Enable VCN on aldebaran
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:58 -04:00
James Zhu
7ce293570c
drm/amdgpu/nbio: add aldebaran support
...
Aldebaran has a new mmBIF_MMSCH1_DOORBELL_RANGE setting.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:52 -04:00
Hawking Zhang
eb28f02b1e
drm/amdgpu: skip MEC2_JT initialization for aldebaran
...
MEC2_JT is not supported
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com >
Reviewed-by: Le Ma <Le.Ma@amd.com >
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:47 -04:00
Eric Huang
72b4db0f58
drm/amdgpu: new cache coherence change for Aldebaran
...
To support new cache coherence HW on A+A platform mainly in KFD.
Signed-off-by: Eric Huang <jinhuieric.huang@amd.com >
Reviewed-by: Oak Zeng <Oak.Zeng@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:37 -04:00
James Zhu
ff6885ac47
drm/amdgpu/jpeg2.6: Add jpeg2.6 support
...
Aldebaran is using jpeg2.6, and the main change is jpeg2.6 using
AMDGPU_MMHUB_0, and jpeg2.5 using AMDGPU_MMHUB_1.
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:34 -04:00
Yong Zhao
7ffe72385a
drm/amdgpu: Fix an omission when adding Aldebaran support
...
Aldebaran should be the same as Arcturus in the PTE SNOOPED bit handling.
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2021-03-23 22:53:28 -04:00