Oops,
>So, yeah, let's teach ipaq-asic3.h how to handle both 32-bit and 16-bit
>buswidths.
>
>
That's eventually not as straightforward as I first thought...
Making different macros for different devices is fine, but the problem
the asic3_base module is common to all devices. If we stick to macros,
asic3_base can be compiled in 16 or 32 bit mode, but not both. Here are
the options I see now:
1. Switch between 16 or 32 according to a kernel configuration
setting. The big drawback is that we can't use the same kernel
image for hx4700 and other ASIC3 based iPAQs. Would this really be
an issue anyway?
2. Create an asic3_base16 module that would use the same OFFSET
macros as hx4700. Code would be duplicated though.
3. Make 16 or 32 bits a parameter to the asic3_base module, defaulted
to 32. However, this would imply significant changes in the code,
in particular to compute offsets at runtime instead of at compile
time.
At the moment, I prefer choice 1, because the changes to existing code
would be minimum.
Again, what do you think? Any other idea?
:-)
Michael.
-- Michael Opdenacker http://free-electrons.comReceived on Thu Feb 03 2005 - 14:14:24 EST
This archive was generated by hypermail 2.2.0 : Mon Jul 25 2005 - 17:21:03 EDT