Commit Graph

222 Commits

Author SHA1 Message Date
tsubai 75dbde785b Remove spaces at EOL. 2001-04-26 15:27:05 +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
tsubai af50ac4b06 Make sure free rx buffers have GMAC_OWN set. 2001-04-24 11:04:11 +00:00
matt 2297e41241 After finishing with the received descriptor, make sure to "eieio" to make
sure the OWN gets back to the gmac in the proper order.  This reduces (and
maybe even fixes) the gm0 out-of-order problem.
2001-04-20 01:18:47 +00:00
tsubai b672929b7f Support uni-north based models. (XXX not complete) 2001-04-05 19:55:01 +00:00
tsubai a9e0aabf3f Correct input volume settings. 2001-04-05 14:21:31 +00:00
tsubai 85dc2162fb Correct vBufA offset. (currenly not used) 2001-04-01 15:14:36 +00:00
tsubai 158796407f Adjust timing for pmu99. Internal keyboard of recent PowerBooks
should work now.
2001-04-01 10:40:45 +00:00
tsubai 6386dedebe When attached, do not change brightness if the value is zero. 2001-03-29 17:44:50 +00:00
petrov 1c9cc1b092 use NCR_F_DMASELECT instead of ncr53c9x_dmaselect 2001-03-29 03:30:19 +00:00
tsubai e679c63257 Accept 8000Hz (XXX). 2001-03-15 19:55:16 +00:00
tsubai 5eab0287fb Use write-through caching for video ram. (Disabled by default, for now.) 2001-03-15 19:48:04 +00:00
tsubai 4382a59d64 Add ulinear16 support.
Return EINVAL if specified rate is not available.
2001-03-15 19:42:42 +00:00
tsubai 9f1a6e07a4 Round up block size to at least NBPG bytes. 2001-03-12 15:41:52 +00:00
tsubai 22961fea9b Enable CD and microphone sound input on paddington based systems. 2001-03-02 20:36:00 +00:00
tsubai 86f265568f Back out previous change. It was harmful on my PowerBook G3. 2001-02-28 18:49:29 +00:00
matt 702b27ec2c Back out change to print irq. 2001-02-27 07:34:15 +00:00
matt 2184b08f72 Enable a fix so that PowerBook(FireWire) keyboards work. This
should also work on iBooks and PowerBook(WallStreet).  And if
we're really lucky, on the new G4 laptops.
2001-02-27 07:33:17 +00:00
matt c09a88dca3 Be a bit more defensive. 2001-02-27 05:16:33 +00:00
matt 22d63778fc Add a gpio device to handle the gpio device & extint-gpio1
interrupt.  (think ibook/powerbook)
2001-02-27 05:15:03 +00:00
matt 25b977c685 print out irq on unconf devices. 2001-02-27 03:47:02 +00:00
wiz 0a4ef18ab8 add handling for the input channel selection/volume (no recording yet,
just the mixer interface)
2001-02-26 21:07:51 +00:00
tsubai d0a3070c40 Generate key press event and key release event when capslock is pressed.
Now capslock key works correctly on X11.
2001-01-25 14:08:55 +00:00
wiz ec35b8d060 Make output selection work -- you can use lineout now instead of the
internal loudspeakers.
2001-01-25 13:39:22 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
wiz 7ae9423d3b Honour SCSI command timeout -- fixes problems with SCSI commands that take
longer than 10s and were falling into a timeout, e.g. fixating.
2000-12-24 02:42:04 +00:00
tsubai a255931f5c Remove unnecessary casts. 2000-12-19 03:13:40 +00:00
tsubai 438b1e68e0 Add support for Kensington Turbo Mouse. 2000-12-19 02:59:23 +00:00
tsubai 0f4768af30 Sync with mac68k. 2000-12-19 02:50:11 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
wrstuden 10c4684193 Use wdc_print_modes() so that we get to see what DMA modes
are used with a drive.
2000-11-08 17:50:44 +00:00
wrstuden 029bdd3185 Adjust to change in tty line discipline handling. 2000-11-03 18:50:49 +00:00
tsubai 3d213115f4 Don't match if nintr > 12 (more than 3 cells). 2000-11-03 12:26:06 +00:00
tsubai bcb05a2f55 Get 6 interrupt cells from OF. 2000-11-03 12:20:55 +00:00
tsubai 2fe4478f19 Don't assume 12x22 font. 2000-11-02 14:25:51 +00:00
eeh 8c3f6a0d10 Adapt to new line discipline scheme. 2000-11-02 00:37:56 +00:00
tsubai 08e43d95ca Don't set M_HASFCS flag twice. 2000-11-01 20:21:58 +00:00
tsubai b4b571ccb9 Match "chrp,mesh0". 2000-10-31 16:57:07 +00:00
tsubai 756f954ef1 Fix Conner CFP1080 problem (pr 7612) and add debugging messages. 2000-10-23 21:04:27 +00:00
matt b30ca78c9b Packets have the FCS append so set M_HASFCS. 2000-10-18 05:43:13 +00:00
tsubai 03251ccf07 Pass correct packet length to the upper layer. 2000-10-17 15:57:51 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
tsubai 442b9b5df2 Get the correct OF node of the screen because PowerBooks have two screens
in one PCI device.
2000-10-01 19:08:30 +00:00
tsubai 2e72bb2b72 Add fr key layout. (From Manuel Bouyer, modified by me) 2000-09-01 16:00:38 +00:00
tsubai 077c9ca312 Enable hash filter mode. 2000-08-28 11:27:44 +00:00
tsubai 308d7eb3e4 Add (experimental) awacs audio driver. Output (play) only. 2000-08-25 12:44:42 +00:00
tsubai 5558e41363 New PowerBook (firewire) seems to use edge-triggered interrupt.
XXX cannot hot-plug yet
2000-08-23 12:18:17 +00:00
mrg 28d898391b remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:10:45 +00:00
mrg 4c698e84f6 <vm/vm_param.h> -> <uvm/uvm_param.h> 2000-06-26 14:58:58 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
tsubai 1155f3af58 Allow mmap of frame buffer registers. 2000-06-19 19:35:20 +00:00
tsubai 96964a6455 Use ether_crc32_le(). 2000-06-16 14:18:55 +00:00
tsubai 2931ec17b7 Forgot to commit this. 2000-06-15 19:09:15 +00:00
tsubai 736d4273e2 Implement multicast address filter. (Stolen from hme.c) 2000-06-15 18:36:52 +00:00
tsubai 649f6d3838 Sync with mac68k. 2000-06-08 22:10:45 +00:00
tsubai 4c15219d3b * Access hardware directly in zscn* instead of calling OF.
* Clean up.
2000-06-07 17:37:07 +00:00
nisimura 4371d91433 Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +00:00
tsubai f12221a5f5 Modify DMA access timings. 2000-05-23 13:20:58 +00:00
tsubai dd83a9aa4f Make this compile. 2000-04-14 10:22:06 +00:00
tsubai 2ca39ceddf Make this compile again. 2000-04-07 14:35:58 +00:00
tsubai b18b370715 Make sure color rgb:0/0/0 is black. 2000-04-02 12:53:05 +00:00
tsubai 7df13bfec7 Enable wdc1 (needed on StarMax). 2000-04-02 12:36:38 +00:00
tsubai e352cada4b Make this compile again. 2000-04-02 12:03:04 +00:00
tsubai f8a898cb1d Use ring buffer on tx side, too. 2000-03-26 09:15:17 +00:00
tsubai d806694e39 Fix typo. 2000-03-26 08:29:12 +00:00
thorpej 7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
tsubai 30370336dc Use ring buffer on tx side, too. 2000-03-04 11:17:00 +00:00
tsubai 0468fe97e4 Don't use hardcoded speed value when this is a console. Instead, read
from zs.  (because OF-3.x uses 57600 bps)
2000-02-27 20:31:57 +00:00
tsubai 6f4bb03178 Initial version of gmac ethernet driver.
XXX doesn't work well yet.
2000-02-27 18:00:55 +00:00
tsubai dcb9f03bd3 Use dev/rasops instead of dev/rcons. 2000-02-09 13:08:35 +00:00
tsubai 45fe0e4077 Fix typo. 2000-02-08 08:08:43 +00:00
tsubai b9ff560bcc Don't print "... not configured" message for non real devices
like escc-legacy.
2000-02-07 20:30:05 +00:00
thorpej eed75dbc26 Don't dry to diving MIIF_NOISOLATE in the PHY drivers. Instead, pass
flags down from the parent to child vi mii_attach().
2000-02-02 17:09:38 +00:00
thorpej 84dc99fdea Bring some order to the chaos which was the MII code function naming
"conventions".
2000-02-02 08:05:26 +00:00
tsubai 22a3504708 Make this work on the G4 too. 2000-01-27 17:39:20 +00:00
tsubai 6b26a49ee9 Use MII device layer.
XXX still 100Mbps receive side is very slow...
2000-01-25 14:38:39 +00:00
tsubai 969c226b5b Match "keylargo". 2000-01-23 10:01:44 +00:00
tsubai 16ea7fbbbb Match "keylargo-ata". 2000-01-21 18:45:14 +00:00
takemura ba04c55ed3 Absolute pointing device support.
- Wsmouse_input() get new argument 'flag', which indicates whether x/y/z are
   relative or absolute.
 - Wsmouse get new io controls, WSMOUSEIO_SCALIBCOORDS and
   WSMOUSEIO_GCALIBCOORDS.
2000-01-08 02:57:22 +00:00
tsubai a1da0497d2 Remove two panic conditions.
XXX untested.
1999-12-28 13:49:20 +00:00
drochner 0893832078 update for changed struct wsdisplay_accessops:show_screen signature.
no functional changes
1999-12-06 19:25:56 +00:00
tsubai eb1c1bdb92 Make media-bay CD detachable. 1999-10-04 22:58:10 +00:00
thorpej e6c88a7686 Update for SCSIPI changes. 1999-09-30 22:59:52 +00:00
tsubai 0724f6dd3b Recognize PCMCIA eject button. (Tested on only PowerBook 2400.) 1999-09-05 05:30:30 +00:00
tsubai 775199a39f Make configurable without ams. 1999-08-16 06:28:09 +00:00
tsubai 07bc0e694d media-bay CD support. 1999-07-21 19:20:04 +00:00
tsubai 4aec314394 Add PowerBook LCD brightness and speaker volume button device.
Only brightness works for now.
1999-07-12 17:48:26 +00:00
tsubai b7fc95a188 Add read/set LCD brightness and eject PCMCIA card function. 1999-07-12 15:54:55 +00:00
tsubai a192e5bd20 Enable soft poweroff on PowerBook. 1999-07-11 16:59:31 +00:00
tsubai a2ded1ab73 NVRAM read/write functions. 1999-06-22 13:12:11 +00:00
tsubai 2068c8b6e4 Use RTC on PB. 1999-06-22 11:29:11 +00:00
tsubai 9ac9208434 More initialization by calling Open Firmware. 1999-06-20 05:34:59 +00:00
tsubai a8d7da0d21 Add "trackpad" definition. 1999-06-17 06:59:05 +00:00
tsubai c28bad1d51 Define PowerBook G3 Japanese keyboard. 1999-06-16 08:48:37 +00:00
tsubai a2e8151f8e Define symbolic name of PMU commands. 1999-06-16 07:43:58 +00:00
tsubai 4df925b8b0 * Don't use DMA interrupt.
* Stop DMA explicitly in finish routine.
1999-06-14 08:53:06 +00:00
thorpej f98d358a1f Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
directly, call the function pointer (*if_input)(ifp, m).  The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary.  Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
thorpej ac9eee8693 Take all of the OpenFirmware "stdin" grovelling out of the ADB keyboard
driver, as the smarts for this all live somewhere else now.
1999-05-06 19:20:59 +00:00
tsubai 8dbaa0169e Find "mac-io" and "/pci/mac-io". 1999-05-01 10:36:08 +00:00