Home | History | Annotate | Download | only in include
History log of /src/sys/arch/x68k/include/bus.h
RevisionDateAuthorComments
 1.26  23-Sep-2019  skrll Provide PRIxBUSADDR, PRIxBUSSIZE, PRIuBUSSIZE, and PRIxBSH for all arches
to follow arm and (generic) mips.

Reviewed by christos.
 1.25  13-Oct-2012  tsutsui branches: 1.25.38;
struct device * -> device_t (from chs@)
 1.24  24-Mar-2011  tsutsui branches: 1.24.4; 1.24.14;
Fix typo in comment.
 1.23  24-Mar-2011  tsutsui - make X68K_BUS_PERFORMANCE_HACK part default
- use volatile rather than dummy __asm() statements to avoid optimization

Tested on X68030.
 1.22  19-Mar-2010  tsutsui branches: 1.22.2;
ANSI'fy, misc KNF.
 1.21  19-Mar-2010  tsutsui u_intN_t -> uintN_t
 1.20  19-Mar-2010  tsutsui bus_space_write_region_N() should also take a const buffer.
 1.19  19-Mar-2010  he Constify the buffer pointer argument of the _bus_space_write_multi_<n>
inline functions, so that this builds again. (Otherwise, ne2000.c driver
would now fail to build.)
 1.18  28-Apr-2008  martin branches: 1.18.20; 1.18.22;
Remove clause 3 and 4 from TNF licenses
 1.17  04-Mar-2007  christos branches: 1.17.40; 1.17.42; 1.17.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.16  21-Feb-2007  mrg add a pair of new bus_dma(9) functions:
int _bus_dmatag_subregion(bus_dma_tag_t tag,
bus_addr_t min_addr,
bus_addr_t max_addr,
bus_dma_tag_t *newtag,
int flags)
void _bus_dmatag_destroy(bus_dma_tag_t tag)

that allow a (normally broken/limited) device to restrict the bus address
range it can talk to. this is used by bce(4) to limit DMA addresses to
1GB range, the maximum the chip can address.

all this is from Yorick Hardy <yhardy@uj.ac.za> with input from several
people on tech-kern.

XXX: bus_dma(9) needs an update still.
 1.15  16-Feb-2006  perry branches: 1.15.20;
Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.14  11-Dec-2005  christos branches: 1.14.2; 1.14.4; 1.14.6;
merge ktrace-lwp.
 1.13  09-Mar-2005  matt branches: 1.13.4;
Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create). dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
 1.12  18-Jan-2005  chs branches: 1.12.2;
de-__P, remove register, ansify.
 1.11  15-Jun-2003  fvdl branches: 1.11.2; 1.11.10;
Handle 64bit DMA addresses on PCI for platforms that can (currently only
enabled on amd64). Add a dmat64 field to various PCI attach structures,
and pass it down where needed. Implement a simple new function called
pci_dma64_available(pa) to test if 64bit DMA addresses may be used.
This returns 1 iff _PCI_HAVE_DMA64 is defined in <machine/pci_machdep.h>,
and there is more than 4G of memory.
 1.10  28-Jan-2003  kent Introduce BUS_DMA_NOCACHE, and bus_dmamem_map() of i386 supports it.
 1.9  11-Nov-2001  isaki Support BUS_SPACE_MAP_SHIFTED_EVEN for bus_space_map().
Now BUS_SPACE_MAP_SHIFTED means BUS_SPACE_MAP_SHIFTED_ODD.
It is needed for Nereid Ethernet.
 1.8  19-Jul-2001  thorpej branches: 1.8.4; 1.8.6;
Add BUS_DMA_READ and BUS_DMA_WRITE flags, that hint the back-end
at dmamap load time that the mapping will be used for a unidirectional
transfer of the specified direction.
 1.7  07-Mar-2001  thorpej branches: 1.7.2;
Add the BUS_DMA_STREAMING flag.
 1.6  29-Jan-2001  itohy branches: 1.6.2;
Performance hack.
Mainly for the Neptune-X Ethernet adaptor,
and improves ftp(1) speed by ~10%.

get: 219 KB/s -> 246 KB/s
put: 226 KB/s -> 247 KB/s
(X68030, MC68030 25MHz)
 1.5  26-Jun-2000  simonb Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes. Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
 1.4  25-Jan-2000  drochner branches: 1.4.4;
define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
 1.3  23-Mar-1999  drochner branches: 1.3.8;
Add a macro to check for sufficient pointer alignment in bus.h context,
"BUS_SPACE_ALIGNED_POINTER()".
Equal to the param.h "ALIGNED_POINTER()" normally, but obeys additional
requirements of the bus_space_xxx_n() macros. (BUS_SPACE_DEBUG)
 1.2  16-Mar-1999  minoura Merged minoura_x68k_bus_h branch.
 1.1  23-Dec-1998  minoura branches: 1.1.2;
file bus.h was initially added on branch minoura_x68k_bus_h.
 1.1.2.4  14-Mar-1999  minoura Use a single (inline) function instead of refering the bus_space switch.
 1.1.2.3  13-Feb-1999  minoura Implemented BUS_SPACE_MAP_SHIFTED.
Some of the devices are mapped only on the odd addresses for hardware
simplicity. To share drivers with other platforms, this should be
made transparent through the bus_space layer.
 1.1.2.2  30-Jan-1999  minoura Added DMAC driver.
 1.1.2.1  23-Dec-1998  minoura First import of bus_space implementation for x68k port.
 1.3.8.3  12-Mar-2001  bouyer Sync with HEAD.
 1.3.8.2  11-Feb-2001  bouyer Sync with HEAD.
 1.3.8.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.4.4.2  06-Jan-2002  he Pull up revision 1.9 (requested by isaki):
Support mapping devices with BUS_SPACE_MAP_SHIFTED_EVEN.
 1.4.4.1  30-Jun-2000  simonb Pull up mmap paddr_t/off_t changes from trunk.
 1.6.2.1  09-Apr-2001  nathanw Catch up with -current.
 1.7.2.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.7.2.1  03-Aug-2001  lukem update to -current
 1.8.6.2  08-Jan-2002  nathanw Catch up to -current.
 1.8.6.1  19-Jul-2001  nathanw file bus.h was added on branch nathanw_sa on 2002-01-08 00:28:43 +0000
 1.8.4.1  12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.11.10.1  29-Apr-2005  kent sync with -current
 1.11.2.2  01-Apr-2005  skrll Sync with HEAD.
 1.11.2.1  24-Jan-2005  skrll Sync with HEAD.
 1.12.2.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.13.4.3  03-Sep-2007  yamt sync with head.
 1.13.4.2  26-Feb-2007  yamt sync with head.
 1.13.4.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.20.2  12-Mar-2007  rmind Sync with HEAD.
 1.15.20.1  27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.17.44.2  11-Aug-2010  yamt sync with head.
 1.17.44.1  16-May-2008  yamt sync with head.
 1.17.42.1  18-May-2008  yamt sync with head.
 1.17.40.1  02-Jun-2008  mjf Sync with HEAD.
 1.18.22.2  21-Apr-2011  rmind sync with head
 1.18.22.1  30-May-2010  rmind sync with head
 1.18.20.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.22.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.24.14.1  20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.24.4.1  30-Oct-2012  yamt sync with head
 1.25.38.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411

RSS XML Feed