diff options
| author | Helge Deller <deller@gmx.de> | 2025-10-09 23:33:34 +0200 |
|---|---|---|
| committer | Helge Deller <deller@gmx.de> | 2025-10-09 23:45:04 +0200 |
| commit | 44ac7f5c6d4c7fd62784bb2700245dbc4ac7e102 (patch) | |
| tree | d17b230d2691521d38317f9f37b76129494e27a1 | |
| parent | 610cb23bcc75bcd9fead3e41cbd867cccd0eb229 (diff) | |
parisc: Firmware: Fix returned path for PDC_MODULE_FIND on older machines
Older machines (like my 715/64) don't correctly initialize the
device path when returning from the PDC_MODULE_FIND firmware call.
Work around that shortcoming by initializing the path with the
known values.
Signed-off-by: Helge Deller <deller@gmx.de>
| -rw-r--r-- | arch/parisc/kernel/firmware.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/parisc/kernel/firmware.c b/arch/parisc/kernel/firmware.c index c69f6d5946e9..042343492a28 100644 --- a/arch/parisc/kernel/firmware.c +++ b/arch/parisc/kernel/firmware.c @@ -464,7 +464,8 @@ int pdc_system_map_find_mods(struct pdc_system_map_mod_info *pdc_mod_info, unsigned long flags; spin_lock_irqsave(&pdc_lock, flags); - retval = mem_pdc_call(PDC_SYSTEM_MAP, PDC_FIND_MODULE, __pa(pdc_result), + memcpy(pdc_result2, mod_path, sizeof(*mod_path)); + retval = mem_pdc_call(PDC_SYSTEM_MAP, PDC_FIND_MODULE, __pa(pdc_result), __pa(pdc_result2), mod_index); convert_to_wide(pdc_result); memcpy(pdc_mod_info, pdc_result, sizeof(*pdc_mod_info)); |
