Commit Graph

65 Commits

Author SHA1 Message Date
perry
5f1c88d70d Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 20:06:46 +00:00
briggs
c9d34b2987 Add an offset to the I/O port translations. This allows IQ80321
and others to avoid providing PCI I/O space at address 0.
Iyonix, however, needs to provide PCI I/O space at 0.
The others require I/O space to be offset in part due to a bug
work-around in wm(4) which requires that I/O space access be used
to reset the controllers.  If I/O space is mapped at zero, the card
claims, but ignores, the transactions, and the controller doesn't
get reset properly and can't then be used.
2005-12-15 01:44:00 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
yamt
bc21da4cfb bus_dmamem_map: honour BUS_DMA_NOWAIT. noted by Manuel Bouyer.
bus_space_map: always do NOWAIT allocation as it used to be before yamt-km.

we have too many copies!
2005-11-24 13:08:32 +00:00
drochner
44bf0a7ee2 s/locdesc_t/int/g 2005-08-26 13:19:34 +00:00
drochner
996c273eda adaptions to config_search() change, and minor autoconf fixes, mostly from Havard Eidnes 2005-06-30 17:03:51 +00:00
yamt
6b2d8b66a4 merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
2005-04-01 11:59:21 +00:00
rearnsha
575ff76f8f Add bus-space write-multi-2 and read-multi-2 methods. 2005-02-19 16:55:11 +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
simonb
9bc855a931 s/the the/the/ (only in sources that aren't regularly imported from
elsewhere).
2004-04-23 02:58:27 +00:00
wiz
d20841bb64 Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
abs
7b5d232918 Small fixed to tense in comment. 2003-12-17 22:03:24 +00:00
briggs
5513f6b2e8 Make PCI host/slave detection work for the iq31244 as well as the iq80321. 2003-12-04 07:02:18 +00:00
briggs
06ea4a681d Don't assume that we are the PCI host. Actually check, and make sure that
we set things up so that we can run either as a PCI host or as a PCI slave
(working within the PCI BARs that the system BIOS has configured for us).
2003-09-12 04:39:59 +00:00
lukem
08716eae82 __KERNEL_RCSID() 2003-07-15 00:24:37 +00:00
thorpej
bd370c9c04 Give every obio implementation a size and width locator. 2003-06-16 17:40:49 +00:00
thorpej
998f8a71ed Add an optional "width" locator to the obio bus, specifying the
bus width of the device.
2003-06-15 19:03:46 +00:00
thorpej
05d2fb4399 Use the new pmap_devmap facility in the on-board device mapping code. 2003-06-15 18:43:48 +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
9843692f24 Correct interrupt mapping when a device with a PCI-PCI bridge is
plugged into the PCI-X slot.
2003-05-31 22:35:04 +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
thorpej
fb149b56a8 Move the 7-segment display definitions into the C file. 2003-05-14 19:46:39 +00:00
thorpej
bbba90a2fb Don't expose KERNEL_TEXT_BASE outside of board-specific code. This gives
individual board start-up code more flexibility about where the kernel
starts in the kernel address space.
2003-05-03 18:25:28 +00:00
thorpej
aae7e372b7 Reduce differences between ARM32_NEW_VM_LAYOUT and not; always pass
the start and end of the kernel managed virtual address space to
pmap_bootstrap() in the new pmap.
2003-05-03 03:49:03 +00:00
thorpej
1dff12252d Remove old pmap support for platforms which have fully switched over. 2003-05-03 03:29:06 +00:00
thorpej
4eeee795e8 Eliminate PTE_BASE and the PT-PT completely in the ARM32_PMAP_NEW case.
Also in the ARM32_PMAP_NEW case, reclaim the USPACE-bytes of wasted space
at the top of the user address that hasn't been needed for a very very
long time.
2003-05-02 23:22:33 +00:00
thorpej
b4e3c89c38 Bump kernel PTs to 4 (the max we can really have with the old VM
layout) to accomodate large ramdisks.  Set boothowto if BOOTHOWTO
is defined.
2003-04-30 18:12:03 +00:00
thorpej
b43b1645a2 Use aprint*(). 2003-04-29 01:07:30 +00:00
briggs
ed751b6340 Attach com to kgdb if both KGDB and com are defined. 2003-04-28 01:56:44 +00:00
ragge
69a66687f8 Call ksyms_init() instead of ddb_init() in case of
NKSYMS || defined(DDB) || defined(LKM)
2003-04-26 11:05:05 +00:00
thorpej
49c00b1d84 Use high vectors on IQ80321 and IQ80310. 2003-04-22 14:09:46 +00:00
scw
5c0b008779 Don't use ARM32_NEW_VM_LAYOUT or initarm_common() for now. It's not
quite ready for prime-time on evbarm.
2003-04-19 08:18:12 +00:00
scw
98d49ded24 Add support for ARM32_PMAP_NEW and ARM32_NEW_VM_LAYOUT to the iq80321 port. 2003-04-18 12:01:32 +00:00
thorpej
dd9bc74460 Use PAGE_SIZE rather than NBPG. 2003-04-02 03:39:59 +00:00
briggs
17d8938e06 Go back to using BAR2 instead of BAR3 for inbound access to SDRAM. 2003-02-06 03:17:49 +00:00
briggs
ecc07a2e36 Use iwin[3] instead of iwin[2] for RAM access and leave iwin[2] unused. 2003-01-23 03:56:45 +00:00
briggs
147ab60754 Enable a few more bus_space functions.
If a region is outside the regular obio space in obio_bs_map(), create
mappings for it.
2003-01-02 23:04:08 +00:00
thorpej
1132348b98 Use aprint_normal() for cfprint routines. 2003-01-01 01:24:19 +00:00
bjh21
d599df9587 Continue the " - . - 8" purge. Specifically:
add	rd, pc, #foo - . - 8		->	adr	rd, foo
ldr	rd, [pc, #foo - . - 8]		->	ldr	rd, foo

Also, when saving the return address for a function pointer call, use
"mov lr, pc" just before the call unless the return address is somewhere
other than just after the call site.

Finally, a few obvious little micro-optimisations like using LDR directly
rather than ADR followed by LDR, and loading directly into PC rather than
bouncing via R0.
2002-10-14 22:32:50 +00:00
thorpej
1a5a7fe7b7 Use indirect configuration for on-board devices (i.e. those things
attached to "obio") on the IQ80310 and IQ80321.  It makes more sense
to do it this way for this type of system (the goal being to encapsulate
as much information about the board as possible into one file).
2002-10-03 20:14:58 +00:00
thorpej
dd14964387 Fix script-o. 2002-10-03 01:29:30 +00:00
thorpej
c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
thorpej
9a711d6985 Declare all cfattach structures const. 2002-09-27 20:29:02 +00:00
provos
0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej
6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej
d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00