[PATCH] arm64: dts: marvell: add unique identifiers for Armada A8k SPI controllers

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Tue Nov 8 08:48:51 PST 2016


On Tue,  8 Nov 2016 17:31:32 +0100, Marcin Wojtas wrote:
> Enabling SPI controllers, which are attached to different busses
> inside an SoC, may result in overlapping enumeration and cause
> sysfs registration failure. Example log after enabling two
> controllers on Armada 8040 SoC with same identifiers:
> [    3.740415] sysfs: cannot create duplicate filename
> '/class/spi_master/spi0'
> [    3.747510] ------------[ cut here ]------------
> [    3.752145] WARNING: at fs/sysfs/dir.c:31
> [...]
> [    4.002299] orion_spi: probe of f4700600.spi failed with error -17
> spi-orion driver offers dedicated DT property ('cell-index'), that
> allow setting unique identifiers. Recently added support for CP110-slave
> HW block introduced two new SPI controllers' nodes with same ID as
> ones from CP110-master.
> This commit fixes the issue by assigning different 'cell-index' values
> for CP110-slave SPI controllers.
> Fixes: 4eef78a0091b ("arm64: dts: marvell: add description for the slave
> CP110 in Armada 8K")
> Signed-off-by: Marcin Wojtas <mw at semihalf.com>

It's sad that we need to hardcode those indexes in the Device Tree
(which by no means are a description of the HW by the way), but that's
what the SPI framework expects I believe. Therefore:

Acked-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>

Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering

More information about the linux-arm-kernel mailing list