Hello, my understanding of PCI access and related TLB initialisation (from bootloader to OS) is as follow:- 1.typically in bootloader PCI bridge is initialised for IO amd MEM space windows. 2.also TLB entry is setup for virtual - > physical mapping. examplesake if my PCI memory window is at 0x40000000 . I would setup a TLB entry for this with appropiate index VPN and PFN. 3.now i am all set to access PCI space ..am i right..? now my question is that after OS comes up initially it calls tlb_flush_all() ..should it again explicitly initialise the TLB entries in xxx_setup().. if yes does the the following lines are doing the same.. offcourse adresses may have to changed in my BSP. /* map 0xe0000000 virtual to 0x40000000 phys for PCI */ write_32bit_cp0_register(CP0_WIRED, 0); /* clear any previous stuff */ add_wired_entry(0x01000017, 0x01040017,xe0000000,PM_16M); Best Regards, Atul __________________________________________________________ Give your Company an email address like ravi @ ravi-exports.com. Sign up for Rediffmail Pro today! Know more. http://www.rediffmailpro.com/signup/