ahci: mmio_base is a virtual address

Don't store it in a u32.

Don't dereference the bus address as if it were a virtual address
(fixes 284231e49a ("ahci: Support splitting of read transactions
into multiple chunks")).

Fixes crash on boot in MPC8641HPCN_36BIT target.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Cc: Vadim Bendebury <vbendeb@chromium.org>
Acked-by: York Sun <yorksun@freescale.com>
This commit is contained in:
Scott Wood 2015-04-17 09:19:01 -05:00 committed by Tom Rini
parent 3907305fb9
commit 9efaca3e84
7 changed files with 16 additions and 15 deletions

View file

@ -151,7 +151,7 @@ struct ahci_probe_ent {
u32 hard_port_no;
u32 host_flags;
u32 host_set_flags;
u32 mmio_base;
void __iomem *mmio_base;
u32 pio_mask;
u32 udma_mask;
u32 flags;
@ -160,7 +160,7 @@ struct ahci_probe_ent {
u32 link_port_map; /*linkup port map*/
};
int ahci_init(u32 base);
int ahci_reset(u32 base);
int ahci_init(void __iomem *base);
int ahci_reset(void __iomem *base);
#endif