Mailing List Archive

[PATCH v2] mfd: Kconfig: change INTEL_SOC_PMIC_CHTDC_TI to bool
The INTEL_SOC_PMIC_CHTDC_TI should be initialized early, before
loading the fbcon driver, as otherwise the i915 driver will
fail to configure pwm:

[ 13.674287] fb0: switching to inteldrmfb from EFI VGA
[ 13.682380] Console: switching to colour dummy device 80x25
[ 13.682468] i915 0000:00:02.0: vgaarb: deactivate vga console
[ 13.682686] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 13.685773] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ 13.686219] i915 0000:00:02.0: [drm] *ERROR* Failed to configure the pwm chip
[ 13.699572] [drm] Initialized i915 1.6.0 20200313 for 0000:00:02.0 on minor 0
[ 13.739044] fbcon: i915drmfb (fb0) is primary device
[ 14.037792] intel_soc_pmic_exec_mipi_pmic_seq_element: No PMIC registered
...
[ 24.621403] intel_pmic_install_opregion_handler: Ask to register OpRegion for bus ID=PMI2, HID=INT33F5
[ 24.630540] intel_pmic_install_opregion_handler: OpRegion registered

(some extra debug printk's were added to the above)

As suggested by Hans, this patch also addresses an issue with
the dependencies, as, for this driver to be a bool, it also
need the I2C core and the I2C_DESIGNWARE driver to be builtin.

Suggested-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
drivers/mfd/Kconfig | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 3fb480818599..b756860ae551 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -634,7 +634,7 @@ config INTEL_SOC_PMIC_CHTWC
config INTEL_SOC_PMIC_CHTDC_TI
tristate "Support for Intel Cherry Trail Dollar Cove TI PMIC"
depends on GPIOLIB
- depends on I2C
+ depends on I2C=y && I2C_DESIGNWARE_PLATFORM=y
depends on ACPI
depends on X86
select MFD_CORE
@@ -644,6 +644,10 @@ config INTEL_SOC_PMIC_CHTDC_TI
Select this option for supporting Dollar Cove (TI version) PMIC
device that is found on some Intel Cherry Trail systems.

+ This option is a bool as it provides an ACPI OpRegion which must be
+ available before any devices using it are probed. This option also
+ needs the designware-i2c driver to be builtin for the same reason.
+
config INTEL_SOC_PMIC_MRFLD
tristate "Support for Intel Merrifield Basin Cove PMIC"
depends on GPIOLIB
--
2.33.1
Re: [PATCH v2] mfd: Kconfig: change INTEL_SOC_PMIC_CHTDC_TI to bool [ In reply to ]
On Mon, 29 Nov 2021, Mauro Carvalho Chehab wrote:

> The INTEL_SOC_PMIC_CHTDC_TI should be initialized early, before
> loading the fbcon driver, as otherwise the i915 driver will
> fail to configure pwm:
>
> [ 13.674287] fb0: switching to inteldrmfb from EFI VGA
> [ 13.682380] Console: switching to colour dummy device 80x25
> [ 13.682468] i915 0000:00:02.0: vgaarb: deactivate vga console
> [ 13.682686] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
> [ 13.685773] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
> [ 13.686219] i915 0000:00:02.0: [drm] *ERROR* Failed to configure the pwm chip
> [ 13.699572] [drm] Initialized i915 1.6.0 20200313 for 0000:00:02.0 on minor 0
> [ 13.739044] fbcon: i915drmfb (fb0) is primary device
> [ 14.037792] intel_soc_pmic_exec_mipi_pmic_seq_element: No PMIC registered
> ...
> [ 24.621403] intel_pmic_install_opregion_handler: Ask to register OpRegion for bus ID=PMI2, HID=INT33F5
> [ 24.630540] intel_pmic_install_opregion_handler: OpRegion registered
>
> (some extra debug printk's were added to the above)
>
> As suggested by Hans, this patch also addresses an issue with
> the dependencies, as, for this driver to be a bool, it also
> need the I2C core and the I2C_DESIGNWARE driver to be builtin.
>
> Suggested-by: Hans de Goede <hdegoede@redhat.com>
> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
> ---
> drivers/mfd/Kconfig | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)

Applied, thanks.

--
Lee Jones [???]
Senior Technical Lead - Developer Services
Linaro.org ? Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
Re: [PATCH v2] mfd: Kconfig: change INTEL_SOC_PMIC_CHTDC_TI to bool [ In reply to ]
On Mon, 29 Nov 2021, Mauro Carvalho Chehab wrote:

> The INTEL_SOC_PMIC_CHTDC_TI should be initialized early, before
> loading the fbcon driver, as otherwise the i915 driver will
> fail to configure pwm:
>
> [ 13.674287] fb0: switching to inteldrmfb from EFI VGA
> [ 13.682380] Console: switching to colour dummy device 80x25
> [ 13.682468] i915 0000:00:02.0: vgaarb: deactivate vga console
> [ 13.682686] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
> [ 13.685773] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
> [ 13.686219] i915 0000:00:02.0: [drm] *ERROR* Failed to configure the pwm chip
> [ 13.699572] [drm] Initialized i915 1.6.0 20200313 for 0000:00:02.0 on minor 0
> [ 13.739044] fbcon: i915drmfb (fb0) is primary device
> [ 14.037792] intel_soc_pmic_exec_mipi_pmic_seq_element: No PMIC registered
> ...
> [ 24.621403] intel_pmic_install_opregion_handler: Ask to register OpRegion for bus ID=PMI2, HID=INT33F5
> [ 24.630540] intel_pmic_install_opregion_handler: OpRegion registered
>
> (some extra debug printk's were added to the above)
>
> As suggested by Hans, this patch also addresses an issue with
> the dependencies, as, for this driver to be a bool, it also
> need the I2C core and the I2C_DESIGNWARE driver to be builtin.
>
> Suggested-by: Hans de Goede <hdegoede@redhat.com>
> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
> ---
> drivers/mfd/Kconfig | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 3fb480818599..b756860ae551 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -634,7 +634,7 @@ config INTEL_SOC_PMIC_CHTWC
> config INTEL_SOC_PMIC_CHTDC_TI
> tristate "Support for Intel Cherry Trail Dollar Cove TI PMIC"

Did you forget to actually make this a bool?

> depends on GPIOLIB
> - depends on I2C
> + depends on I2C=y && I2C_DESIGNWARE_PLATFORM=y
> depends on ACPI
> depends on X86
> select MFD_CORE
> @@ -644,6 +644,10 @@ config INTEL_SOC_PMIC_CHTDC_TI
> Select this option for supporting Dollar Cove (TI version) PMIC
> device that is found on some Intel Cherry Trail systems.
>
> + This option is a bool as it provides an ACPI OpRegion which must be
> + available before any devices using it are probed. This option also
> + needs the designware-i2c driver to be builtin for the same reason.
> +
> config INTEL_SOC_PMIC_MRFLD
> tristate "Support for Intel Merrifield Basin Cove PMIC"
> depends on GPIOLIB

--
Lee Jones [???]
Principal Technical Lead - Developer Services
Linaro.org ? Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog