Commit Graph

757 Commits

Author SHA1 Message Date
minoura 0bb85c4922 Encoding ulinear and mulaw are both software emulated.
From Isaki-san.
2001-05-07 09:42:30 +00:00
hubertf b866d429c1 vlan does not belong to group of IPv6 pseudo-devices 2001-05-06 01:54:19 +00:00
minoura c9c82d303a Use cdev_decl for prototype declarations (port-x68k/12829, thanks to scw
for suggestion).
Add static to some non-external functions.
2001-05-05 01:52:56 +00:00
minoura 58b62ea0cf Correct playing mu-law and linear. 2001-05-03 02:09:11 +00:00
minoura 3e3968872c Remove old obsolete audio driver. 2001-05-02 13:24:52 +00:00
minoura a7fc9909b6 Add/enable vs. 2001-05-02 13:15:24 +00:00
minoura b2cec36854 X68k built-in voice synthesizer. 2001-05-02 13:00:19 +00:00
minoura f4b1b4cef9 Do not use constants, but macros. 2001-05-02 12:50:24 +00:00
minoura 47d22455b3 Disable array chain mode by default, since it is unused by any of
the current devices.
Add more flexibility in the API.
2001-05-02 12:48:24 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
thorpej cf67ac7122 Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
minoura fc97cb8a94 Correct memory leak.
Use single block transfer when appropriate.
2001-04-30 05:47:31 +00:00
thorpej 2b27ac7a99 Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure.  Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM.  These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg.  As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now).  Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
bouyer 937a7a3ed9 Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
  ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
  to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
  peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
  recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
  scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
  (no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
  set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
  the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
  will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
thorpej 1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
thorpej 55044638aa Remove pmap_kenter_pgs(). It was never really adopted by
anything, and the interface itself wasn't as flexible as
callers would have probably liked.
2001-04-22 23:42:11 +00:00
thorpej 69abdbf60c Undo a misguided previous change to the pmap_update() API. 2001-04-22 23:19:26 +00:00
thorpej 4738622712 Give pmap_update() an argument (a pmap_t) so that it knows which
pmap it should be updating.
2001-04-22 00:33:59 +00:00
thorpej 7f10ba88b1 #define away pmap_update() in <machine/pmap.h> so that no function
call overhead is incurred as we start sprinkling pmap_update() calls
throughout the source tree (no pmaps currently defer operations, but
we are adding the infrastructure to allow them to do so).
2001-04-21 23:51:14 +00:00
thorpej 15f731ee94 pmap_update() should not be equated with "flush entire TLB", it is
used to process deferred pmap operations.  Since these pmaps don't
defer anything, pmap_update() is a noop.
2001-04-21 17:25:01 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
lukem 20ba07f2fe - add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
and use appropriately

- create more helper macros:
   . cdev__xyz_init(c,n), such as cdev__ocri_init() for
     /* open, close, read, ioctl */, etc.
   . cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
     method `R' and the comments now read /* xxx (read) yyy */ instead
   . cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
     as well

- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
  always DTRT WRT returning a valid result.  (a few devices previously
  incorrectly returned ENODEV)

- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
  == 0, because it doesn't matter if dev_type_stop isn't implemented in that
  case, and it allows the use of the cdev__xyz_init macros. certain ports
  (sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
  drivers, whereas everything else uses enodev

- ensure that the comments are accurate WRT the behaviour of a given entry
2001-03-26 12:33:22 +00:00
minoura 23d323f4f9 Sync with amiga 1.15.
Make this compile again (when building the LKMs).
2001-03-22 12:47:11 +00:00
minoura b711716241 A bit of ELF support. From scw. 2001-03-22 12:46:19 +00:00
lukem 723cd818d8 move duplicate definitions for:
pc, lpt, joy, ocis, apm, satlink, i4bctl, i4brbch, i4btel, i4btrc, i4b
from the port-specific arch/*/*/conf.c files into sys/conf.h
2001-03-21 22:25:52 +00:00
soren 912c115675 s/vm_page_alloc_memory/uvm_pglistalloc/ in panic message. 2001-03-21 18:40:28 +00:00
chs ac3bc537bd eliminate the KERN_* error codes in favor of the traditional E* codes.
the mapping is:

KERN_SUCCESS			0
KERN_INVALID_ADDRESS		EFAULT
KERN_PROTECTION_FAILURE		EACCES
KERN_NO_SPACE			ENOMEM
KERN_INVALID_ARGUMENT		EINVAL
KERN_FAILURE			various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE		ENOMEM
KERN_NOT_RECEIVER		<unused>
KERN_NO_ACCESS			<unused>
KERN_PAGES_LOCKED		<unused>
2001-03-15 06:10:32 +00:00
minoura 8cba02bdf9 Turn off options JUPITER temporarily.
This may cause problems on some newer accelerators.
We might have to write a more accurate detect code.
2001-03-10 03:23:09 +00:00
thorpej 2c4c690f14 Add the BUS_DMA_STREAMING flag. 2001-03-07 22:42:16 +00:00
minoura 8770ff2900 Sync with news68k:
Remove unneeded COMPAT_HPUX stuff.
2001-03-01 17:11:13 +00:00
jdolecek f6d22f21da usr1handler(): fix the logerror() call, use string 'shut' 2001-02-21 22:55:51 +00:00
minoura b675f941fe Use m68k_page_offset and m68k_trunc_page macros,
instead of using PGOFSET directly.
2001-02-21 12:39:16 +00:00
minoura 943f21e2c5 Remove some redundant decls.
Fix some nested decls.
2001-02-21 05:53:35 +00:00
minoura daa78d567e Make this compile again. 2001-02-21 05:44:32 +00:00
minoura 013971b69b include sunos_exec.h to declare emul_sunos.
From syssrc/sys/arch/news68k/news68k/trap.c:1.12.
2001-02-20 15:55:08 +00:00
minoura 0e8197960f Remove phys_map declaration, which is in <uvm/uvm_extern.h>.
From syssrc/sys/arch/news68k/news68k/vm_machdep.c:1.6.
2001-02-20 15:54:29 +00:00
minoura a7d2590bf0 Fix some nested extern declarations.
From syssrc/sys/arch/news68k/news68k/machdep.c:1.16.
2001-02-20 15:53:27 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
itohy a9cd6b907b Performance hack.
Mainly for the Neptune-X Ethernet adaptor,
and improves ftp(1) speed by ~10%.

	get: 219 KB/s -> 246 KB/s
	put: 226 KB/s -> 247 KB/s
	(X68030, MC68030 25MHz)
2001-01-29 01:09:29 +00:00
minoura 42c425801b Use IOCS_S_READEXT only when reading the partition boot from
higher part of the disk than 0x200000.
2001-01-26 17:30:15 +00:00
tv e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
fvdl c7f1462f3e Add machdep file for procfs. Currently only used for linux-style
/proc/cpuinfo (only active when procfs is mounted with -o linux).
For ports other than the i386 this currently produces an empty
string.
2001-01-17 00:07:18 +00:00
thorpej d74e432ed3 Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
itohy f3590c636b Make it compile with "options DIAGNOSTIC" (patch from minoura). 2001-01-15 07:04:41 +00:00
martin a261276f16 The i4b raw b-channel devices actually do have an ioctl routine,
so better add this to the cdevsw entry.
Noted by Bruno Achauer.
2001-01-14 11:17:28 +00:00