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
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
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