I am trying to interface TLC16C550C(externel UART chip) for DB1100 (using
it's daughter card connector for IO interfcae).
After we configure the static bus controller for requred chip select, we use
au_readl,au_writel port I/O functions.When the TLC16C550 is present, it the
test read/write look like working, but even when TLC16C550C is not
connected, read/write operations look like working.I think we have to
configure the I/O base address properly.
Following are the configureation of static buss controller uased for this
CPU Chip enable-2 ( Daugter card chip select is generated using au1100
ce2(LOW),addr-28(HIGH),addr27(HIGH), and addr26(LOW) )
Therefore we selected the following base address
physical base address 0xD 1800 0000 ( D - for DTY encoding for I/O device)
Chip select controll registers setting as follows
first 3 bit of mem_setcfg2 ( 0xB4001020 ) was set to 001 (DTY encoding)
mem_staddr2 (0xB4001028) was set to 0x11803FFF
vitual base address was obtained using ioremap function as follows
base_addrs=(u32)ioremap(0xD18000000,0x1000); to get 32 bit address
when do read/write opreation on base_addr, it generate requred chip select
(Daughter card CS) .But even the TLC16C550C is not connected , read/write
operation works as the TLC16C550 is connected. what I guis is address
wrongly maped or some wrong in chip slect configarations.
If anyone has done interfacing externel peripheral to au1100 static bus
controller please help me in this regards
Express yourself instantly with MSN Messenger! Download today it's FREE!