PCI confusion
Dag Nygren
dag at newtech.fi
Fri Mar 9 02:54:28 EST 2001
Hi,
just spent some hours going through all
postings in the mailing list about PCI-setup,
but now i am even more confused....
The setup is:
Nonsupported (sofar) VME board with
a PreP address map and MPC107.
I have the board booting but the PCI-drivers
are all working through the I/O space and cannot see
the memoryspace of the PCI devices.
The questions I have are:
1. The I/O BAT:s are setup as follows:
BAT 0: 0x10000000 at 0x80000000 to virtual 0x80000000
BAT 1: 0x10000000 at 0xc0000000 to virtual 0xe0000000
ioremap_base = 0xe0000000
Are these OK ?
2. What is the right value for hose->pci_mem_offset ?
The physical 0xc0000000 or the address the processor sees
0xe0000000.
3. the driver I am using for testing (for the Tundra Universe) uses
the following construction:
baseaddr = ioremap(pci_resource_start(uni_pci_dev,0),
pci_resource_len (uni_pci_dev, 0));
Then request_mem_region() for the same resources.
Then pci_enable_device()
Then pci_set_master()
After this a access: temp = readl(baseaddr) will generate
an Oops with illegal access....
What am I doing wrong ?
My kernel is a stock 2.4.2 from ftp.kernel.org.
Many thanks for reading this
BRGDS
--
Dag Nygren email: dag at newtech.fi
Oy NewTech Ab phone: +358 9 8024910
Trasktorpet 3 fax: +358 9 8024916
02360 ESBO GSM: 0400-426312
FINLAND
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-dev
mailing list