Commit Graph

1770 Commits

Author SHA1 Message Date
phx
3817671c1d Fixed typo: PPC_OEA64_BIRDGE -> PPC_OEA64_BRIDGE 2010-01-28 12:37:45 +00:00
mrg
43c8973ab2 document powerpc ddb commands. PR#38307. 2010-01-23 01:32:06 +00:00
martin
f9e1815aaf Unify the name of the device property to hold a MAC address - there was
no clear majority for either "mac-addr" vs. "mac-address", but a quick
gallup poll among developers selected the latter.
2010-01-22 08:56:04 +00:00
macallan
efa2da50d8 pass some OF properties as device properties for network devices
namely local-mac-address and shared-pins needed by gem
2010-01-20 16:36:55 +00:00
pooka
10fe49d72c Redefine bpf linkage through an always present op vector, i.e.
#if NBPFILTER is no longer required in the client.  This change
doesn't yet add support for loading bpf as a module, since drivers
can register before bpf is attached.  However, callers of bpf can
now be modularized.

Dynamically loadable bpf could probably be done fairly easily with
coordination from the stub driver and the real driver by registering
attachments in the stub before the real driver is loaded and doing
a handoff.  ... and I'm not going to ponder the depths of unload
here.

Tested with i386/MONOLITHIC, modified MONOLITHIC without bpf and rump.
2010-01-19 22:06:18 +00:00
jmmv
a762eed1dd Define kobj_machdep and module_init_md empty functions so that powerpc
kernels (at least macppc) with 'options MODULAR' can be built.
2010-01-18 23:35:51 +00:00
phx
f189752c2a Heed modeldata.ranges_offset while constructing the ranges bitmap. 2010-01-17 16:47:17 +00:00
mbalmer
2603a89351 One semicolon only (;; -> ;) 2010-01-05 13:20:29 +00:00
matt
0a8b38422e Add PRIx{P,V}{ADDR,SIZE}, PRIu{P,V}SIZE, and PRIxREGISTER{,32,64} for all
(except where they will be added via merge).  These should be used to print
{p,v}{addr,size}_t and register*_t as appropriate.
2009-12-11 05:52:03 +00:00
matt
6a9e4e8eeb Change u_long to vaddr_t/vsize_t in exec code where appropriate (mostly
involves setregs and vmcmds).  Should result in no code differences.
2009-12-10 14:13:48 +00:00
rmind
e9f7af26e6 Rename L_ADDR to L_PCB and amend some comments accordingly. 2009-12-10 05:10:00 +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
rmind
891259c1af Use lwp_getpcb() on mips, powerpc and sh3, clean from struct user usage. 2009-11-21 17:40:27 +00:00
skrll
0ed80c5100 Use elf/external.h from new binutils.
XXX do we need a src/tools/compat/elf.h?
2009-11-07 17:56:14 +00:00
cegger
9480c51b04 Add a flags argument to pmap_kenter_pa(9).
Patch showed on tech-kern@ http://mail-index.netbsd.org/tech-kern/2009/11/04/msg006434.html
No objections.
2009-11-07 07:27:40 +00:00
rmind
5f45928b22 Provide cpu_lwp_free* stubs in vax and powerpc.
Reported by <he>.
2009-10-24 20:03:56 +00:00
snj
0c15144ae1 Drop 3rd and 4th clauses. Approved by thomas@ (copyright holder). 2009-10-21 21:57:39 +00:00
rmind
40cf6f3659 Remove uarea swap-out functionality:
- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code.  Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.
2009-10-21 21:11:57 +00:00
dyoung
dadc08813b Declare genppc_isa_detach_hook(). 2009-08-20 14:21:12 +00:00
dyoung
fc51180b89 genppc_isa_detach_hook() needs two arguments, the first an
isa_chipset_tag_t.
2009-08-19 15:02:47 +00:00
dyoung
65d8a87204 Define genppc_isa_detach_hook() and isa_dmadestroy(). 2009-08-19 14:44:48 +00:00
nisimura
6d35cad5db - Have pic_mpcsoc.c to adapt variations of Moto/Freescale OpenPIC
compliant interrupt controllers.  Mostly the refrain of pic_openpic.c
and shall be useful for 85xx/86xx/QorIQ and Tundra product lines.
2009-08-19 06:22:54 +00:00
thorpej
97a2657a66 Add a real API for testing if a page is a managed page, and adjust callers
to stop relying on vm_physseg_find() for this purpose.
2009-08-18 18:06:53 +00:00
matt
209a0b42e3 Include <sys/exec_aout.h> explicitly instead of relying on <sys/exec.h> to
do it for us.
2009-08-15 23:44:57 +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
rmind
585d607d92 Fix few more l_pflag and LP_OWEUPC confusions. 2009-07-29 17:45:39 +00:00
nisimura
0c9a82b249 protect C constructs from assembler source inclusion. 2009-07-21 07:08:57 +00:00
martin
ced2993fec Do not use the same trampoline for cpu_setfunc and cpu_lwp_fork, the
latter does a lot more work.
2009-06-07 23:21:26 +00:00
phx
b6a174c94b MSGBUFADDR creates a msgbuf at a fixed address, usually defined by the port's
config file.
The use of MSGBUGADDR was already prepared in powerpc/oea/pmap.c years ago,
but was never used and missing powerpc/oea/oea_machdep.c. The option will
be used by port amigappc.
2009-06-07 13:37:29 +00:00
skrll
e03976623a Add TLS relocation definitions. 2009-05-30 05:56:52 +00:00
he
db991ccec7 Follow up the changed prototype of pmap_enter(), flag from int to u_int. 2009-05-11 16:09:24 +00:00
cegger
1d89a182fb change pmap flags argument from int to u_int.
discussed with christos@ on source-changes-d@
2009-04-21 21:29:58 +00:00
he
fa1e83de92 Define _NOREGNAMES before including <machine/asm.h> so that the
assembler doesn't get confused.
2009-04-13 11:56:35 +00:00
he
b8ed03a053 Add the include of compat/darwin/darwin_types.h, so that this builds
again with COMPAT_DARWIN defined.  Fix from KIYOHARA Takashi.
2009-04-13 11:54:58 +00:00
cegger
c363a9cb62 bzero -> memset 2009-03-18 16:00:08 +00:00
cegger
df7f595ecd Ansify function definitions w/o arguments. Generated with sed. 2009-03-18 10:22:21 +00:00
dsl
82357f6d42 ANSIfy another 1261 function definitions.
The only ones left in sys are beyond by sed script!
(or in sys/dist or sys/external)
Mostly they have function pointer parameters.
2009-03-14 21:04:01 +00:00
dsl
454af1c0e8 Change about 4500 of the K&R function definitions to ANSI ones.
There are still about 1600 left, but they have ',' or /* ... */
in the actual variable definitions - which my awk script doesn't handle.
There are also many that need () -> (void).
(The script does handle misordered arguments.)
2009-03-14 15:35:58 +00:00
dsl
02cdf4d2c8 Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
2009-03-14 14:45:51 +00:00
joerg
f5b0fec0e0 Remove SHMMAXPGS from all kernel configs. Dynamically compute the
initial limit as 1/4 of the physical memory. Ensure the limit is at
least 1024 pages, the old default on most platforms.
2009-03-06 20:31:46 +00:00
cube
ec543a2ce5 Convert the recently introduced awk command to retrieve the value of the
option MODULAR to using %MODULAR%.  While it is now possible to only
request the new version in the affected Makefiles, it is made mandatory for
everybody because I just fixed a bug in config(1) that would not make it
fail in the case of a syntax error in the Makefile template.
2009-02-15 01:58:01 +00:00
apb
6c4fc39a9f Now that "options MODULAR" is handled via defflag, the Makefile
generated by config(1) in the kernel compile directory no longer
contains IDENT=-DMODULAR.  Instead, there's an opt_modular.h file that
might or might not contain "#define MODULAR 1".

Adapt to this by adding an OPT_MODULAR variable to relevant Makefiles,
set via an awk script that parses opt_modular.h.
2009-02-14 16:53:55 +00:00
apb
0cc72e51ac Use "defopt MODULAR" in sys/conf/files, and #include "opt_modular.h"
in all kernel sources that use the MODULAR option.
Proposed in tech-kern on 18 Jan 2009.
2009-02-13 22:41:00 +00:00
cegger
b4fe900840 adaption for making kgdb_dev a dev_t 2009-01-11 23:20:37 +00:00
christos
461a86f9bd merge christos-time_t 2009-01-11 02:45:45 +00:00
tsutsui
befea92737 Account ci->ci_idepth on calling handlers in ext_intr() as well as
powerpc/pic/intr.c:pic_handle_intr().  Closes PR port-evbppc/40288.

Should be pulled up to netbsd-5.
2009-01-04 15:34:18 +00:00
he
e7afb03eca Wrap #include "opt_ppcarch.h" in #ifdef _KERNEL_OPT, to allow
lib/librump to build for evbppc.
2008-12-28 10:23:11 +00:00
njoly
992269c5c4 Fix remaining archs (arm, luna68k, powerpc and sh3) that were still
using a proc argument instead of an expected lwp for ADDUPROF macro.

ok by christos.
2008-12-19 15:20:10 +00:00
christos
9a5d3f2817 replace bitmask_snprintf(9) with snprintb(3) 2008-12-16 22:35:21 +00:00
pooka
58742275be rcs id police 2008-12-11 19:33:12 +00:00
pooka
ea4b11acd2 Since oea pmap.c is #included many times, put kernel_pmap_ptr into
its own source module to avoid multiple initialized data definitions.
2008-12-11 19:30:14 +00:00
pooka
ee352f3d33 Make kernel_pmap_ptr a const. Requested by steve_martin. 2008-12-10 11:10:17 +00:00
pooka
29d439f898 Make pmap_kernel() a MI macro for struct pmap *kernel_pmap_ptr,
which is now the "API" provided by the pmap module.  pmap_kernel()
remains as the syntactic sugar.

Bonus cosmetics round: move all the pmap_t pointer typedefs into
uvm_pmap.h.

Thanks to Greg Oster for providing cpu muscle for doing test builds.
2008-12-09 20:45:44 +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
he
593aa4da31 The sendsig_sigcontext() here should most probably be sendsig_siginfo().
Based on hints from other developers.
2008-11-21 20:22:30 +00:00
he
c1aefc5a53 Wrap includes of opt* headers in _KERNEL_OPT. 2008-11-21 20:21:47 +00:00
he
005320c975 Wrap includes of opt* headers with _KERNEL_OPT.
Adapt sendsig_sigcontext() to the new prototype, and compute sig
and code patterned after the sparc code.
2008-11-21 20:21:12 +00:00
he
93a4c91cdf Wrap include of opt* header with _KERNEL_OPT. 2008-11-21 20:17:51 +00:00
cegger
3db4119e84 build fix: include <sys/buf.h> 2008-11-19 23:04:34 +00:00
cegger
bac918b7dd remove duplicate prototype which now conflicts with the prototype in <sys/signalvar.h> 2008-11-19 22:59:56 +00:00
ad
92ce8c6a3d Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
2008-11-19 18:35:57 +00:00
ad
5b57d1bcce LKM -> MODULAR 2008-11-13 10:51:23 +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
skrll
5ee0a07537 Typo in comment. 2008-10-29 07:31:18 +00:00
mrg
dc23831816 make this build again after revivesa. ok'd by gimpy.
XXX: i think this will work but i haven't actually run any SA apps.
it does compile and link and the kernel boots just fine.
2008-10-25 09:10:07 +00:00
ad
d1b01a3709 Provide a small inline wrapper for sysent::sy_call() and use it to store
the active syscall description in struct lwp. To be used at some future
point to prevent unloading of modules that provide syscalls, while the
syscalls are in use.
2008-10-21 12:16:58 +00:00
wrstuden
08a6eca79e Bring back saframe. Noted by Robert Swindells. 2008-10-16 04:02:32 +00:00
wrstuden
fc7511b00e Merge wrstuden-revivesa into HEAD. 2008-10-15 06:51:17 +00:00
macallan
8abf7fc8d9 Some fixes to the TAU support code:
- set the ADC time according to clock speed, not some magic number
- move some mtspr()s which we really only need to do once
- make our envsys_data_t static, this should fix PR 39411
2008-10-14 22:54:22 +00:00
chs
1f98baea49 in cpu_hatch(), set PIR when the current value is not what we need
rather than only when it's zero.
2008-10-04 17:20:06 +00:00
macallan
45e9b5a6c8 If we have to guess wether the console keyboard is USB or ADB check if the
PMU actually has ADB support.
2008-09-25 14:47:54 +00:00
macallan
cabde6837d recognize ATY,DDparent as display device so the rest of the code can find
the nodes for each individual display
2008-09-25 14:44:51 +00:00
macallan
42501f6294 properly 'probe' the MPC7400's L1 caches - before we'd fall through to
setting both to PAGE_SIZE
2008-09-23 13:58:59 +00:00
martin
feab9a1220 Fix machine_arch vs. machine confusion, PR 39436.
OK: garbled
2008-09-01 19:03:44 +00:00
matt
91d4704c12 Update <machine/ieeefp.h> to use the C99 FE_* definitions instead of the
NetBSD defined ones.  Redefine the NetBSD ones in terms of the C99 ones.
Step 1 to having <fenv.h>
2008-08-05 16:47:41 +00:00
matt
c54e2d5527 Fix bug where SRR1 (%r2) was being accidently misused and modifed
in place of segreg (%r1).

From Konrad Karpowicz <konradk at pacomp dot pl>.
2008-08-01 16:32:03 +00:00
tsutsui
ce1887dc69 - if SDA is set to low during DIR(INPUT) in gpiic_set_bits(),
store the SDA status into softc and enable it once after
  DIR() is changed to OUTPUT in gpiic_set_dir()
- remove "Read in output mode" warning in gpiic_read_bits()
  since it's a vaild operation (to read SCL during SDA output is low)

Tested by kiyohara@ on OPENBLOCKS266.
2008-07-12 02:04:07 +00:00
kiyohara
71d621af19 Initialize the member sc_callout before call callout_reset(). 2008-07-08 17:32:56 +00:00
rmind
160268aca6 Remove proc_representative_lwp(), use a simple LIST_FIRST() instead.
OK by <ad>.
2008-07-02 19:49:58 +00:00
ad
b94f79f0e8 Replce exec_map with a pool. Proposed on tech-kern@, reviewed by chs@. 2008-07-02 17:28:54 +00:00
gmcgarry
8cb6efd4df Add stdargs support for pcc. 2008-06-21 00:56:39 +00:00
ad
06c343ac94 vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both. 2008-06-04 12:41:40 +00:00
ad
48ced055d4 pci_intr_setattr(), allows PCI interrupts to be marked MPSAFE on x86, and
other platforms if the code is added.

pci_intr_map(...)
pci_intr_setattr(pc, ih, PCI_INTR_MPSAFE, 1);
pci_intr_establish(...)
2008-05-30 19:26:35 +00:00
mrg
c2b95373bf remove clause #3 from my license where there are no other
copyright holders involved.
2008-05-29 14:51:25 +00:00
chs
dfe6756df5 add IBM970MP (used in the last model of powermac G5). 2008-05-25 16:00:52 +00:00
chs
6740bb5440 enable profiling of assembly functions. 2008-05-25 15:56:11 +00:00
phx
436768b562 Better call it HID0_BTCD, as in prep, mvmeppc and rs6000 locore. 2008-05-25 10:52:08 +00:00
phx
9728e10361 Added HID0[BTAC] bit for the 604. 2008-05-25 10:16:04 +00:00
phx
be85d6f928 Make oea_init() support systems with high-vector configurations (i.e exception
vectors at 0xfff00000), and trap_subr.S allows the kernel to be in a memory
region which is not reachable by absolute branch instructions (ba and bla).

High-vector support can be enabled by option PPC_HIGH_VEC, and long-branches
to the kernel are enabled by the option DISTANT_KERNEL.
2008-05-24 21:39:01 +00:00
kiyohara
cd22853503 Fix some bugs for bebox. 2008-05-24 17:34:02 +00:00
ad
1e62ed170b Remove unneeded playing about with kernel_lock. 2008-05-21 14:07:29 +00:00
martin
5d1469bd77 Backout previous: the license sweep touched these files in error, so
restore the old license.
2008-05-10 15:31:03 +00:00
chs
5069fb4d04 pmap_upvo_pool needs to use IPL_VM since it is used from
pmap_kenter_pa(), which can be called from interrupt context.
2008-05-05 04:40:53 +00:00
martin
9c63b7e8cc Move to 2 clause TNF license 2008-05-04 00:18:16 +00:00
martin
3b9bf49423 Move to standard TNF 2 clause license 2008-05-04 00:01:08 +00:00
garbled
82a9123f59 Add a missing Makefile that I forgot to commit in the mkbootimage
switch.  Caught by Juergen Hannken-Illjes.
2008-05-01 18:13:38 +00:00
macallan
27a3fd2a36 add dummy argument to cpu_did_resched() so kern_synch.c is happy again 2008-04-30 23:21:29 +00:00
garbled
c3408ed04a Convert prep to use the new unified mkbootimage rather than it's own. This
mkbootimage can be shared by prep, rs6000, and bebox.

TODO: Convert bebox to use this.  Needs someone to test.
2008-04-30 21:15:33 +00:00
martin
3028e483e4 Convert to new 2 clause license 2008-04-29 06:53:00 +00:00