
On Thu, Aug 12, 2021 at 10:22:07PM +0100, Andre Przywara wrote:
On Thu, 12 Aug 2021 13:49:30 -0400 Tom Rini trini@konsulko.com wrote:
Hi Tom,
As I try and migrate more CONFIG symbols to be Kconfig only, I see that sunxi is still using the legacy I2C drivers. Is there something specific holding up migration? Thanks!
Do you mean a DM_I2C conversion, or just moving those base address symbols to Kconfig? The latter is rather easy, let me know if I should give it a shot.
For DM_I2C, it's the usual sunxi issue: we are using both: DM_I2C and DT based probing for U-Boot proper, and hardcoded CONFIG_ symbols for the SPL. *Some* boards need the set up the PMIC early (for increasing the CPU frequency or setting the proper DRAM voltage), so this needs to be done in the SPL. I don't know how to fix this "properly", but introducing DM (and DT) into the SPL is surely not worth the trouble. Alternatively we could have a separate, cut-down SPL-only driver, like we have for SPI (arch/arm/mach-sunxi/spl_spi_sunxi.c), but not sure that's really better.
If there is something in particular that annoys you about the situation, we could try to improve this particular issue instead? Moving the non-DM code into a separate file, maybe?
I'm working on the symbols now (since it gets tricky). The first example I pulled out was Hummingbird_A31 which does have legacy I2C and does not set DM_I2C, which is what set me down the more worrying path. If you can confirm that no, really, it's just SPL that's not using DM_I2C that's OK enough for now, we can sort out what the best but probably still unideal solution is long term for SPL.