From: Greg B. <gb...@po...> - 2000-10-12 06:24:10
|
NIIBE Yutaka wrote: > > Greg Banks wrote: > > This means that PCMCIA IO-space mappings are loaded > > into the TLB in exactly the same way as other mappings. > > In particular, wired TLB entries are *not* used. But > > the downside is a small number of extra instructions in > > the main path for all TLB misses (PCMCIA and non-PCMCIA > > alike). > > > > My question is, is this approach acceptable? Is the > > performance hit in the TLB miss handler worth freeing > > up the TLB slots when PCMCIA is not being heavily used? > > I think that wired TLB entry is better. Some (or most) drivers don't > expect TLB fault would occur with I/O access functions. Well, it doesn't seem to be hurting the IDE driver. Also, I've recently seen a lot of WinCE driver code and it uses virtual mappings to access *all* IO registers, not just PCMCIA IO-space, despite being able to do it directly for most devices. There's no special support in the device drivers for handling TLB misses during register accesses; it seems to just work. Anyway I'll look at reworking the mapping code to use wired TLB entries. Greg. -- These are my opinions not PPIs. |