diff options
author | andrew <andrew@FreeBSD.org> | 2012-09-23 03:46:03 +0000 |
---|---|---|
committer | andrew <andrew@FreeBSD.org> | 2012-09-23 03:46:03 +0000 |
commit | dd6a23c4f5fa55e20c9f42dccf0148a82c3210ac (patch) | |
tree | 104d5a982f719dbec7477f1544fda5ad02444006 /sys/arm/broadcom | |
parent | d9ebf06192583d13a8f9b61c12451be1e98c3984 (diff) | |
download | FreeBSD-src-dd6a23c4f5fa55e20c9f42dccf0148a82c3210ac.zip FreeBSD-src-dd6a23c4f5fa55e20c9f42dccf0148a82c3210ac.tar.gz |
Pull out the SoC specific parts of initarm into separate functions
Diffstat (limited to 'sys/arm/broadcom')
-rw-r--r-- | sys/arm/broadcom/bcm2835/bcm2835_machdep.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_machdep.c b/sys/arm/broadcom/bcm2835/bcm2835_machdep.c index 0865dcc..6726265 100644 --- a/sys/arm/broadcom/bcm2835/bcm2835_machdep.c +++ b/sys/arm/broadcom/bcm2835/bcm2835_machdep.c @@ -344,7 +344,7 @@ initarm(struct arm_boot_params *abp) while(1); /* Platform-specific initialisation */ - pmap_bootstrap_lastaddr = DEVMAP_BOOTSTRAP_MAP_START - ARM_NOCACHE_KVA_SIZE; + pmap_bootstrap_lastaddr = initarm_lastaddr(); pcpu0_init(); @@ -484,6 +484,8 @@ initarm(struct arm_boot_params *abp) */ OF_interpret("perform-fixup", 0); + initarm_gpio_init(); + cninit(); physmem = memsize / PAGE_SIZE; @@ -495,6 +497,8 @@ initarm(struct arm_boot_params *abp) print_kernel_section_addr(); print_kenv(); + initarm_late_init(); + /* * Pages were allocated during the secondary bootstrap for the * stacks for different CPU modes. @@ -547,6 +551,23 @@ initarm(struct arm_boot_params *abp) sizeof(struct pcb))); } +vm_offset_t +initarm_lastaddr(void) +{ + + return (DEVMAP_BOOTSTRAP_MAP_START - ARM_NOCACHE_KVA_SIZE); +} + +void +initarm_gpio_init(void) +{ +} + +void +initarm_late_init(void) +{ +} + #define FDT_DEVMAP_MAX (2) // FIXME static struct pmap_devmap fdt_devmap[FDT_DEVMAP_MAX] = { { 0, 0, 0, 0, 0, } |