I've changed to __raw_writel in all ivtv releases. It should be OK now
for ppc.
Hans
On Thursday 09 November 2006 23:17, Ricardo Lugo wrote:
> On Nov 7, 2006, at 10:44 PM, Tyler Trafford wrote:
> > I'm pretty sure those writel's were there to fix something....
> > *checks*
> >
> > Refer to these:
> >
> > http://ivtvdriver.org/trac/changeset/3089
> > http://ivtvdriver.org/trac/changeset/3152
>
> I'm not sure what the agreement is on 'writel()' at the moment in
> this thread, but I'd just like to state that its use in the
> changesets above breaks the loading of firmware on big-endian
> architectures (notably PPC). Releases since those changesets above
> fail at insmod with the error 'encoder mailbox not found' although
> the firmware is located, read, and attempted to be loaded.
>
> If the driver does not revert to memcpy/memcpy_toio (as has been
> suggested) could I recommend the use of '__raw_writel()' instead?
>
> writel on most big-endian architectures does a byteswap operation to
> ensure the data is available to the little-endian PCI bus in its
> correct order, but for some reason the firmware is already little-
> endian beforehand. Using __raw_writel does not run a byteswap on the
> data, and the firmware gets loaded correctly - even on little-endian
> machines.
>
> - Ricardo
>
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-devel
_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel