iowritexx() not always working for me

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I'm writing a driver for a PCI card and having some trouble accessing the memory mapped registers on the board.

I use:

pci_resource_start(..) and pci_resource_len(..) to get the starting address and size of the memory mapped registers.
pci_resource_flags(...) returns IORESOURCE_MEMORY and IORESOURCE_SHADOWABLE

request_mem_region() and ioremap_nocache() both succeed.

when I call iowrite32(...) to write a 4 byte value, it succeeds on the first attempt. when I call iowrite16(...) to write a 2 byte value, it succeeds on the 2nd attempt (i.e I have to call iowrite16(..) twice before the write happens) when I call iowrite8(...) to write a 1 byte value, it succeeds on the 4th attempt.

I have no idea why 2 byte and 1 byte writes don't work on the first attempt.

Sure could use some help here!

thanks in advance
Dhotiwalla


_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel


[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux