Commit Graph

97 Commits

Author SHA1 Message Date
matt
213e0bd398 <arm/locore.h> fallout (fixes some include ordering errors) 2013-08-18 15:58:19 +00:00
matt
7f5fa457dc Convert to unified syntax 2013-08-12 17:41:51 +00:00
skrll
5c97965224 Add support for the ARM Integrator/CP from Sergio López.
The code hasn't been tested on real hardware, but INTEGRATOR_CP config
is useful for QEMU which supports it.
2013-02-19 10:57:09 +00:00
matt
ee6cde04ff Don't use an asm in pmap_activate to update the TTBR, use cpu_setttb instead
but add a second argument to it to indicate whether the TLB/caches need to be
flushed.  Default cortex to pmap_needs_fixup = 1.  But check the MMFR3 field
to see if the fixed can be skipped.
Use a cf_flag bit 0 to indicate whether the A9 L2 cache should disable (bit 0 = 1)
or enabeld (bit = 0).

With these changes, the A9 MMU can use traverse caches to do MMU tablewalks
Also, make sure all memory has the shareable bit for the A9.
2012-09-22 00:33:36 +00:00
matt
a0e9deaefe Remove bounce buffer support since there is now generic bounce buffer support 2012-09-18 14:42:19 +00:00
matt
543f108c31 Fix pci_conf_interrupt issues 2012-09-07 04:32:03 +00:00
matt
1bf0c8b153 Fix pci_conf_interrupt lossage. 2012-09-07 03:06:05 +00:00
matt
83d36728df Move the standard definitions of the {UND,IRQ,FIQ,ABT}_STACK_SIZE to
<arm32/machdep.h>
Move the extern for cpu_reset_address to the same file.
Add cpu_reset_address_paddr.
Kill cpu_reset_v4_MMU_disable.
if cpu_reset_address is NULL, then the MMU will be disabled.
2012-08-16 18:22:37 +00:00
matt
a039bd91a6 Fix more -fno-common fallout.
Move more variables to common locations.
2012-07-29 00:07:06 +00:00
skrll
4c5a9380ec Add support for the PL011 to plcom. Pull across a bunch of fixes from
com(4) while I'm here and do some other tidyup.

Tested on a RaspberryPi.

PL010 not tested.
2012-07-25 07:26:17 +00:00
dyoung
fea15f47f1 #include <sys/bus.h> instead of <machine/bus.h>. 2011-07-01 20:36:42 +00:00
wiz
4cbd24b23f dependant -> dependent 2011-06-30 20:09:15 +00:00
matt
497ddd31b9 Add RCSID when needed.
Don't include pmap.h or pte.h, include "assym.h" instead.
Use assym.h provided values.
2011-01-31 06:28:02 +00:00
uebayasi
4e5f5b66bd Fix DEBUG kernel build. 2010-11-04 12:16:15 +00:00
uebayasi
998f9b1597 Use cpu_* prefix to call cpu_* functions (setttb() -> cpu_setttb()); no
functional changes.
2009-12-26 16:01:23 +00:00
uebayasi
cb96e85ab2 Garbage collect an unused global, vm_offset_t pagetables_start. 2009-12-26 15:47:14 +00:00
rmind
3f18fe8123 - Use uvm_lwp_setuarea() instead of directly setting address to lwp_t::l_addr.
- Replace most remaining uses of l_addr with uvm_lwp_getuarea() or lwp_getpcb().
- Amend assembly in ports where it accesses PCB via struct user.
- Rename L_ADDR to L_PCB in few places.  Reduce sys/user.h inclusions.
2009-11-27 03:23:03 +00:00
matt
11af2f9cfa Kill proc0paddr. Use lwp0.l_addr instead. 2009-11-26 00:19:11 +00:00
matt
b2a95bab1e Remove all declarations of physmem from sys/arch. Add an include of
<sys/systm.h> to the one file that did not already contain it.
This now means that physmem can be changed by updating systm.h and uvm_page.c
(excluding fixing printfs)
2009-08-11 17:04:14 +00:00
martin
719a906ef5 As discussed on tech-kern: mutex_init is too heavyweight for early bootstrap
phases, so move the initialization of the ksyms mutex back into main via
a function called ksyms_init. Rename the existing (but quite different)
ksyms_init* variations into ksyms_addsyms_elf() and ksyms_addsyms_explicit()
and adapt machdep code accordingly.
2008-11-30 18:21:31 +00:00
ad
0efea177e3 Remove LKMs and switch to the module framework, pass 1.
Proposed on tech-kern@.
2008-11-12 12:35:50 +00:00
dyoung
94d985722a It is not appropriate to call pmf_system_shutdown(9) from
doshutdownhooks(9): shutdown hooks registered by shutdownhook_establish(9)
expect to be called with interrupts disabled, but shutdown hooks
registered with pmf_device_register1(9) expect to be called with
interrupts enabled.  So I have made two changes:

1 Do not call pmf_system_shutdown() from doshutdownhooks().  Instead,
change every call to doshutdownhooks() to a call to doshutdownhooks()
followed by a call to pmf_system_shutdown().  No functional change
is intended by this change.

2 Make i386 re-enable interrupts briefly while it calls
pmf_system_shutdown().  I leave it to others either to fix the
other ports, or to factor out some MI shutdown code, as joerg@
suggests, and fix that.  Note that a functional change *is* intended
by this change.

I hope that this patch will stop us from flip-flopping between
calling doshutdownhooks() and pmf_system_shutdown() sometimes with
and sometimes without interrupts enabled.
2008-11-11 06:46:40 +00:00
matt
825088eda6 Merge kernel changes in matt-armv6 to HEAD. 2008-04-27 18:58:43 +00:00
chris
131e68c2e1 Remove arm support for IPKDB.
It hasn't worked since arm was broken out from arm32 in Jan 2001, and
no-one has noticed or cared to fix it.
2008-01-19 13:11:09 +00:00
matt
1f1847fbab Use uint8_t * instead of void */char * for ptr arithmetic. 2007-03-05 08:37:38 +00:00
christos
53524e44ef Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
mrg
b6779d7cc2 in initarm(), initialise kernel_l1pt.pv_va as well as kernel_l1pt.pv_pa. 2006-05-17 04:22:46 +00:00
perry
2d65de2479 bare asm -> __asm 2005-12-24 22:45:33 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
rearnsha
2de4086f52 Enable use of the CM1136J-s core module on the Integrator. 2005-06-03 15:56:49 +00:00
rearnsha
4987034e09 Fix the v6 boot check: A '6' in the architecture field really means
Architecture v5TEJ.
2005-05-25 09:20:33 +00:00
rearnsha
c28a42708d Add a couple of sanity checks in case someone tries to boot the kernel
on a CM board that we can't support.  In essence that means any board
without an MMU.  For now also fault v6 based CPUs since the kernel
doesn't know how to handle these yet.
2005-05-21 11:46:56 +00:00
abs
964859d895 Fix comments regarding configration bounaries 2004-12-12 21:03:06 +00:00
abs
5958dd944e Fix comments slighly 2004-12-12 20:42:53 +00:00
rearnsha
951ec8627f Don't use vector_page before it's been initialized. 2004-08-07 11:20:53 +00:00
wiz
d20841bb64 Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
rearnsha
3a05158011 Remove include of ifpga/irqhandler.h. 2003-09-06 12:58:48 +00:00
rearnsha
256da36a1c Switch to using generic soft interrupts. 2003-09-06 11:31:20 +00:00
rearnsha
7c9aacc774 Add bouncing support 2003-09-06 11:12:53 +00:00
rearnsha
a25a2641d9 General cleanups of the bootstrap code 2003-09-06 10:57:12 +00:00
rearnsha
b867034038 When an Integrator board has less than 256M of SDRAM fitted, the
memory that is "obscured" by the SSRAM is visible at a wrapped address.
So we can use the full amount of SDRAM in almost all cases.
2003-09-06 10:28:26 +00:00
rearnsha
15f5c8f7db Remove a verbose-boot message that kills the bootstrap (since the
console port mapping has just been moved).
2003-09-06 10:21:19 +00:00
rearnsha
0663dd6d22 The third argument to pmap_map_chunk is the pa not the va. 2003-09-06 10:18:07 +00:00
lukem
08716eae82 __KERNEL_RCSID() 2003-07-15 00:24:37 +00:00
thorpej
87d5bba5b3 Replace the ad-hoc "section mapping table" for static device mappings
with a more generic "devmap" structure that can also handle mappings
made with large and small pages.  Add new pmap routines to enter these
mappings during bootstrap (and "remember" the devmap), and routines to
look up the static mappings once the kernel is running.
2003-06-15 17:45:21 +00:00
thorpej
0eff671820 Also pass a type argument to comcnattach() and com_kgdb_attach().
comspeed() (and thus cominit()) may need this information.
2003-06-14 17:01:06 +00:00
thorpej
d5bcde54a7 Move KERNEL_VM_SIZE into the C files where its used. 2003-05-22 05:47:04 +00:00
thorpej
361d0454ce Move KERNEL_VM_BASE inside where it is used (it won't be there for long). 2003-05-21 22:48:20 +00:00
thorpej
55f89430cf Decrease the verbosity level unless VERBOSE_INIT_ARM is defiend. 2003-05-17 23:46:59 +00:00
he
4e26b71f48 Remove declaration of unused local variable: kernel_ptpt. 2003-05-05 13:29:44 +00:00