Home | History | Annotate | Download | only in dev
History log of /src/sys/arch/sparc64/dev/auxio.c
RevisionDateAuthorComments
 1.27  20-Dec-2023  thorpej Remove unnecessary <sys/malloc.h>.
 1.26  14-Oct-2016  mlelstv the mutex is also used for fdc attachment, so initialize it also
for a kernel without BLINK option.
 1.25  06-Oct-2015  martin branches: 1.25.2;
Split auxio at ebus and auxio at sbus properly, so we can build kernels
without sbus support.
 1.24  24-Aug-2015  mrg convert auxio(4) to use a mutex for exclusion (this existing code didn't
really work for MP systems, anyway -- it only went to splhigh.)

various cleanups:
- remove unused AUXIO_SBUS
- make most functions static
- introduce auxio_{read,write}_led() frontends
- avoid a potential NULL deref in auxio_fd_control()

the text is 32 bytes smaller.
 1.23  11-Jul-2015  kamil Improve spelling: regsiter -> register

This change is non-functional.

Approved by <riastradh>, <pgoyette>
 1.22  02-Jun-2011  christos branches: 1.22.12; 1.22.30;
split auxio, ebus, psycho, sab.
 1.21  12-Mar-2011  nakayama branches: 1.21.2;
Remove implicit include <dev/sbus/sbusvar.h> from autoconf.h, and
add it explicitly in files depending on it.
 1.20  13-Jun-2008  cegger branches: 1.20.18; 1.20.24;
use device_lookup_private to get softc
 1.19  29-May-2008  mrg branches: 1.19.2;
remove clause #3 from my license where there are no other
copyright holders involved.
 1.18  17-Oct-2007  garbled branches: 1.18.16; 1.18.18; 1.18.20; 1.18.22;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.17  09-Jul-2007  ad branches: 1.17.10;
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
 1.16  06-Oct-2006  jnemeth branches: 1.16.8; 1.16.10; 1.16.16;
Initial support for floppy drives on sparc64. This has been tested
on an Ultra 2 and works fine, apart from formatting which is known
to be broken. It failed to work on an ebus machine. The ebus
support compiles fine, but I don't have hardware for testing. This
code is based on the sparc driver with hints from OpenBSD on how
to do the sbus and ebus attachments, along with help from martin@
and mrg@.

Initial commit approved by martin@

TODO:
- fix ebus support
- fix XXX issues
- check resource deallocation
- fix formatting
- merge remaining differences from sparc driver
- split out back end chip support
- have sparc driver use new common back end chip support
- adapt to newlock when branch is ready
- adapt to "disk-info" property dictionary
 1.15  13-Feb-2006  cdi branches: 1.15.14; 1.15.16;
ANSIfy: u_intN_t -> uintN_t, remove __P(), fix function definitions.
 1.14  11-Dec-2005  christos branches: 1.14.2; 1.14.4; 1.14.6;
merge ktrace-lwp.
 1.13  14-Oct-2004  bouyer branches: 1.13.12;
In auxio_blink(), only toggle the AUXIO_LED_LED bit, don't clear the others.
It looks like bit 3 control the on-board le's link test, clearing it breaks
the interface (no link detected on the remote end). bit 3 is defined as
AUXIO4M_LTE (link-test enable) for sun4m systems (maybe all the AUXIO4M_*
bits are valid on the Ultra/1 too ?).
Tested on Ultra/1 and Ultra/5, approved by Martin Husemann and Matthew Green.
Should fix port-sparc64/25039 by Lubomir Sedlacik.
 1.12  29-Sep-2004  mrg allow the LED blinker to be disabled via do_blink.
 1.11  15-Jul-2003  lukem branches: 1.11.4;
__KERNEL_RCSID()
 1.10  16-Jun-2003  heas branches: 1.10.2;
Define option BLINK in option file opt_auxio.h and include it in auxio.c.
approved by martin@
 1.9  02-Oct-2002  thorpej Add trailing ; to CFATTACH_DECL.
 1.8  01-Oct-2002  thorpej Use CFATTACH_DECL().
 1.7  27-Sep-2002  thorpej Declare all cfattach structures const.
 1.6  21-Mar-2002  eeh Add missing brace.
 1.5  20-Mar-2002  eeh Overhaul bus space.

bus_space_handle_t now holds an address and two ASIs, one for normal accesses
and one for streaming accesses. This allows to map individual handles
different ways, so some can use MMU bypass accesses and others use virtual
addresses. bus_space_map() will now create handles that use bypass accesses
unles BUS_SPACE_MAP_LINEAR is passed in. So only pass in BUS_SPACE_MAP_LINEAR
if you absolutely *need* to use bus_space_vaddr(). This removes at least one
extra level of indirection and should reduce TLB misses.

32-bit kernels have problems accessing 64-bit addresses, so they always use
virtual addresses.
 1.4  16-Mar-2002  mrg convert to using <dev/ebus/ebusvar.h> and it's struct member names.
 1.3  23-Oct-2001  pooka branches: 1.3.4;
declare variable used only with BLINK inside #ifdef BLINK to avoid
unused variable warning
 1.2  22-Oct-2001  mrg implement `options BLINK' for sparc64 for ebus & sbus. tested on a U2
(sbus) and a U5 (ebus).
 1.1  15-Apr-2000  mrg branches: 1.1.6; 1.1.10;
- auxio cleanup and sbus support.
- make GENERIC64 include GENERIC and set the 3 optoins it needs. suggested
by hubert feyrer.
- add a comment that we maybe should use the `bpp' driver, not the lpt, on
the ebus because the `bpp' driver does DMA already.
- ebus_attach_args got a member renamed
 1.1.10.3  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.1.10.2  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.10.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.6.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.1.6.1  15-Apr-2000  bouyer file auxio.c was added on branch thorpej_scsipi on 2000-11-20 20:26:41 +0000
 1.3.4.3  18-Oct-2002  nathanw Catch up to -current.
 1.3.4.2  01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.3.4.1  23-Oct-2001  nathanw file auxio.c was added on branch nathanw_sa on 2002-04-01 07:42:59 +0000
 1.10.2.4  19-Oct-2004  skrll Sync with HEAD
 1.10.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.10.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.10.2.1  03-Aug-2004  skrll Sync with HEAD
 1.11.4.1  16-Jan-2005  he Pull up revision 1.13 (requested by bouyer in ticket #924):
In auxio_blink(), only toggle the AUXIO_LED_LED bit, don't
clear the others. It looks like bit 3 control the on-board
le's link test, clearing it breaks the interface (no link
detected on the remote end). Bit 3 is defined as AUXIO4M_LTE
(link-test enable) for sun4m systems (maybe all the AUXIO4M_*
bits are valid on the Ultra/1 too?).
Tested on Ultra/1 and Ultra/5. Fixes PR#25039.
 1.13.12.3  03-Sep-2007  yamt sync with head.
 1.13.12.2  30-Dec-2006  yamt sync with head.
 1.13.12.1  21-Jun-2006  yamt sync with head.
 1.14.6.1  22-Apr-2006  simonb Sync with head.
 1.14.4.1  09-Sep-2006  rpaulo sync with head
 1.14.2.1  18-Feb-2006  yamt sync with head.
 1.15.16.1  22-Oct-2006  yamt sync with head
 1.15.14.1  18-Nov-2006  ad Sync with head.
 1.16.16.1  03-Oct-2007  garbled Sync with HEAD
 1.16.10.1  11-Jul-2007  mjf Sync with head.
 1.16.8.1  15-Jul-2007  ad Sync with head.
 1.17.10.1  06-Nov-2007  matt sync with HEAD
 1.18.22.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.18.20.1  04-May-2009  yamt sync with head.
 1.18.18.2  17-Jun-2008  yamt sync with head.
 1.18.18.1  04-Jun-2008  yamt sync with head
 1.18.16.2  29-Jun-2008  mjf Sync with HEAD.
 1.18.16.1  02-Jun-2008  mjf Sync with HEAD.
 1.19.2.1  18-Jun-2008  simonb Sync with head.
 1.20.24.1  06-Jun-2011  jruoho Sync with HEAD.
 1.20.18.2  12-Jun-2011  rmind sync with head
 1.20.18.1  21-Apr-2011  rmind sync with head
 1.21.2.1  23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.22.30.3  05-Dec-2016  skrll Sync with HEAD
 1.22.30.2  27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.22.30.1  22-Sep-2015  skrll Sync with HEAD
 1.22.12.1  03-Dec-2017  jdolecek update from HEAD
 1.25.2.1  04-Nov-2016  pgoyette Sync with HEAD

RSS XML Feed