.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "SBA_MARK_INVALID" "9" "09 October 2005" "" ""
.SH NAME
sba_mark_invalid \- invalidate one or more IO PDIR entries
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
SBA_INLINE void sba_mark_invalid (struct ioc * \fIioc\fB, dma_addr_t \fIiova\fB, size_t \fIbyte_cnt\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIioc\fB\fR
IO MMU structure which owns the pdir we are interested in.
.TP
\fB\fIiova\fB\fR
IO Virtual Address mapped earlier
.TP
\fB\fIbyte_cnt\fB\fR
number of bytes this mapping covers.
.SH "DESCRIPTION"
.PP
Marking the IO PDIR entry(ies) as Invalid and invalidate
corresponding IO TLB entry. The PCOM (Purge Command Register)
is to purge stale entries in the IO TLB when unmapping entries.
.PP
The PCOM register supports purging of multiple pages, with a minium
of 1 page and a maximum of 2GB. Hardware requires the address be
aligned to the size of the range being purged. The size of the range
must be a power of 2. The ``Cool perf optimization'' in the
allocation routine helps keep that true.