History log of /src/sys/dev/sun/sunms.c |
Revision | | Date | Author | Comments |
1.35 |
| 07-Aug-2021 |
thorpej | Merge thorpej-cfargs2.
|
1.34 |
| 24-Apr-2021 |
thorpej | branches: 1.34.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.33 |
| 31-Oct-2017 |
martin | branches: 1.33.20; PR port-sparc64/52622: mark the parent device as TS_KERN_ONLY, so userland will not touch it (and change serial params w/o our controll).
|
1.32 |
| 15-Sep-2013 |
martin | branches: 1.32.22; Remove unused variables
|
1.31 |
| 12-May-2009 |
cegger | branches: 1.31.12; 1.31.22; 1.31.26; struct device * -> device_t, no functional changes intended.
|
1.30 |
| 12-May-2009 |
cegger | struct cfdata * -> cfdata_t, no functional changes intended.
|
1.29 |
| 21-Apr-2008 |
martin | branches: 1.29.2; 1.29.16; Fix minor device_t split fallout.
|
1.28 |
| 29-Mar-2008 |
tsutsui | branches: 1.28.2; Split softc and device_t for zsc(4) and its children.
XXX we should restructure MI APIs and make it really machine independent.
|
1.27 |
| 09-Jul-2007 |
ad | branches: 1.27.28; Merge some of the less invasive changes from the vmlocking branch:
- kthread, callout, devsw API changes - select()/poll() improvements - miscellaneous MT safety improvements
|
1.26 |
| 04-Mar-2007 |
christos | branches: 1.26.2; 1.26.4; Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
1.25 |
| 29-Jan-2007 |
hubertf | branches: 1.25.2; Remove more duplicate headers. Patch by Slava Semushin <slava.semushin@gmail.com>
Again, this was tested by comparing obj files from a pristine and a patched source tree against an i386/ALL kernel, and also for src/sbin/fsck_ffs, src/sbin/fsdb and src/usr.sbin/makefs. Only changes in assert() line numbers were detected in 'objdump -d' output.
|
1.24 |
| 30-Mar-2006 |
thorpej | branches: 1.24.8; Use device_private().
|
1.23 |
| 29-Mar-2006 |
thorpej | Use device_cfdata().
|
1.22 |
| 28-Mar-2006 |
thorpej | Use device_unit().
|
1.21 |
| 11-Dec-2005 |
christos | branches: 1.21.4; 1.21.6; 1.21.8; 1.21.10; 1.21.12; merge ktrace-lwp.
|
1.20 |
| 27-Nov-2005 |
thorpej | Overhaul how TTY line disciplines are handled: - Replace references to linesw[0] with a ttyldisc_default() function that returns the default ("termios") line discipline. - The linesw[] array is gone, replaced by a linked list. - ttyldisc_add() and ttyldisc_remove() have been replaced by ttyldisc_attach() and ttyldisc_detach(). - Things that provide line disciplines are now responsible for registering those disciplines with the system. The linesw structures are no longer declared in tty_conf.c - Line disciplines are now refcounted; a lookup causes a reference to be held. ttyldisc_release() releases the reference. Attempts to detach an in-use line discipline result in EBUSY. - Fix function signature lossage in if_sl.c, if_strip.c, and tty_tb.c that was masked by the old tty_conf.c - tty_init() is no longer necessary; delete it and its call from main().
|
1.19 |
| 27-Feb-2005 |
perry | branches: 1.19.4; 1.19.10; nuke trailing whitespace
|
1.18 |
| 21-Feb-2005 |
heas | GC SUNKBDDISC & SUNMSDISC line discipline slot definitions. Both are already entered by ttyldisc_add() calls such that ttyldisc_add chooses the slot anyway. Double checked by Martin.
|
1.17 |
| 07-Aug-2003 |
agc | branches: 1.17.8; 1.17.10; Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.16 |
| 29-Jun-2003 |
fvdl | branches: 1.16.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.15 |
| 29-Jun-2003 |
martin | struct proc * -> struct lwp *
|
1.14 |
| 30-May-2003 |
petrov | wsmouse for ms@tty.
|
1.13 |
| 19-Jan-2003 |
thorpej | Merge the nathanw_sa branch.
|
1.12 |
| 03-Oct-2002 |
uwe | Refactor kbd and mouse drivers so that they can use different middle layers. Common middle layer shared by kbd_zs and sunkbd is moved into the new file. Move shared config directives to files.sun and adjust ports' files.* accordingly.
Need this to support console/Xsun on Mr.Coffee JavaStation.
Tested on sparc, sparc64 (by martin) and sun3 (by jdc).
|
1.11 |
| 02-Oct-2002 |
thorpej | Add trailing ; to CFATTACH_DECL.
|
1.10 |
| 01-Oct-2002 |
thorpej | Use CFATTACH_DECL().
|
1.9 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.8 |
| 06-Sep-2002 |
gehenna | Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to dynamically generated by config(8).
- All device switches is defined as a constant structure in device drivers.
- The new grammer ``device-major'' is introduced to ``files''.
device-major <prefix> char <num> [block <num>] [<rules>]
- All device major numbers must be listed up in port dependent majors.<arch> by using this grammer.
- Added the new naming convention. The name of the device switch must be <prefix>_[bc]devsw for auto-generation of device switch tables.
- The backward compatibility of loading block/character device switch by LKM framework is broken. This is necessary to convert from block/character device major to device name in runtime and vice versa.
- The restriction to assign device major by LKM is completely removed. We don't need to reserve LKM entries for dynamic loading of device switch.
- In compile time, device major numbers list is packed into the kernel and the LKM framework will refer it to assign device major number dynamically.
|
1.7 |
| 11-Dec-2001 |
pk | branches: 1.7.8; Name changes: {KBD,MS}_BPS => {KBD,MS}_DEFAULT_BPS
|
1.6 |
| 27-Nov-2001 |
fredette | When opening the mouse port, be sure to open it for 8 data bits. The sun2 PROM can leave the port configured for 7.
|
1.5 |
| 13-Nov-2001 |
lukem | add RCSIDs
|
1.4 |
| 17-May-2001 |
chs | branches: 1.4.2; 1.4.4; give sunkbd and sunms a "poll" routine.
|
1.3 |
| 01-Nov-2000 |
eeh | branches: 1.3.2; 1.3.4; Adapt to new line discipline scheme.
|
1.2 |
| 10-Oct-2000 |
pk | Fix compilation errors: unused variable & missing function return values.
|
1.1 |
| 21-Sep-2000 |
eeh | Guts of the Sun Keyboard/Mouse line disciplines. N.B. They don't recognize L1-A yet.
|
1.3.4.8 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.3.4.7 |
| 17-Sep-2002 |
nathanw | Catch up to -current.
|
1.3.4.6 |
| 12-Jul-2002 |
nathanw | No longer need to pull in lwp.h; proc.h pulls it in for us.
|
1.3.4.5 |
| 24-Jun-2002 |
nathanw | Curproc->curlwp renaming.
Change uses of "curproc->l_proc" back to "curproc", which is more like the original use. Bare uses of "curproc" are now "curlwp".
"curproc" is now #defined in proc.h as ((curlwp) ? (curlwp)->l_proc) : NULL) so that it is always safe to reference curproc (*de*referencing curproc is another story, but that's always been true).
|
1.3.4.4 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.3.4.3 |
| 15-Nov-2001 |
pk | Fix `curproc' usage.
|
1.3.4.2 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.3.4.1 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.3.2.3 |
| 22-Nov-2000 |
bouyer | Sync with HEAD.
|
1.3.2.2 |
| 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.3.2.1 |
| 01-Nov-2000 |
bouyer | file sunms.c was added on branch thorpej_scsipi on 2000-11-20 11:43:11 +0000
|
1.4.4.3 |
| 13-Oct-2001 |
fvdl | Revert the t_dev -> t_devvp change in struct tty. The way that tty structs are currently used (especially by console ttys) aren't ready for it, and this will require quite a few changes.
|
1.4.4.2 |
| 11-Oct-2001 |
fvdl | Catch up with -current. Fix some bogons in the sparc64 kbd/ms attach code. cd18xx conversion provided by mrg.
|
1.4.4.1 |
| 10-Oct-2001 |
fvdl | Convert all remaining devices.
|
1.4.2.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.4.2.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.7.8.1 |
| 16-May-2002 |
gehenna | Replace the direct-access to devsw table with calling devsw API. Fix conflicts of namespace.
|
1.16.2.7 |
| 11-Dec-2005 |
christos | Sync with head.
|
1.16.2.6 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.16.2.5 |
| 13-Jan-2005 |
skrll | Adapt to branch
|
1.16.2.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.16.2.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.16.2.2 |
| 26-Aug-2004 |
skrll | Adapt to branch.
sparc64 GENERIC compiles.
|
1.16.2.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.17.10.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.17.8.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.19.10.1 |
| 29-Nov-2005 |
yamt | sync with head.
|
1.19.4.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.19.4.2 |
| 26-Feb-2007 |
yamt | sync with head.
|
1.19.4.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.21.12.1 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.21.10.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.21.8.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.21.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.21.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.24.8.1 |
| 01-Feb-2007 |
ad | Sync with head.
|
1.25.2.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.26.4.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.26.2.1 |
| 13-Apr-2007 |
ad | - Make the devsw interface MP safe, and add some comments. - Allow individual block/character drivers to be marked MP safe. - Provide wrappers around the device methods that look up the device, returning ENXIO if it's not found, and acquire the kernel lock if needed.
|
1.27.28.2 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.27.28.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.28.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.29.16.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.29.2.1 |
| 16-May-2009 |
yamt | sync with head
|
1.31.26.1 |
| 18-May-2014 |
rmind | sync with head
|
1.31.22.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.31.22.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.31.12.1 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.32.22.1 |
| 06-Nov-2017 |
snj | Pull up following revision(s) (requested by martin in ticket #338): sys/arch/sparc64/dev/sab.c: revision 1.55 sys/dev/ic/com.c: revision 1.345 sys/dev/ic/z8530tty.c: revision 1.132 sys/dev/sun/sunkbd.c: revision 1.30 sys/dev/sun/sunms.c: revision 1.33 sys/sys/tty.h: revision 1.94 As discussed on tech-kern: define a new tty internal state flag: TS_KERN_ONLY Implement it in a few tty drivers. If this flag is set, the underlying hardware is used by another driver and userland has no right to open it. A few uses will appear soon in sys/dev/sun/sun{kbd,ms}.c. -- PR port-sparc64/52622: mark the parent device as TS_KERN_ONLY, so userland will not touch it (and change serial params w/o our control).
|
1.33.20.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.34.8.1 |
| 04-Aug-2021 |
thorpej | Adapt to CFARGS().
|