| History log of /src/sys/dev/pcmcia/if_sm_pcmcia.c | 
    | Revision |  | Date | Author | Comments | 
| 1.57 |  | 08-Feb-2018 | dholland | Typos. 
 | 
| 1.56 |  | 07-Jul-2016 | msaitoh | KNF. Remove extra spaces. No functional change. 
 | 
| 1.55 |  | 27-Oct-2012 | chs | branches:  1.55.14; split device_t/softc for all remaining drivers.
 replace "struct device *" with "device_t".
 use device_xname(), device_unit(), etc.
 
 | 
| 1.54 |  | 12-May-2009 | cegger | branches:  1.54.12;  1.54.22; struct device * -> device_t, no functional changes intended.
 
 | 
| 1.53 |  | 12-May-2009 | cegger | struct cfdata * -> cfdata_t, no functional changes intended. 
 | 
| 1.52 |  | 14-Mar-2009 | dsl | Change about 4500 of the K&R function definitions to ANSI ones. There are still about 1600 left, but they have ',' or /* ... */
 in the actual variable definitions - which my awk script doesn't handle.
 There are also many that need () -> (void).
 (The script does handle misordered arguments.)
 
 | 
| 1.51 |  | 28-Apr-2008 | martin | branches:  1.51.8;  1.51.14; Remove clause 3 and 4 from TNF licenses
 
 | 
| 1.50 |  | 05-Apr-2008 | cegger | branches:  1.50.2;  1.50.4; use aprint_*_dev and device_xname
 
 | 
| 1.49 |  | 19-Oct-2007 | ad | branches:  1.49.16; machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 
 | 
| 1.48 |  | 16-Nov-2006 | christos | branches:  1.48.8;  1.48.22;  1.48.24;  1.48.28; __unused removal on arguments; approved by core.
 
 | 
| 1.47 |  | 12-Oct-2006 | christos | - sprinkle __unused on function decls. - fix a couple of unused bugs
 - no more -Wno-unused for i386
 
 | 
| 1.46 |  | 11-Dec-2005 | christos | branches:  1.46.20;  1.46.22; merge ktrace-lwp.
 
 | 
| 1.45 |  | 04-Feb-2005 | perry | branches:  1.45.6; de-__P
 
 | 
| 1.44 |  | 10-Aug-2004 | mycroft | branches:  1.44.4;  1.44.6; Now that all the silly string printing is gone, move the location where we
 print a newline so it doesn't have to be done in every driver.
 
 | 
| 1.43 |  | 10-Aug-2004 | mycroft | Enhance pcmcia_product_lookup(): * Remove the "expected function" value.  This was just causing problems with
 multifunction cards.  Differentiating the functions is better done by
 checking the function type (which we now do in ep and sm).
 * Add support for matching CIS strings.  This necessitated changing the calling
 pattern a little too.
 
 Use this enhanced version rather than driver-specific versions that do the
 same thing.
 
 Also, remove the last vestiges of PCMCIA_STR_*.
 
 | 
| 1.42 |  | 10-Aug-2004 | mycroft | More careful about cleaning up pointers. 
 | 
| 1.41 |  | 10-Aug-2004 | mycroft | Print diagnostics in only one place if intr_establish() or function_enable() fails.
 
 Also, be a little more careful about passing up error values, and consistently
 clear our interrupt handler pointer.
 
 | 
| 1.40 |  | 10-Aug-2004 | mycroft | Copyright maintenance. 
 | 
| 1.39 |  | 10-Aug-2004 | mycroft | Update to the new world order. 
 | 
| 1.38 |  | 09-Aug-2004 | mycroft | Adapt to the new world order.  Now all my sm cards work. 
 | 
| 1.37 |  | 09-Aug-2004 | mycroft | Make pcmcia_function_disable() primarily responsible for disabling the CCR bits.  pcmcia_intr_disestablish() continues to do this as a stopgap.
 
 | 
| 1.36 |  | 08-Aug-2004 | mycroft | Remove the "offset" and "size" arguments to pcmcia_io_map().  In the singular case (ne@pcmcia) where we were using these to create a subregion, it is better
 handled by calling bus_space_subregion().
 
 Now there is a 1:1 mapping between I/O spaces in the config table and windows
 mapped in the function.  Rework the multifunction mapping code to take
 advantage of this by using both I/O base addresses if necessary.
 
 | 
| 1.35 |  | 08-Aug-2004 | mycroft | Search all the configuration entries. 
 | 
| 1.34 |  | 08-Aug-2004 | mycroft | AFAICT, there's no reason not to use PCMCIA_WIDTH_AUTO here. 
 | 
| 1.33 |  | 07-Aug-2004 | mycroft | Clean up attach messages. 
 | 
| 1.32 |  | 07-Aug-2004 | mycroft | The generic code already looked for a LAN ID tuple, so look at what it found rather than reparsing.
 
 | 
| 1.31 |  | 06-Aug-2004 | mycroft | Make a couple of Megahertz cards (one straight Ethernet, one multifunction) work by:
 * adding another product to the table,
 * checking the function type (to reject the serial port),
 * trying harder to find the MAC address in the CIS strings (it may occur in
 one of two different places).
 Also, PCMCIA_STR_* elimination.
 
 | 
| 1.30 |  | 02-Oct-2002 | thorpej | branches:  1.30.6; Add trailing ; to CFATTACH_DECL.
 
 | 
| 1.29 |  | 30-Sep-2002 | thorpej | Use CFATTACH_DECL(). 
 | 
| 1.28 |  | 27-Sep-2002 | thorpej | Declare all cfattach structures const. 
 | 
| 1.27 |  | 01-Jun-2002 | lukem | SIMPLEQ rototill: - implement SIMPLEQ_REMOVE(head, elm, type, field).  whilst it's O(n),
 this mirrors the functionality of SLIST_REMOVE() (the other
 singly-linked list type) and FreeBSD's STAILQ_REMOVE()
 - remove the unnecessary elm arg from SIMPLEQ_REMOVE_HEAD().
 this mirrors the functionality of SLIST_REMOVE_HEAD() (the other
 singly-linked list type) and FreeBSD's STAILQ_REMOVE_HEAD()
 - remove notes about SIMPLEQ not supporting arbitrary element removal
 - use SIMPLEQ_FOREACH() instead of home-grown for loops
 - use SIMPLEQ_EMPTY() appropriately
 - use SIMPLEQ_*() instead of accessing sqh_first,sqh_last,sqe_next directly
 - reorder manual page; be consistent about how the types are listed
 - other minor cleanups
 
 | 
| 1.26 |  | 13-Nov-2001 | lukem | branches:  1.26.8; add RCSIDs
 
 | 
| 1.25 |  | 05-Sep-2001 | pooka | * make this match the Psion Goldcard * teach it to read the MAC addr from the correct place (from OpenBSD)
 * change order of intr_dis/establish() and function_en/disable() to
 avoid panics on this multifunction card due to the CCR window
 not being mapped in intr_dis/establish()
 
 | 
| 1.24 |  | 01-Jul-2001 | thorpej | branches:  1.24.2; Remove unneeded include files.  From  Onno van der Linden.
 
 | 
| 1.23 |  | 30-Jul-2000 | briggs | branches:  1.23.2; Add MII support to smc91cxx driver.  This is supported for the 91c100
 and 91c100FD (FEAST) controllers.  Existing controllers should continue
 to work as they have.  Added the card's memory to the probe message.
 
 | 
| 1.22 |  | 20-Feb-2000 | enami | branches:  1.22.4; Fix thinko in previous commit.
 
 | 
| 1.21 |  | 09-Feb-2000 | enami | - No need to keep track enable/disable state here.  The smc91cxx.c also manages it.
 - Disestablish an interrupt when failed to enable card.
 - Don't say I'm enabled if failed to enable card.
 
 | 
| 1.20 |  | 04-Feb-2000 | cgd | replace the *_lookup table entry match/lookup functions in all of these drivers with a single common function (which supports tables
 of variable-sized structures).  Things are mostly as they were before:
 tables are terminated by entry with NULL name, etc.  There's also
 the ability to call a driver-specific match function which can be used
 to augment the table lookup.
 
 | 
| 1.19 |  | 02-Feb-2000 | itojun | if_detach for sm/pcmcia. with addition of resource allocation flags in softc (to DTRT on detach).
 
 | 
| 1.18 |  | 28-Sep-1999 | thorpej | branches:  1.18.2; Sync the ASCII Ethernet address decoder with mhzc.c.  New version by
 Chuck Cranor is more efficient and fixes a bug which would have caused
 data corruption in some cases.
 
 | 
| 1.17 |  | 28-Sep-1999 | thorpej | Don't handle the Megaherz XJEM3336 here. 
 | 
| 1.16 |  | 19-Feb-1999 | abs | Add ID for IBM 'PCMCIA Portable CD-ROM Drive'. We only have one of these and it may be broken (it choked under Windows), but it at least now probes.
 
 | 
| 1.15 |  | 18-Nov-1998 | thorpej | Now that the *_activate() functions don't do things which are attachment specific, move them into the chipset drivers.
 
 | 
| 1.14 |  | 18-Nov-1998 | thorpej | Move the i/o window unmap and i/o space free into *_detach(). 
 | 
| 1.13 |  | 17-Nov-1998 | thorpej | Add detach and activate entry points.  Mostly functional except for #ifdef notyet'd if_delref() and if_detach(), which will be fixed up
 when that code is committed.
 
 | 
| 1.12 |  | 08-Oct-1998 | thorpej | Fix some whitespace lossage. 
 | 
| 1.11 |  | 15-Aug-1998 | thorpej | Sigh, #if 0 the SMC 8020BT EtherEZ entry until we know what the product ID really is.
 
 | 
| 1.10 |  | 15-Aug-1998 | thorpej | Take a stab at supporting the SMC 8020BT EtherEZ.  (Similar to the Megahertz; Ethernet address is stored in third CIS info string, but
 may also be in the FUNCE/LANNID tuple.)
 
 | 
| 1.9 |  | 15-Aug-1998 | thorpej | In the NewMedia callback, make sure we have a LAN Node ID tuple. 
 | 
| 1.8 |  | 15-Aug-1998 | thorpej | Use the symbolic name for the tuple code used to find the Ethernet address.
 
 | 
| 1.7 |  | 14-Aug-1998 | thorpej | Add support for the NewMedia BASICS Ethernet.  Device info provided by Stefan Grefen in PR #5902.
 
 | 
| 1.6 |  | 19-Jul-1998 | christos | Add a devlist2h.awk so that we don't sprinkle the same constants over each device driver file and use it.
 
 | 
| 1.5 |  | 05-Jul-1998 | jonathan | defopt NS, NSIP. 
 | 
| 1.4 |  | 05-Jul-1998 | jonathan | defopt INET, NETATALK. 
 | 
| 1.3 |  | 09-Jun-1998 | thorpej | Nuke __BROKEN_INDIRECT_CONFIG. 
 | 
| 1.2 |  | 16-Oct-1997 | thorpej | Pull marc-pcmcia branch down from trunk. 
 | 
| 1.1 |  | 11-Aug-1997 | thorpej | branches:  1.1.2; file if_sm_pcmcia.c was initially added on branch marc-pcmcia.
 
 | 
| 1.1.2.5 |  | 16-Oct-1997 | thorpej | Don't establish our interrupt hander at attach time.  Instead, establish it in the enable hook, and disestablish it in the disable hook.  This gives
 us two wins:
 
 - Allows us to more fairly allocate an interrupt after other
 devices which can't do dynamic allocation have hooked up
 theirs.
 
 - In the event the default interrupt allocation scheme is bad,
 this allows us to bring an interface down, patch a kernel
 variable (eventually, run a program that does the right
 thing for us) to set up an interrupt allocation scheme suitable
 for our laptop model, bring the interface back up, and have
 the Right Thing happen.
 
 | 
| 1.1.2.4 |  | 14-Oct-1997 | thorpej | Explicitly align the allocated i/o space region to the size of the allocation. This was previously implied, but we must explicitly specify it since some
 cards may have more strict alignment requirements.
 
 | 
| 1.1.2.3 |  | 29-Sep-1997 | thorpej | Add power management hooks. 
 | 
| 1.1.2.2 |  | 23-Aug-1997 | thorpej | Update for changes to pcmcia function manipulation. 
 | 
| 1.1.2.1 |  | 11-Aug-1997 | thorpej | Add a PCMCIA attachment for the smc91cxx ethernet driver ("sm"), written from scratch by me.  Currently supports the Megahertz X-JACK PCMCIA Ethernet
 Adapter.
 
 | 
| 1.18.2.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.22.4.1 |  | 06-Aug-2000 | briggs | Pullups approved by thorpej -- Add MII support to smc91cxx driver.  This is supported for the 91c100
 and 91c100FD (FEAST) controllers.  Existing controllers should continue
 to work as they have.  Added the card's memory to the probe message.
 
 Make sure that we do not call bus_space_*_multi_* with zero count.
 Use bus_space_read/write_multi_stream_2 for FIFO instead of bsr/w_multi_2.
 
 | 
| 1.23.2.5 |  | 18-Oct-2002 | nathanw | Catch up to -current. 
 | 
| 1.23.2.4 |  | 20-Jun-2002 | nathanw | Catch up to -current. 
 | 
| 1.23.2.3 |  | 14-Nov-2001 | nathanw | Catch up to -current. 
 | 
| 1.23.2.2 |  | 21-Sep-2001 | nathanw | Catch up to -current. 
 | 
| 1.23.2.1 |  | 24-Aug-2001 | nathanw | Catch up with -current. 
 | 
| 1.24.2.4 |  | 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.24.2.3 |  | 23-Jun-2002 | jdolecek | catch up with -current on kqueue branch 
 | 
| 1.24.2.2 |  | 10-Jan-2002 | thorpej | Sync kqueue branch with -current. 
 | 
| 1.24.2.1 |  | 13-Sep-2001 | thorpej | Update the kqueue branch to HEAD. 
 | 
| 1.26.8.1 |  | 20-Jun-2002 | gehenna | catch up with -current. 
 | 
| 1.30.6.4 |  | 04-Feb-2005 | skrll | Sync with HEAD. 
 | 
| 1.30.6.3 |  | 21-Sep-2004 | skrll | Fix the sync with head I botched. 
 | 
| 1.30.6.2 |  | 18-Sep-2004 | skrll | Sync with HEAD. 
 | 
| 1.30.6.1 |  | 12-Aug-2004 | skrll | Sync with HEAD. 
 | 
| 1.44.6.1 |  | 12-Feb-2005 | yamt | sync with head. 
 | 
| 1.44.4.1 |  | 29-Apr-2005 | kent | sync with -current 
 | 
| 1.45.6.2 |  | 27-Oct-2007 | yamt | sync with head. 
 | 
| 1.45.6.1 |  | 30-Dec-2006 | yamt | sync with head. 
 | 
| 1.46.22.2 |  | 10-Dec-2006 | yamt | sync with head. 
 | 
| 1.46.22.1 |  | 22-Oct-2006 | yamt | sync with head 
 | 
| 1.46.20.1 |  | 18-Nov-2006 | ad | Sync with head. 
 | 
| 1.48.28.1 |  | 25-Oct-2007 | bouyer | Sync with HEAD. 
 | 
| 1.48.24.1 |  | 06-Nov-2007 | matt | sync with HEAD 
 | 
| 1.48.22.1 |  | 26-Oct-2007 | joerg | Sync with HEAD. 
 Follow the merge of pmap.c on i386 and amd64 and move
 pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
 code to restore CR4 before jumping back into kernel space as the large
 page option might cover that.
 
 | 
| 1.48.8.1 |  | 23-Oct-2007 | ad | Sync with head. 
 | 
| 1.49.16.1 |  | 02-Jun-2008 | mjf | Sync with HEAD. 
 | 
| 1.50.4.3 |  | 16-May-2009 | yamt | sync with head 
 | 
| 1.50.4.2 |  | 04-May-2009 | yamt | sync with head. 
 | 
| 1.50.4.1 |  | 16-May-2008 | yamt | sync with head. 
 | 
| 1.50.2.1 |  | 18-May-2008 | yamt | sync with head. 
 | 
| 1.51.14.1 |  | 13-May-2009 | jym | Sync with HEAD. 
 Commit is split, to avoid a "too many arguments" protocol error.
 
 | 
| 1.51.8.1 |  | 28-Apr-2009 | skrll | Sync with HEAD. 
 | 
| 1.54.22.2 |  | 03-Dec-2017 | jdolecek | update from HEAD 
 | 
| 1.54.22.1 |  | 20-Nov-2012 | tls | Resync to 2012-11-19 00:00:00 UTC 
 | 
| 1.54.12.1 |  | 30-Oct-2012 | yamt | sync with head 
 | 
| 1.55.14.1 |  | 09-Jul-2016 | skrll | Sync with HEAD 
 |