Hello, The SPI framework provided by u-boot (spi_setup_slave, spi_xfer and the like) cannot currently be used to read the environment from SPI devices. The reason is that all the drivers implement spi_setup_slave using malloc(), and malloc() cannot be used when env_init is called - this happens before mem_alloc_init.
I'm wondering what would be a proper fix for this. I don't think it is OK to say 'drivers reading the environment should not use the SPI framework', as those drivers might be used to do others things - that would make the SPI framework unsuitable for (e.g.) any SPI EEPROM. The only sane alternative I can see is that we introduce spi_setup_slave_$whatever, which would work the same way as spi_setup_slave, with the difference that it should be given caller-allocated storage, so that we avoid the use for malloc(). Thoughts ? Regards, -- Albin Tonnerre, Free Electrons Kernel, drivers and embedded Linux development, consulting, training and support. http://free-electrons.com _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot