[parisc-linux] Re: CCIO dma io_command and related io_tlb format questions.

Grant Grundler grundler at parisc-linux.org
Fri Oct 20 09:50:59 MDT 2006


On Fri, Oct 20, 2006 at 12:04:47PM +0000, Joel Soete wrote:
> mmm offhand wasn't there limits in ccio page size like in ia64 sba comments:
> >/*
> >** The zx1 IOC supports 4/8/16/64KB page sizes (see TCNFG register)

I don't remember.
ia64 sba is the 3rd generation IO controller.
U2 (ccio) is the first generation.
Sorry, I'm not interested in comparing them.

> >Uhm....sounds reasonable to me. All I know is I believe the existing
> >code use of chain_id is correct.
> >
> Just come back here shortly: the computed values with my hw config (256Mb 
> and 2 ccio) are
> > Found U2 at 0xfff88000
> > ccio_ioc_init() hpa 0x00008000 mem 256Mb IOV 128Mb (27 bits)
> >  base 10740000
> > ccio_ioc_init() res_size 0x1000
> >  chainid_shift 0x13
> >  chainid_mask 0x7f80000

This looks correct.

> > Found U2 at 0xfff8a000
> > ccio_ioc_init() hpa 0x0000a000 mem 256Mb IOV 128Mb (27 bits)
> >  base 10780000
> > ccio_ioc_init() res_size 0x1000
> >  chainid_shift 0x13
> >  chainid_mask 0x7f80000
> 
> otoh, applying this other formula [io_chain_id_mask = (~(CHAINID_SIZE -1)); 
> with CHAINID_SIZE = (1UL << ioc->chainid_shift)], I got:
> >  chainid_mask 0xfff80000

This second chainid_mask is 13 bits wide.
Remember that the mask can only be 8 bits wide for ccio.

grant



More information about the parisc-linux mailing list