136 lines
4.7 KiB
Groff
136 lines
4.7 KiB
Groff
.\" $NetBSD: mk48txx.4,v 1.9 2003/02/14 15:20:19 grant Exp $
|
|
.\"
|
|
.\" Copyright (c) 2000, 2002 The NetBSD Foundation, Inc.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" This code is derived from software contributed to The NetBSD Foundation
|
|
.\" by Paul Kranenburg.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the NetBSD
|
|
.\" Foundation, Inc. and its contributors.
|
|
.\" 4. Neither the name of The NetBSD Foundation nor the names of its
|
|
.\" contributors may be used to endorse or promote products derived
|
|
.\" from this software without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.Dd February 25, 2002
|
|
.Dt MK48TXX 4
|
|
.Os
|
|
.Sh NAME
|
|
.Nm mk48txx
|
|
.Nd
|
|
.Tn Mostek time-of-day clock driver
|
|
.Sh SYNOPSIS
|
|
.Fd #include \*[Lt]dev/ic/mk48txxreg.h\*[Gt]
|
|
.Cd "define mk48txx"
|
|
.Cd "file dev/ic/mk48txx.c mk48txx"
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
driver provides access to several models of
|
|
.Tn Mostek
|
|
time-of-day clock chips. Access methods to retrieve and set date and time
|
|
are provided through the
|
|
.Em TODR
|
|
interface defined in
|
|
.Xr todr 9 .
|
|
.Pp
|
|
To tie in instance of this device to the system, use
|
|
.Bd -literal
|
|
typedef uint8_t (*mk48txx_nvrd_t)(bus_space_tag_t bus_tag,
|
|
bus_space_handle_t bus_handle, int off);
|
|
typedef void (*mk48txx_nvwr_t)(bus_space_tag_t bus_tag,
|
|
bus_space_handle_t bus_handle, int off, uint8_t datum);
|
|
.Ed
|
|
.nr nS 1
|
|
.Ft "todr_chip_handle_t"
|
|
.Fn mk48txx_attach "bus_space_tag_t bus_tag" "bus_space_handle_t bus_handle" \
|
|
"const char *model" "int year0" \
|
|
"mk48txx_nvrd_t nvread" "mk48txx_nvwr_t nvwrite"
|
|
.Pp
|
|
.Bl -tag -width Dv -offset indent
|
|
.It Fa bus_tag
|
|
.It Fa bus_handle
|
|
Specify bus space access to the chip's non-volatile memory
|
|
.Pq including the clock registers .
|
|
.It Fa model
|
|
The chip model which this instance should serve. Must be one of
|
|
.Dq mk48t02 ,
|
|
.Dq mk48t08 ,
|
|
.Dq mk48t18
|
|
or
|
|
.Dq mk48t59 .
|
|
.It Fa year0
|
|
The actual year represented by the clock's
|
|
.Sq year
|
|
counter. This is generally dependent on the system configuration in which
|
|
the clock device is mounted. For instance, on Sun Microsystems machines
|
|
the convention is to have clock's two-digit year represent the year 1968.
|
|
.It Fa nvread
|
|
.It Fa nvwrite
|
|
Specify alternate access methods for reading resp. writing clock
|
|
device registers. The default, when
|
|
.Dv NULL
|
|
is passed as an access method, is to access the chip memory
|
|
.Pq and clock registers
|
|
as if they were direct-mapped with using the specified bus space.
|
|
.Pp
|
|
Otherwise, the driver will call the respective function to perform the
|
|
access, passing it the specified bus space and the offset
|
|
.Va off
|
|
of the chip memory
|
|
.Pq or clock register
|
|
location to be read from or written to, respectively.
|
|
.El
|
|
.Pp
|
|
Note that if the resulting date retrieved with the todr_gettime() method
|
|
is earlier that January 1, 1970, the driver will assume that the chip's
|
|
year counter actually represents a year in the 21st century. This
|
|
behaviour can be overridden by setting the global variable
|
|
.Va mk48txx_auto_century_adjust
|
|
to zero.
|
|
.Sh HARDWARE
|
|
The following models are supported:
|
|
.Pp
|
|
.Bl -tag -width indent -offset indent -compact
|
|
.It Tn Mostek MK48T02
|
|
.It Tn Mostek MK48T08
|
|
.It Tn Mostek MK48T18
|
|
.It Tn Mostek MK48T59
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr intro 4 ,
|
|
.Xr todr 9
|
|
.Sh HISTORY
|
|
The
|
|
.Nm mk48txx
|
|
driver first appeared in
|
|
.Nx 1.5 .
|
|
.Sh AUTHORS
|
|
The
|
|
.Nm
|
|
driver was written by
|
|
.An Paul Kranenburg
|
|
.Aq pk@NetBSD.org .
|