[U-Boot-Users] Solved SPI controller 880 hangs in u-boot 1.2.0 (writing to help someone)

I don't use the CFG_SPI_UCODE_PATCH but it seems that in u-boot-1.2.0 the setting spi->spi_rpbase = 0; done in order to disable relocation causes my 8xx controller to hang. I removed that line and it works fine. Because I consider myself the newbie(st) on the mailing list, I would like a comment from a competent people.
Here is the code snippet in ./cpu/mpc8xx/spi.c
#ifdef CFG_SPI_UCODE_PATCH spi = (spi_t *)&cp->cp_dpmem[spi->spi_rpbase]; #else spi = (spi_t *)&cp->cp_dparam[PROFF_SPI]; /* Disable relocation */ // spi->spi_rpbase = 0; #endif

In message F1F6EC0C8B75034F9E3A79FC85122E8E682964@aquib01a you wrote:
I don't use the CFG_SPI_UCODE_PATCH but it seems that in u-boot-1.2.0 the setting spi->spi_rpbase = 0; done in order to disable relocation causes my 8xx controller to hang. I removed that line and it works fine.
Correct. The 880 has a different way to implement uCode relocation.
Because I consider myself the newbie(st) on the mailing list, I would like a comment from a competent people.
Here is the code snippet in ./cpu/mpc8xx/spi.c
#ifdef CFG_SPI_UCODE_PATCH spi = (spi_t *)&cp->cp_dpmem[spi->spi_rpbase]; #else spi = (spi_t *)&cp->cp_dparam[PROFF_SPI]; /* Disable relocation */ // spi->spi_rpbase = 0; #endif
This breaks all older 8xx processors.
Best regards,
Wolfgang Denk
participants (2)
-
DI BACCO ANTONIO - technolabs
-
Wolfgang Denk