We are debugging a pci board and met some difficulties.

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View

We are debugging a pci board and met some difficulties. The main chip is,
the local device is SJA1000. We used 8-bit local bus(LAD[7:0]) as
data-address multiplex mode, and using this local bus for PCI to communicate
with SJA1000.

The difficulty I met is I caní»t read the register of SJA1000. I want to
know the possible cause and how to solve it. And I want to know how to
configure the í░Local Address Space (0~1) Bus Region Descriptor Register
Descriptioní▒, maybe there is some wrong with the timing between the PCI9052
and SJA1000.

Thanks for your time,

lynch







Re: We are debugging a pci board and met some difficulties.

Quoted text here. Click to load it


I don't know the PCI9052. The Infineon PITA  chip used on the PCI board we
support with can4linux need some extra commands to be written to registers
before you can access the external memory:
            ptr = (unsigned long)ioremap(PCI_BASE_ADDRESS0(pdev), 256);
            /* enable memory access */
            writel(0x04000000, ptr + 0x1c);
the same for enabling interrupt processing. You should careful read the
PCI9052 manual or look for another Linux driver using this PCI chip.

Getting all the board specific information is now very easy. just call
        struct  pci_dev *pdev = NULL;
        pdev = pci_find_device (PCI_VENDOR, PCI_DEVICE, pdev);
and the structure pdev is pointing to contains all what you need to know.

If it's not your board and no other technical reasons, consider to use a
board already supported by a driver.

regards
  Heinz

Site Timeline