summaryrefslogtreecommitdiffstats
path: root/sys/arm/at91
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-05-15 17:30:16 +0000
committerian <ian@FreeBSD.org>2014-05-15 17:30:16 +0000
commit1e3130abad8238f721742fec6f1344d69dfc799a (patch)
tree02c63d840ed8c9a1ca98f1fd2391c32f3d2be191 /sys/arm/at91
parentfa992863d2953ae935e914366aeafac44ad9d005 (diff)
downloadFreeBSD-src-1e3130abad8238f721742fec6f1344d69dfc799a.zip
FreeBSD-src-1e3130abad8238f721742fec6f1344d69dfc799a.tar.gz
MFC r261423, r261424, r261516, r261513, r261562, r261563, r261564, r261565,
r261596, r261606 Add the imx sdhci controller. Move Open Firmware device root on PowerPC, ARM, and MIPS systems to a sub-node of nexus (ofwbus) rather than direct attach under nexus. This fixes FDT on x86 and will make coexistence with ACPI on ARM systems easier. SPARC is unchanged. Add the missing ')' at end of sentence. Reword it to use a more common idiom. Pass the kernel physical address to initarm through the boot param struct. Make functions only used in vfp.c static, and remove vfp_enable. Fix __syscall on armeb EABI. As it returns a 64-bit value it needs to place 32-bit data in r1, not r0. 64-bit data is already packed correctly. Use abp_physaddr for the physical address over KERNPHYSADDR. This helps us remove the need to load the kernel at a fixed address. Remove references to PHYSADDR where it's used only in debugging output. Dynamically generate the page table. This will allow us to detect the physical address we are loaded at to change the mapping.
Diffstat (limited to 'sys/arm/at91')
-rw-r--r--sys/arm/at91/at91_machdep.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arm/at91/at91_machdep.c b/sys/arm/at91/at91_machdep.c
index ad38410..9e73d0c 100644
--- a/sys/arm/at91/at91_machdep.c
+++ b/sys/arm/at91/at91_machdep.c
@@ -630,7 +630,8 @@ initarm(struct arm_boot_params *abp)
arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL);
pmap_curmaxkvaddr = afterkern + L1_S_SIZE * (KERNEL_PT_KERN_NUM - 1);
- arm_dump_avail_init(memsize, sizeof(dump_avail)/sizeof(dump_avail[0]));
+ arm_dump_avail_init(abp->abp_physaddr, memsize,
+ sizeof(dump_avail)/sizeof(dump_avail[0]));
/* Always use the 256MB of KVA we have available between the kernel and devices */
vm_max_kernel_address = KERNVIRTADDR + (256 << 20);
pmap_bootstrap(freemempos, &kernel_l1pt);
OpenPOWER on IntegriCloud