diff options
author | ray <ray@FreeBSD.org> | 2013-03-18 15:18:55 +0000 |
---|---|---|
committer | ray <ray@FreeBSD.org> | 2013-03-18 15:18:55 +0000 |
commit | 5f339017dc07b801ac6a4adcf667eb4fdcb0d408 (patch) | |
tree | 859e57920ab8bdf55d6052da0e47a88967cdff53 /sys/dev/fdt/fdt_common.c | |
parent | c94762cd4acb50268d6fa39316f9480a1fdf9326 (diff) | |
download | FreeBSD-src-5f339017dc07b801ac6a4adcf667eb4fdcb0d408.zip FreeBSD-src-5f339017dc07b801ac6a4adcf667eb4fdcb0d408.tar.gz |
o Switch to use physical addresses in rman for FDT.
o Remove vtophys used to translate virtual address to physical in case rman carry virtual.
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'sys/dev/fdt/fdt_common.c')
-rw-r--r-- | sys/dev/fdt/fdt_common.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index e1913c1..e953051 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -421,12 +421,12 @@ fdt_regsize(phandle_t node, u_long *base, u_long *size) int fdt_reg_to_rl(phandle_t node, struct resource_list *rl) { - u_long start, end, count; + u_long count; pcell_t *reg, *regptr; pcell_t addr_cells, size_cells; int tuple_size, tuples; int i, rv; - bus_space_handle_t vaddr; + bus_space_handle_t start, end; long busaddr, bussize; if (fdt_addrsize_cells(OF_parent(node), &addr_cells, &size_cells) != 0) @@ -457,14 +457,12 @@ fdt_reg_to_rl(phandle_t node, struct resource_list *rl) /* Calculate address range relative to base. */ start += busaddr; - if (bus_space_map(fdtbus_bs_tag, start, count, 0, &vaddr) != 0) - panic("Couldn't map the device memory"); - end = vaddr + count - 1; + end = start + count - 1; - debugf("reg addr start = %lx, end = %lx, count = %lx\n", vaddr, + debugf("reg addr start = %lx, end = %lx, count = %lx\n", start, end, count); - resource_list_add(rl, SYS_RES_MEMORY, i, vaddr, end, + resource_list_add(rl, SYS_RES_MEMORY, i, start, end, count); } rv = 0; |