nathanw
ec956cbe3a
Don't enable interrupts while calling trap() if the trapping frame
...
didn't have them enabled either.
Addresses PR port-macppc/29559.
2005-03-04 22:40:32 +00:00
chs
111117ce57
fix two bugs with wiring:
...
(1) in pmap_enter_pv(), we would always mark the header entry wired, even if
the new entry wasn't put there. noticed by Juergen Hannken-Illjes.
(2) in pmap_unwire(), we would never examine the header entry.
noticed by me.
while I'm here, move the counter increment in the pmap_enter() path to be
next to the corresponding PV_WIRE() call so it's more obvious they match.
2005-03-02 09:02:42 +00:00
simonb
6e4737fc77
KNF: put "if (...)" and following statement on separate lines.
2005-02-25 07:09:58 +00:00
briggs
dcfd337d24
pmap_extract(): Only attempt to set '*pap' if pap is non-NULL.
...
PR port-powerpc/29507 from Neil Ludban.
2005-02-22 21:06:56 +00:00
matt
413f4d4de6
Don't clear PCB_FPU/PCB_ALTIVEC when releasing the FPU/AltiVec unit. Add
...
new flags to indicate whether the PCB currently owns the FPU/AltiVec unit.
2005-02-22 02:59:46 +00:00
briggs
6451b0332b
Update to a kcore_hdr_t that is useful for OEA-style CPUs. Adding
...
support for Book-E and other CPUs will require updating this structure
appropriately.
Contributed by Wasabi Systems, Inc.
2005-02-17 02:21:28 +00:00
briggs
7e9ffb8e19
Install spr.h
2005-02-17 02:14:23 +00:00
chs
4d33e8a954
move recursion-detection code inside interrupt-protected region. PR 24254.
2005-02-13 02:03:54 +00:00
matt
4612c7a119
When building kernel for OEA, allow unaligned accesses since OEA
...
processors will deal with them properly.
2005-02-12 00:03:21 +00:00
briggs
d6e37f352e
Keep track of the CPU's current speed (in kHz) in the cpu info structure,
...
if we can get it. May want to expand this in the future to include min
and max speeds for systems where we can adjust the speed.
2005-02-03 14:47:09 +00:00
thorpej
a7ba88252d
Eliminate use of M_HASFCS.
2005-01-30 19:03:23 +00:00
simonb
90d5b03202
Fix a typo in a printf string.
2005-01-27 12:35:53 +00:00
shige
5ed37446b2
Add gpio module.
2005-01-23 19:24:31 +00:00
shige
17dda52768
Add driver for On-chip General Purpose I/O.
2005-01-23 19:22:22 +00:00
simonb
dc5fd1a390
Use lis@h/ori@l instead of lis@ha/addi@l since we may use r0 and addi
...
is one of those funny instructions that treats r0 == 0 when used as the
first arg.
Fixes problems on ibm4xx. Ok'd by matt@.
2005-01-23 00:23:57 +00:00
shige
9704ef243d
Add consinit() and md_consinit funcptr to ibm4xx/machdep.c.
...
Rename consinit() to obs405_consinit() at evbppc/obs405/consinit.c.
Set md_consinit to obs405_consinit() at initppc().
Consinit fuction calls a function stored at md_consinit pointer.
2005-01-21 19:24:11 +00:00
simonb
3df401ce77
Set up last segment descriptor to send an interrupt after that
...
descriptor is transmitted, and bypass existing Tx descriptor reaping
method (for now...).
Fixes problems with bad NFS write performance.
2005-01-21 15:19:09 +00:00
simonb
b4e4cddd17
In emac_txeob_intr():
...
- return 1 if we processed any completed tx packets.
- try to get more packets going by calling emac_start().
2005-01-21 15:15:20 +00:00
matt
5eeb71a595
Add more support for MPC7447A/MPC7448.
2005-01-21 00:58:34 +00:00
matt
9b69be93b4
Add extended BAT block size definitions.
2005-01-21 00:46:23 +00:00
matt
f75acb0839
Add some HID1 definitions and HID0_XBSEN for 7455+ processors.
2005-01-21 00:45:48 +00:00
matt
a59dee22f1
Correct BHTCLR/XAEN definitions.
2005-01-21 00:09:30 +00:00
matt
dcecffc61f
Add MPC7448 and change MPC745x_P macro to deal with it.
2005-01-21 00:04:54 +00:00
matt
c104ee3507
Add entry for MPC7447A
2005-01-20 21:28:47 +00:00
matt
3f8b260589
Add MPC7447A (0x8003)
2005-01-20 21:26:49 +00:00
matt
2201849e4a
Split the hw-dependent powermanglement into its own function and make
...
Idle call that. Add a ci_idlespin function pointer to cpu_info.
Update INIT_CPUINFO to initialize it to a naked 'blr' instruction.
In oea/cpu_subr.c, add cpu_idlespin and make ci_idlespin point to it.
2005-01-19 22:22:56 +00:00
chs
40345beaa3
ibm4xx/pte.h is no more.
2005-01-19 14:46:26 +00:00
simonb
d22ebd9247
White space nit.
2005-01-19 11:41:07 +00:00
simonb
a8164658f1
A more accurate microtime() implementation. Avoids precision
...
errors when the clock frequency doesn't divide nicely in to 10^9.
2005-01-19 00:26:54 +00:00
shige
95b240720a
Arrange some machine-dependent code.
...
- ibm40x_machdep.c: ibm40x specific
. ibm40x_memsize_init
. mem_regions
. other functions are moved to machdep.c or ibm4xx_machdep.c.
- ibm4xx_machdep.c: ibm4xx specific
. ibm4xx_init (moved from ibm40x_machdep.c)
. ibm4xx_install_extint (moved from ibm40x_machdep.c)
. ibm4xx_cpu_startup (moved from ibm40x_machdep.c:ibm4xx_startup)
. ibm4xx_dumpsys
2005-01-18 17:11:25 +00:00
shige
48188681e8
Add ibm4xx family common module.
...
- machine-dependent global variables
- cpu_startup glue
- softnet/softserial (copy from ibm40x_machdep.c)
2005-01-18 16:56:24 +00:00
matt
98b6754e59
Fix problem with unclosed comments
2005-01-17 22:41:23 +00:00
shige
ce880a5946
Remove openbios dependent code from ibm4xx/ibm40x dependent module.
2005-01-17 17:19:36 +00:00
shige
50f317e0f4
Add board properties database code.
2005-01-17 17:13:49 +00:00
shige
0f2e586866
Add openbios-board related modules.
...
- openbios.c
getting board data memory image from openbios.
setting all board data to board properties database.
- board_prop.c
initialize board properties database.
(set/get board properties [macros in ibm4xx/cpu.h])
2005-01-17 16:23:27 +00:00
chs
95c9f4ab0a
add some whitespace.
2005-01-16 23:52:12 +00:00
chs
bfbf7ea9b1
implement pmap_wired_count(). fix some places we would forget to splx().
...
move the parts of pte.h that were used into pmap.c (since they were really
pmap-internal details) and delete ibm4xx/pte.h. other misc cleanup.
2005-01-16 21:35:58 +00:00
shige
49c3c14437
Add externs:
...
- md_device_register (func ptr)
- ibm4xx_device_register (func)
2005-01-13 17:16:33 +00:00
shige
2e87452aa9
Remove device_register, cpu_rootconf functions.
...
These functions are moved to ibm4xx/autoconf.c.
2005-01-13 17:14:36 +00:00
shige
79354dbad0
Add device_register function for all ibm4xx machine.
2005-01-13 17:12:28 +00:00
shige
786539f27b
Add device_register machine-independent-glue.
2005-01-13 17:11:14 +00:00
chs
67402a485f
enable powersave mode on 7450 and family.
...
also, the HID0_DOZE bit in this context doesn't mean "doze",
it's actually "enable extra BATs". add an alias for this bit
and use it as appropriate.
2005-01-11 02:09:54 +00:00
matt
b046d5ecf9
Now that countless UVM bugs have been fixed, enable "topdown" memory
...
allocation by default.
2005-01-10 05:42:09 +00:00
briggs
4137e66929
Allow MSR[POW] off for power saving on 604-era CPUs. From Tim Kelly.
...
XXX -- needs benchmarking
2005-01-07 21:31:04 +00:00
briggs
35a39caef5
Don't attempt to probe the cache with l2cr on 604ev. From Tim Kelly.
2005-01-07 20:41:35 +00:00
chs
ddc6ab738a
drop the big lock in upcallret() like all the other platforms do.
2005-01-03 00:03:25 +00:00
shige
d2306c8cf3
Add functions:
...
- com_opb_cnattach
- com_opb_device_register
2004-12-24 14:55:50 +00:00
shige
eb555844f1
Substitute PPC405_ with PPC_IBM405_.
2004-12-17 16:23:57 +00:00
matt
eb30eca3e3
Add -Wa,-maltivec so that AltiVec instuctions will be recognized.
2004-12-09 22:57:12 +00:00
matt
42e9e00c87
Make MSIZE and MCLSHIFT overrideable in <machine/param.h>
2004-12-09 00:37:54 +00:00