Thread (4 messages) 4 messages, 2 authors, 2015-04-22

Re: [PATCH v2] spi: fsl-spi: use of_iomap() to map parameter ram on CPM1

From: Jonas Gorski <hidden>
Date: 2015-04-22 20:46:38
Also in: linux-spi, lkml

Hi Christophe,

On Wed, Apr 22, 2015 at 4:17 PM, Christophe Leroy
[off-list ref] wrote:
On CPM2, the SPI parameter RAM is dynamically allocated in the
dualport RAM whereas in CPM1, it is statically allocated to a default
address with capability to relocate it somewhere else via the use of
CPM micropatch. The address of the parameter RAM is given by the boot
loader and expected to be mapped via of_iomap()

In the current implementation, in function fsl_spi_cpm_get_pram()
there is a confusion between the SPI_BASE register and the base of the
SPI parameter RAM. Fortunatly, it is working properly with MPC866 and
MPC885 because they do set SPI_BASE, but on MPC860 and other old
MPC8xx that doesn't set SPI_BASE, pram_ofs is not properly set.
Also, the parameter RAM is not properly mapped with of_iomap() as it
should but still gets accessible by chance through the full RAM which
is mapped from somewhere else.

This patch applies to the SPI driver the same principle as for the
CPM UART: when the CPM is of type CPM1, we simply do an of_iomap() of
the area provided via the device tree.

Signed-off-by: Christophe Leroy <redacted>

---
 v2: Use devm_ioremap_resource() instead of_iomap()
Your subject and commitlog still talk about using of_iomap(), you need
to update them too.


Regards
Jonas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help