Commit Graph

477 Commits

Author SHA1 Message Date
kardel
09b51ec920 convert to timecounters (from branch simonb-timecounters) 2006-06-07 22:37:14 +00:00
yamt
4aed9e155a pull splraiseipl() for sparc64 from newlock branch.
reviewed by Martin Husemann.
2006-05-04 12:18:54 +00:00
cherry
93447d7ac4 closes: PR kern/32359
modifies machine/db_machdep.h: BKPT_SET(inst) to BKPT_SET(inst, addr) for all archs ie; passess the
breakpoint address as well.

Patch from cherry@mahiti.org
2006-04-01 15:45:00 +00:00
cube
f40bc6f570 s/uint32_t/unsigned int/ because we don't always have the former defined.
Reported by Juergen Hannken-Illjes.

XXX I prefer uint32_t, but there might be some namespace issues so for now
    it will do.
2006-03-16 16:05:53 +00:00
cube
bc7a3a86a6 Add the sparc64 MD bits to get usable coredumps for COMPAT_NETBSD32
binaries.
2006-03-14 22:05:05 +00:00
cube
8db07ab1c5 Under COMPAT_NETBSD32 emulation, pointers are not the same size as the
native ones...  netbsd32_pointer_t can't be used here though, so uint32_t
is used instead, which is of course the same thing.
2006-03-14 22:03:39 +00:00
cube
7e4eb63d0d We really have EM_SPARC binaries in 32-bits mode, not EM_SPARC32PLUS.
And yes, we do have EM_SPARCV9 binaries in 64-bits mode.
2006-03-14 21:37:48 +00:00
cdi
d0f8217f78 Use ANSI-style function definitions and declarations. 2006-02-20 19:00:27 +00:00
perry
fbae48b901 Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
2006-02-16 20:17:12 +00:00
cdi
1a509d615a ANSIfy: u_intN_t -> uintN_t, remove __P(), fix function definitions. 2006-02-13 21:47:11 +00:00
cdi
d50f0c6274 ANSIfication: u_intN_t -> uintN_t, use ANSI function declarations/definitions
instead of K&R ones.
2006-02-11 17:57:31 +00:00
cdi
4c2e4320bd Alter sparc64 bootstrap, catch up to ofwboot v1.9:
- Accept bootinfo structure passed down from ofwboot v1.9
 - Drop kernel re-mapping code
 - Use permanent 4MB mappings provided by the loader instead
 - Change kernel entry address to point directly at the code instead of pointing
   at the trap table's first slot. This allows the bootloader to detect
   those kernels which are aware of the new boot scheme
 - Due to the changes in kernel mapping code, alter secondary CPU bootstrap
   code to use trampoline just like FreeBSD does (some FreeBSD code is used
   here as well)
2006-01-27 18:37:49 +00:00
perry
50a256a3a0 __asm__ -> __asm
__const__ -> const
__inline__ -> inline
__volatile__ -> volatile
2005-12-24 23:23:59 +00:00
perry
5f1c88d70d Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 20:06:46 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
martin
eb8540417a Follow the lead of the sparc port:
- move md_flags back to mdproc, because we only have per-proc flags
   currently
 - implement cpu_proc_fork() to init p_md.md_flags on fork
2005-10-27 20:43:30 +00:00
chs
c0f26b2223 remove unnecessary includes. 2005-09-27 15:06:43 +00:00
christos
8fac7adf53 change trapframe to trapframe64 in the md_syscall prototype to fix 32
bit kernel builds.
2005-07-12 21:13:14 +00:00
martin
e14ba58310 When returning 64bit values (from netbsd32_lseek) fix up the return
value vector (of 32bit values, most likely) via a MD macro.
2005-07-12 15:06:17 +00:00
christos
3e061b04ef new file 2005-07-11 13:05:33 +00:00
christos
f1f78efdd1 Now that sparc has syscall intern, no need to define it here too. 2005-07-10 17:02:51 +00:00
martin
d6c7a12fb5 Fix COMPAT_NETBSD32 ucontext padding and move the definition next to the
(sparc) original.
2005-07-10 15:44:23 +00:00
christos
415655638b Forgot to add this. 2005-07-10 01:58:57 +00:00
christos
1e568eda97 Re-factor syscall, and make it use syscall_{plain,fancy}. 2005-07-10 00:50:16 +00:00
thorpej
6a02aeb003 Small clean-ups before an overhaul. 2005-06-19 23:36:47 +00:00
briggs
7f01fdeb84 Rename 'ncpus' to 'sparc_ncpus' to avoid shadow warnings in m.i. code.
Also sprinkle an __UNVOLATILE() for sparc.
n.b. sparc64 'cpus' should probably be renamed to 'cpu_info_list' to
     match i386 et al.
2005-06-16 04:17:49 +00:00
dyoung
a37289db57 Make disklabel(8) and fdisk(8) into "host tools " last step: build
and install ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-disklabel,
${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-fdisk by "reaching over" to
the sources in ${NETBSDSRCDIR}/sbin/{disklabel fdisk}/.

To avoid clashes with a build-host's header files, especially on
*BSD, the host-tools versions of fdisk and disklabel search for
#includes such as disklabel.h, disklabel_acorn.h, disklabel_gpt.h,
and bootinfo.h in a new #includes namespace, nbinclude/.  That is,
they #include <nbinclude/sys/disklabel.h>, <nbinclude/machine/disklabel.h>,
<nbinclude/sparc64/disklabel.h>, instead of <sys/disklabel.h> and
such.  I have also updated the system headers to #include from
nbinclude/-space when HAVE_NBTOOL_CONFIG_H is #defined.
2005-06-12 19:46:15 +00:00
christos
a38d2d274a sprinkle const. 2005-05-31 00:49:42 +00:00
matt
f854ad4125 For GCC3 and later, use the __builtin_va* constructs. 2005-04-20 05:15:15 +00:00
fvdl
c487efe4a7 Fix some things regarding COMPAT_NETBSD32 and limits/VM addresses.
* For sparc64 and amd64, define *SIZ32 VM constants.
* Add a new function pointer to struct emul, pointing at a function
  that will return the default VM map address. The default function
  is uvm_map_defaultaddr, which just uses the VM_DEFAULT_ADDRESS
  macro. This gives emulations control over the default map address,
  and allows things to be mapped at the right address (in 32bit range)
  for COMPAT_NETBSD32.
* Add code to adjust the data and stack limits when a COMPAT_NETBSD32
  or COMPAT_SVR4_32 binary is executed.
* Don't use USRSTACK in kern_resource.c, use p_vmspace->vm_minsaddr
  instead (emulations might have set it differently)
* Since this changes struct emul, bump kernel version to 3.99.2

Tested on amd64, compile-tested on sparc64.
2005-03-26 05:12:34 +00:00
matt
a6db24a485 Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create).  dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
2005-03-09 19:04:43 +00:00
heas
c1d895ba16 Add a few comments wrt PTEs 2005-02-25 17:29:04 +00:00
martin
7cbebc44aa Cleanup: the PG_SZ macro was buggy (pointed out by Tim Newsham).
It was only used by (the also buggy/not ready for prime time) PMAP_PAGE_SIZE,
which in turn only was used in one place.

Get rid of all this and hardcode the result at the single place of use.
2005-02-22 16:21:07 +00:00
martin
c7b31c04d6 Remove orphaned extern declaration. 2005-01-27 08:50:27 +00:00
atatat
a076957818 Convert the PMAP_PREFER() macro from two arguments (offset and hint)
to four (adding size and direction).

In order for topdown uvm to be an option on ports using PMAP_PREFER,
they will need to "prefer" lower addresses if topdown is being used.
Additionally, at least one port also needs to know the size.
2005-01-17 04:37:20 +00:00
christos
ca0484bf3e add a linted comment. 2005-01-02 00:14:46 +00:00
abs
5958dd944e Fix comments slighly 2004-12-12 20:42:53 +00:00
yamt
d2fe4b34bb move some per-cpu data definitions to MI place so that they can be modified
without touching all ports.  discussed on tech-kern@.
2004-09-22 11:32:02 +00:00
drochner
c67a72f6ff make PCI devices attachable/detachable (as far as the particular drivers
allow), and allow to rescan a bus selectively (ie only the device/
function I'm looking at)
2004-08-17 23:20:10 +00:00
drochner
4f2a6309fe give the special PCI bus enumerator a sparc64_ prefix and make the
PCI_MACHDEP_ENUMERATE_BUS macro point to it
2004-07-29 16:53:15 +00:00
drochner
96623fecad also add <machine/joystick.h> to alpha and amd64, to allow compilation
of certain multimedia applications
2004-07-07 18:03:51 +00:00
petrov
a021a66c36 Added UPA_MID definitions and macros(similar to FreeBSD).
Added membar_store, membar_load macros.
No need to set %asi _after_ alternate space use in corresponding functions.
Enable(unifdef) casa functions for __arch64__.
2004-07-01 22:59:16 +00:00
heas
66307fc36e typo in define name, littie -> little 2004-07-01 14:57:46 +00:00
pk
889aa9f444 Introduce bus_space_tag_alloc() for the common parts of bus tag allocation. 2004-06-30 21:16:38 +00:00
pk
e839b8dccb Provide bus_space_translate_address_generic(), a helper function to
translate a local bus address to an address on the parent bus.
2004-06-28 10:17:01 +00:00
pk
736c085516 Add openprom range property to the bus space tag. 2004-06-28 09:32:14 +00:00
martin
44eda0ad6b Add missing ; in inline assembler for 32bit kernels 2004-06-24 19:42:27 +00:00
martin
d0c69e4d18 Fix small glitches to make SMP kernels compile again. 2004-06-18 12:51:39 +00:00
petrov
8b0935d09f Define mp_pause(resume)_cpus needed for callprom. 2004-06-18 00:05:05 +00:00
petrov
ac26f9468c clean-up, reformat __asm statements. 2004-06-17 19:35:14 +00:00