.\" $NetBSD: empb.4,v 1.13 2017/02/17 22:24:45 christos Exp $
.\"
.\" Copyright (c) 2012 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to The NetBSD Foundation
.\" by Radoslaw Kujawa.
.\"
.\" 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.
.\"
.\" 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 17, 2017
.Dt EMPB 4 amiga
.Os
.Sh NAME
.Nm empb
.Nd ELBOX Mediator 1200 PCI bridge driver
.Sh SYNOPSIS
.Cd "empb0 at zbus0"
.Cd "emmem0 at zbus0"
.Cd "empm0 at zbus0"
.Cd "pci* at empb0"
.Cd "options PCI_NETBSD_CONFIGURE"
.Sh DESCRIPTION
The
.Nm
driver provides support for the PCI bus present on Mediator 1200 bridge for
Amiga 1200.
.Sh HARDWARE
The
.Nm
driver supports the following hardware:
.Bl -tag -offset indent
.It ELBOX Mediator PCI 1200
.It ELBOX Mediator PCI 1200 LT2
.It ELBOX Mediator PCI 1200 LT4
.It ELBOX Mediator PCI 1200 SX
.It ELBOX Mediator PCI 1200 TX
.El
.Sh DIAGNOSTICS
.Bl -diag
.It empb: linear space mapping might not work
The PCI card driver is trying map memory space with the
.Dv BUS_SPACE_MAP_LINEAR
flag.
Due to the windowed design of Mediator, it is expected to fail miserably if
normal memory space access methods (e.g., pointer dereference) are used
instead of
.Xr bus_space 9
methods.
.It empb%d: couldn't find memory space, check your WINDOW jumper
PCI memory space access is disabled on a hardware level.
The
.Nm
driver will work anyway, but only PCI I/O space will be accessible.
To enable memory space set the WINDOW jumper to 4MB or 8MB.
.El
.Sh SEE ALSO
.Xr amiga/em4k 4 ,
.Xr amiga/mppb 4 ,
.Xr amiga/p5pb 4 ,
.Xr pci 4
.Sh HISTORY
The
.Nm
device first appeared in
.Nx 7.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was written by
.An Radoslaw Kujawa Aq Mt radoslaw.kujawa@gmail.com .
It was developed using information obtained through reverse engineering
by
.An Frank Wille
and
.An Radoslaw Kujawa .
The authors have no access to official
documentation (which is only available under NDA).
.Sh CAVEATS
Mediator ZIV might work but is untested.
.Sh BUGS
DMA to host memory is not supported.
This is a hardware limitation.
It is possible to implement DMA through bounce buffers in graphics card memory,
but this needs further research.