Subject: Enhancements to bus_space_barrier
To: None <tech-kern@netbsd.org>
From: None <eeh@netbsd.org>
List: tech-kern
Date: 10/19/2001 02:52:02
After going through the specification for bus_space_barrier()
for the fifth time, and finding it lacking, I'd like to propose
the following enhancement:

Define the `flag' parameter to bus_space_barrier() in terms of
the two operations being ordered.

	BUS_SPACE_BARRIER_READ_READ	read before read
	BUS_SPACE_BARRIER_READ_WRITE	read before write
	BUS_SPACE_BARRIER_WRITE_WRITE	write before write
	BUS_SPACE_BARRIER_WRITE_READ	write before read
	BUS_SPACE_BARRIER_SYNC		exception barrier

These can be or-ed together.  The old operations would be defined
as follows:

	BUS_SPACE_BARRIER_READ		BUS_SPACE_BARRIER_READ_READ
	BUS_SPACE_BARRIER_WRITE		BUS_SPACE_BARRIER_WRITE_WRITE

	BUS_SPACE_BARRIER_READ|BUS_SPACE_BARRIER_WRITE

		I'd like to deprecate this one.  But I suppose it
		should become:

		BUS_SPACE_BARRIER_READ_READ|
		BUS_SPACE_BARRIER_READ_WRITE|
		BUS_SPACE_BARRIER_WRITE_READ|
		BUS_SPACE_BARRIER_WRITE_WRITE

Eduardo