This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Configuring PCI devices


I am trying to write a "device driver" for the Tundra Universe II chip. I am using a "public" linux driver for guidance. I was trying to use cyg_pci_read_uint32 to read the custom configuration registers for this chip, but found that was not working. On further investigation, I realized that offset is only a cyg_uint8. Since I am trying to access registers with an offset greater than 256, what is the preferred method of accessing these?

The Linux code dereferences from the bar[0] address directly, then adds the offset, and reads the value with a readl macro call. Is that "acceptable" under eCos. I am writing this for a i386 pc platform. But if its possible to make it "cross platformable" I'm willing to work within the eCos HAL restrictions.

Thanks
David Brennan

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]