diff options
author | Tom Rini <trini@konsulko.com> | 2021-07-29 12:10:23 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-07-29 12:10:55 -0400 |
commit | 15f7e0dc01d8a851fb1bfbf0e47eab5b67ed26b3 (patch) | |
tree | a05518590771cfaff996f35856b9d9d8edfa7221 /drivers/misc/swap_case.c | |
parent | 38436abd5e58044eccddbcd7ec3610a9104e86b6 (diff) | |
parent | 62b27a561c2868d95445905ad554297e43cc0f2b (diff) |
Merge branch '2021-07-28-assorted-fixes'
- Assorted bugfixes
Diffstat (limited to 'drivers/misc/swap_case.c')
-rw-r--r-- | drivers/misc/swap_case.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/misc/swap_case.c b/drivers/misc/swap_case.c index 3cbc8f37ec..7093ad1cd4 100644 --- a/drivers/misc/swap_case.c +++ b/drivers/misc/swap_case.c @@ -302,7 +302,6 @@ static int sandbox_swap_case_write_io(struct udevice *dev, unsigned int addr, } static int pci_ea_bar2_magic = PCI_EA_BAR2_MAGIC; -static int pci_ea_bar4_magic = PCI_EA_BAR4_MAGIC; static int sandbox_swap_case_map_physmem(struct udevice *dev, phys_addr_t addr, unsigned long *lenp, void **ptrp) @@ -332,12 +331,22 @@ static int sandbox_swap_case_map_physmem(struct udevice *dev, *ptrp = &pci_ea_bar2_magic; *lenp = PCI_CAP_EA_SIZE_LO; break; +#ifdef CONFIG_HOST_64BIT + /* + * This cannot be work on a 32-bit machine since *lenp is ulong + * which is 32-bits, but it needs to have a 64-bit value + * assigned + */ case (phys_addr_t)((PCI_CAP_EA_BASE_HI4 << 32) | - PCI_CAP_EA_BASE_LO4): + PCI_CAP_EA_BASE_LO4): { + static int pci_ea_bar4_magic = PCI_EA_BAR4_MAGIC; + *ptrp = &pci_ea_bar4_magic; *lenp = (PCI_CAP_EA_SIZE_HI << 32) | PCI_CAP_EA_SIZE_LO; break; + } +#endif default: return -ENOENT; } |