On 01/17/2012 06:47 PM, Marek Vasut wrote:
On 01/17/2012 06:27 PM, Marek Vasut wrote:
I'll defer to Stefano on this one, since I did this in response
to his request:
>>
Right - and we already discussed in the past how to avoid to put
specific SOC code inside the driver. In fact, the cspi_regs structure
was already moved into the specific SOC header (imx-regs.h) - but the
definitions of the single bits of the registers are still inside the
driver, as well as the base address of the (e)cspi controllers.
They should also be moved - take into acoount by implementing your
changes for i.mx6
The struct cspi_regs is already present in mx31, mx35, and mx51 headers,
so I'm not breaking new ground here, only in the bitfield declarations.
>> <snip>
My interpretation of Stefano's intent is to clean up the driver at the
expense of extra defines in the arch-specific headers.
But they're all the same, right? So we have now the same structure defined
thrice?
Almost, but not quite: mx31 and mx35 both use the CSPI peripheral and have
one layout. mx5 and mx6 have the ECSPI peripheral, which has an extra
register "cfg" to control the polarity and phase of the signals.
Actually, that comment is wrong. The MX51 and MX53 have **both** CSPI and
ECSPI peripherals, but the existing code in mxc_spi only supports ECSPI.
The bitfields that my patches move into the imx-regs.h files are also
almost identical.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot