Em Sat, 2 May 2020 20:33:14 +0300 Andy Shevchenko <andy.shevchenko@xxxxxxxxx> escreveu: > On Sat, May 2, 2020 at 8:04 PM Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> wrote: > > Em Sat, 2 May 2020 19:08:36 +0300 > > Andy Shevchenko <andy.shevchenko@xxxxxxxxx> escreveu: > > Yeah, the current issue sounds simple to solve, but I need to understand > > how an ACPI-based device would be calling regulator_register(). Using > > regulators with ACPI is new to me. I suspect that this should be done > > by ./arch/x86/platform/intel-mid, with of course doesn't have the needed > > bits for this board. Also, there is a dummy regulator driver for atomisp > > based boards (drivers/platform/x86/intel_atomisp2_pm.c). This one could > > be causing some issues too. > > > > The atomisp driver uses regulator_get() to turn on the sensors. > > It should use PMIC to get them. It took a while to make it right, but at least for PMIC TI, this is now working with this patch: https://git.linuxtv.org/mchehab/experimental.git/commit/?h=atomisp_v2.1&id=6c026db444d097d6df99597e07eb3575242e680e It turns that I needed to pick some missing bits from Yocto's tree, as the driver at staging was missing the parts for non-regulator PMICs. I suspect that the original idea there were to use the regulator framework for all power management (with IMHO, makes a lot of sense). I also had to enable the PMIC ACPI OpRegion with: CONFIG_CHT_DC_TI_PMIC_OPREGION=y And fix the PMIC region for PMIC TI. I didn't test the other types of PMIC supported by the driver. So, maybe some additional adjustments might be needed for other types. Thanks, Mauro