History log of /src/sys/arch/mac68k/dev/adb.c |
Revision | | Date | Author | Comments |
1.62 |
| 18-Sep-2024 |
nat | The delay is only required for machines with built-in floppy drives.
I doubt the vibration from an external drive on the Duos would affect adb before it attaches.
|
1.61 |
| 18-Sep-2024 |
nat | Use attach delay only on affected machines.
It is only required for machines with built-in trackballs.
Requested by rin@.
|
1.60 |
| 14-Sep-2024 |
nat | Allow a few seconds for adb devices to settle.
The spin up of the floppy drive motor would cause a crash on my PowerBook when adb was attached.
|
1.59 |
| 07-Aug-2021 |
thorpej | branches: 1.59.12; Merge thorpej-cfargs2.
|
1.58 |
| 24-Apr-2021 |
thorpej | branches: 1.58.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
1.57 |
| 19-Oct-2018 |
martin | branches: 1.57.14; #ifdef DIAGNOSTIC should not cause functional differences (even if minor or cosmetic)
|
1.56 |
| 18-Oct-2014 |
snj | branches: 1.56.18; 1.56.20; src is too big these days to tolerate superfluous apostrophes. It's "its", people!
|
1.55 |
| 27-Oct-2012 |
chs | split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
|
1.54 |
| 06-Jun-2011 |
matt | branches: 1.54.2; 1.54.12; CFATTACH_DECL(..., sizeof(struct device), -> CFATTACH_DECL_NEW(..., 0 struct device * -> device_t struct cfdata * -> cfdata_t use bool when appropriate
|
1.53 |
| 01-Nov-2009 |
snj | branches: 1.53.4; 1.53.10; Drop 3rd and 4th clauses. Approved by Brad Grantham (copyright holder).
|
1.52 |
| 03-Apr-2008 |
scottr | branches: 1.52.4; Factor out ADB spin-wait timeout loop, and use it for synchronous operations to access the PRAM RTC, etc. in the IIsi and Cuda cases. Thanks to Martin Husemann for pointing out the flaw.
This is a slightly more thorough workaround for the issue Martin found in PR 37611, as it affected more than just adb_read_date_time().
|
1.51 |
| 03-Dec-2007 |
ad | branches: 1.51.14; Interrupt handling changes, in discussion since February:
- Reduce available SPL levels for hardware devices to none, vm, sched, high. - Acquire kernel_lock only for interrupts at IPL_VM. - Implement threaded soft interrupts.
|
1.50 |
| 08-Mar-2007 |
tsutsui | branches: 1.50.2; 1.50.18; 1.50.20; 1.50.26; MI softintr(9)'fy. Probably problematic, but LC630 is running at single user.
|
1.49 |
| 24-Dec-2005 |
perry | branches: 1.49.26; bare asm -> __asm
|
1.48 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
1.47 |
| 16-Jun-2005 |
jmc | branches: 1.47.2; Fixes for volatile problems
|
1.46 |
| 15-Jan-2005 |
chs | de-__P, remove register, ansify, b* -> mem*.
|
1.45 |
| 15-Jul-2003 |
lukem | __KERNEL_RCSID()
|
1.44 |
| 01-Jan-2003 |
thorpej | branches: 1.44.2; Use aprint_normal() in cfprint routines.
|
1.43 |
| 02-Oct-2002 |
thorpej | Use CFATTACH_DECL().
|
1.42 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.41 |
| 20-Nov-2001 |
chs | prepare for ELF: - add "%" prefix to register names in assembly code. - use _C_LABEL() where necessary. - use packed structures where necessary to match the old ABI.
|
1.40 |
| 15-Nov-2000 |
scottr | branches: 1.40.4; 1.40.8; The Cuda-based ADB hardware has the ability to queue some commands and return control to the main CPU before completing the ADB transaction. Double the adb_op_sync() timeout as a result. Fixes PR 11310.
|
1.39 |
| 27-Sep-2000 |
scottr | Now that we do collision detection and assign all ADB devices to distinct addresses, it makes sense to print the actual address of the device rather than the original address. The latter is useful to distinguish the type of device only, so we maintain that data internally (as we always have).
This closes PR 10557 from Dave Huang.
|
1.38 |
| 19-Sep-2000 |
scottr | Ken'ichi Ishizaka discovered that some devices, e.g. the A3 Mouse, don't respond in the allotted time if they're told to TALK immediately after completing a LISTEN command. Experimentation with adb_op_sync() yielded consistent results when the timeout was increased from the documented 6900 usec to 8000 usec, so we'll make that change here.
(Accurate and complete documentation of the hardware sure would help...)
|
1.37 |
| 03-Jul-2000 |
scottr | Stabilize ADB support for some non-Apple ADB peripherals. This is the second (and final) part of the fix for PR 10086. (There are no longer any infinite-wait busy loops in the ADB driver!)
|
1.36 |
| 18-Jun-2000 |
scottr | branches: 1.36.2; Revert debug-related bogon that snuck in (no change in functionality).
|
1.35 |
| 19-Mar-2000 |
scottr | branches: 1.35.2; The MRG and direct ADB drivers were inconsistent in how they worked with a serial console; the direct driver didn't care, but the MRG driver wouldn't probe ADB when using a serial console. Remove the check from the MRG version of the code to resolve this difference.
|
1.34 |
| 14-Feb-2000 |
scottr | Merge wscons work onto the main development branch.
|
1.33 |
| 28-Nov-1999 |
scottr | Don't use the plural form of the word "target" if there is only one!
|
1.32 |
| 07-Nov-1999 |
scottr | Garbage collect adb_initted.
|
1.31 |
| 07-Nov-1999 |
scottr | We want adb_polling set regardless of whether we're using the MRG driver.
|
1.30 |
| 07-Nov-1999 |
scottr | ite_polling -> adb_polling
|
1.29 |
| 05-Nov-1999 |
scottr | Defer ADB configuration until interrupts are (normally) enabled.
|
1.28 |
| 05-Nov-1999 |
scottr | An aesthetic change to autoconfig output to complement Colin Wood's change to macrom.c in June.
|
1.27 |
| 11-Feb-1999 |
ender | branches: 1.27.2; 1.27.4; 1.27.10; 1.27.12; 1.27.16; o Change various attach arg and softc datatypes to ints. o Use explicit typecasts when interfacing with MRG data
Should fix port-mac68k/6839. Patch supplied by Frederick Bruckman <fb@enteract.com>
|
1.26 |
| 26-Oct-1998 |
scottr | Make it compile for MRG_ADB kernels.
|
1.25 |
| 23-Oct-1998 |
ender | New ADB "bus" interface: o Separate ms and kbd drivers o aed device for compatibility o debug message cleanup in hardware direct support (from scottr)
|
1.24 |
| 11-Aug-1998 |
briggs | Patch from Takashi NAKAMURA <QZM00427@nifty.ne.jp> to support the Contour 3-button mouse from the Contour Design Corp. It looks like a Microspeed mouse.
|
1.23 |
| 13-Apr-1998 |
scottr | Make type explicit for egcs, from Erik Bertelsen in PR 5288.
|
1.22 |
| 27-Mar-1998 |
scottr | Don't map Opt-{1,2,3} to mouse buttons unless the ALTXBUTTONS option is specified. (Doing so breaks German keyboards!) Fixes PR 4929.
|
1.21 |
| 23-Feb-1998 |
scottr | Mostly KNF. There's still a bunch of ugly comments and some problems with long lines, but this is at least a big step in the right direction.
|
1.20 |
| 21-Feb-1998 |
scottr | Unify ADB options and place them all into opt_adb.h. Provide a knob to enable ADB debugging messages if ADB_DEBUG is configured.
|
1.19 |
| 12-Jan-1998 |
thorpej | Update for changes to config.
|
1.18 |
| 26-Nov-1997 |
scottr | Don't attempt to open the ADB device if it hasn't been initialized. Also, don't allow more than one instance to be configured.
|
1.17 |
| 11-Aug-1997 |
scottr | Make #include directives consistent. All MD headers are of the form:
#include <mac68k/{dev,mac68k}/foo.h>
|
1.16 |
| 25-Jul-1997 |
scottr | branches: 1.16.2; Add option-{1,2,3} as an alternative to option-{,left,right} for mouse button emulation. From SUNAGAWA Keiki <kei_sun@ba2.so-net.or.jp> in PR 3887.
|
1.15 |
| 16-Jun-1997 |
scottr | Add support for Mouse Systems A3 mouse. From Colin Wood.
|
1.14 |
| 08-Apr-1997 |
scottr | Updates from John Wittkoski for new ADB driver.
|
1.13 |
| 16-Dec-1996 |
scottr | Convert all foo_match() functions to use a `struct cfdata *' for their second argument. The NuBus autoconfig code had to be reorganized as a result of this, and looks much more like a directly-attached bus now. These changes eliminate __BROKEN_INDIRECT_CONFIG.
|
1.12 |
| 13-Oct-1996 |
christos | backout previous kprintf change
|
1.11 |
| 11-Oct-1996 |
christos | printf -> kprintf, sprintf -> ksprintf
|
1.10 |
| 14-Sep-1996 |
scottr | - Implement poll(2) - Convert splhigh() -> spladb() - Guard references to adb_evq_tail and adb_evq_len!
|
1.9 |
| 05-May-1996 |
briggs | Fix typo in last.
|
1.8 |
| 05-May-1996 |
briggs | MicroSpeed mouse support from Taras Ivanenko <ivanenko@ctpa03.mit.edu>. Also some updates to actually used #defined constants instead of numeric constants.
|
1.7 |
| 05-May-1996 |
briggs | Prototype for -Wall -Wstrict-prototypes -Wmissing-prototypes -Wno-uninitialized Also change the device probing scheme to use something a bit more rational. A current side-effect is that nubus cards are double-mapped. I expect to fix that shortly. Also change splclock() to block everything but serial hardware interrupts.
|
1.6 |
| 17-Mar-1996 |
thorpej | New device attachment scheme:
- split softc size and match/attach out from cfdriver into a new struct cfattach.
- new "attach" directive for files.*. May specify the name of the cfattach structure, so that devices may be easily attached to parents with different autoconfiguration semantics.
|
1.5 |
| 01-Nov-1995 |
briggs | port-mac/1707: mac68k mouse drag problems with Cmd+arrow keys from Ken Nakata <kenn@remus.rutgers.edu>
|
1.4 |
| 03-Sep-1995 |
briggs | branches: 1.4.2; Add support for Extended Apple Mouse Protocol from Ken Nakata <kenn@remus.rutgers.edu>.
|
1.3 |
| 30-Jun-1995 |
briggs | Option key fix from Ken Nakata (kenn@remus.rutgers.edu).
|
1.2 |
| 21-Apr-1995 |
briggs | First pass of KNFication. Needs more.
|
1.1 |
| 03-Dec-1994 |
briggs | Mac ROM Glue changes from grantham@tenon.com.
|
1.4.2.1 |
| 02-Nov-1995 |
briggs | from HEAD; patch from Ken Nakata to allow mouse movement when using keyboard mouse buttons.
|
1.16.2.1 |
| 23-Aug-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.27.16.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
1.27.12.1 |
| 15-Nov-1999 |
fvdl | Sync with -current
|
1.27.10.2 |
| 22-Nov-2000 |
bouyer | Sync with HEAD.
|
1.27.10.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.27.4.2 |
| 29-Nov-1999 |
he | Pull up revision 1.33 (requested by scottr): Use correct English when reporting the number of ADB target(s).
|
1.27.4.1 |
| 21-Nov-1999 |
he | Pull up revisions 1.28,1.30-1.32 (via patch, requested by sr): Clean up the ADB driver, and eliminate duplicate keystrokes under heavy load, fixing PR#7870.
|
1.27.2.4 |
| 13-Feb-2000 |
scottr | itevar.h is gone.
|
1.27.2.3 |
| 28-Nov-1999 |
scottr | Sync with main branch.
|
1.27.2.2 |
| 09-Nov-1999 |
scottr | Sync with main branch.
|
1.27.2.1 |
| 05-Mar-1999 |
scottr | checkpoint: input side code should work. no output side yet.
|
1.35.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.36.2.2 |
| 15-Nov-2000 |
tv | Pullup 1.40 [scottr]: The Cuda-based ADB hardware has the ability to queue some commands and return control to the main CPU before completing the ADB transaction. Double the adb_op_sync() timeout as a result. Fixes PR 11310.
|
1.36.2.1 |
| 21-Sep-2000 |
scottr | Pull up revs 1.37 and 1.38 from scottr: Stabilize ADB support for some non-Apple ADB peripherals.
|
1.40.8.3 |
| 03-Jan-2003 |
thorpej | Sync with HEAD.
|
1.40.8.2 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.40.8.1 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.40.4.2 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.40.4.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.44.2.5 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.44.2.4 |
| 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.44.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.44.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.44.2.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.47.2.3 |
| 07-Dec-2007 |
yamt | sync with head
|
1.47.2.2 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.47.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.49.26.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.50.26.1 |
| 08-Dec-2007 |
mjf | Sync with HEAD.
|
1.50.20.1 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.50.18.1 |
| 09-Dec-2007 |
jmcneill | Sync with HEAD.
|
1.50.2.1 |
| 03-Dec-2007 |
ad | Sync with HEAD.
|
1.51.14.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.52.4.1 |
| 11-Mar-2010 |
yamt | sync with head
|
1.53.10.1 |
| 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.53.4.1 |
| 12-Jun-2011 |
rmind | sync with head
|
1.54.12.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.54.12.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.54.2.1 |
| 30-Oct-2012 |
yamt | sync with head
|
1.56.20.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.56.18.1 |
| 20-Oct-2018 |
pgoyette | Sync with head
|
1.57.14.1 |
| 21-Mar-2021 |
thorpej | Give config_found() the same variadic arguments treatment as config_search(). This commit only adds the CFARG_EOL sentinel to the existing config_found() calls. Conversion of config_found_sm_loc() and config_found_ia() call sites will be in subsequent commits.
|
1.58.8.1 |
| 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|
1.59.12.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|