Problem w/driver writing to User Space

David Ashley dash at
Thu Jan 3 17:05:58 EST 2002

Didn't this come up before? I thought Dan or someone answered this very

You do the ioremap in kernel space, so the resultant address can't be used
as an address to put_user. Just treat it as a pointer directly:

*(UINT32 *)(plxPtr+ PCI9054_EEPROM_CTRL_STAT) |= (1<<16); // turn on
*(UINT32 *)(plxPtr+ PCI9054_EEPROM_CTRL_STAT) &= ~(1<<16); //turn off

If it ever worked I would think it is just a fluke, maybe you're forcing
the user space to appear like the kernel space.


** Sent via the linuxppc-embedded mail list. See

More information about the Linuxppc-embedded mailing list