2023-01-12 16:02:44

by Nícolas F. R. A. Prado

[permalink] [raw]
Subject: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

Enable missing configs in the arm64 defconfig to get all devices probing
on mt8192-asurada based machines.

The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
ChromeOS EC rpmsg communication, all MT8192 clocks.

Support for DMA Restricted Pool is also enabled since it is used by the
WiFi card on this platform.

REGULATOR_CROS_EC is enabled as builtin since it powers the MMC
controller for the SD card, making it required for booting on some
setups.

By enabling the support for all of this platform's devices on the
defconfig we make it effortless to test the relevant hardware both by
developers as well as CI systems like KernelCI.

Signed-off-by: Nícolas F. R. A. Prado <[email protected]>

---

arch/arm64/configs/defconfig | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index f3053e7018fe..4e806d8068f6 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -196,6 +196,7 @@ CONFIG_BT_HIDP=m
CONFIG_BT_LEDS=y
# CONFIG_BT_DEBUGFS is not set
CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_LL=y
CONFIG_BT_HCIUART_BCM=y
@@ -231,6 +232,7 @@ CONFIG_PCIE_ALTERA_MSI=y
CONFIG_PCI_HOST_THUNDER_PEM=y
CONFIG_PCI_HOST_THUNDER_ECAM=y
CONFIG_PCIE_ROCKCHIP_HOST=m
+CONFIG_PCIE_MEDIATEK_GEN3=m
CONFIG_PCIE_BRCMSTB=m
CONFIG_PCI_IMX6=y
CONFIG_PCI_LAYERSCAPE=y
@@ -403,6 +405,7 @@ CONFIG_BRCMFMAC=m
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
CONFIG_MWIFIEX_PCIE=m
+CONFIG_MT7921E=m
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
CONFIG_INPUT_EVDEV=y
@@ -411,6 +414,7 @@ CONFIG_KEYBOARD_GPIO=y
CONFIG_KEYBOARD_SNVS_PWRKEY=m
CONFIG_KEYBOARD_IMX_SC_KEY=m
CONFIG_KEYBOARD_CROS_EC=y
+CONFIG_MOUSE_ELAN_I2C=m
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ATMEL_MXT=m
CONFIG_TOUCHSCREEN_GOODIX=m
@@ -513,6 +517,7 @@ CONFIG_SPI_FSL_DSPI=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
CONFIG_SPI_MT65XX=y
+CONFIG_SPI_MTK_NOR=m
CONFIG_SPI_ORION=y
CONFIG_SPI_PL022=y
CONFIG_SPI_ROCKCHIP=y
@@ -528,6 +533,7 @@ CONFIG_SPI_TEGRA210_QUAD=m
CONFIG_SPI_TEGRA114=m
CONFIG_SPI_SPIDEV=m
CONFIG_SPMI=y
+CONFIG_SPMI_MTK_PMIF=m
CONFIG_PINCTRL_MAX77620=y
CONFIG_PINCTRL_SINGLE=y
CONFIG_PINCTRL_OWL=y
@@ -674,6 +680,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_AXP20X=y
CONFIG_REGULATOR_BD718XX=y
CONFIG_REGULATOR_BD9571MWV=y
+CONFIG_REGULATOR_CROS_EC=y
CONFIG_REGULATOR_FAN53555=y
CONFIG_REGULATOR_GPIO=y
CONFIG_REGULATOR_HI6421V530=y
@@ -681,6 +688,7 @@ CONFIG_REGULATOR_HI655X=y
CONFIG_REGULATOR_MAX77620=y
CONFIG_REGULATOR_MAX8973=y
CONFIG_REGULATOR_MP8859=y
+CONFIG_REGULATOR_MT6315=m
CONFIG_REGULATOR_MT6358=y
CONFIG_REGULATOR_MT6359=y
CONFIG_REGULATOR_MT6360=y
@@ -714,6 +722,7 @@ CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_SDR_PLATFORM_DRIVERS=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_MEDIATEK_JPEG=m
+CONFIG_VIDEO_MEDIATEK_VCODEC=m
CONFIG_VIDEO_QCOM_CAMSS=m
CONFIG_VIDEO_QCOM_VENUS=m
CONFIG_VIDEO_RCAR_ISP=m
@@ -827,6 +836,8 @@ CONFIG_SND_SOC_IMX_AUDMIX=m
CONFIG_SND_SOC_MT8183=m
CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A=m
CONFIG_SND_SOC_MT8183_DA7219_MAX98357A=m
+CONFIG_SND_SOC_MT8192=m
+CONFIG_SND_SOC_MT8192_MT6359_RT1015_RT5682=m
CONFIG_SND_MESON_AXG_SOUND_CARD=m
CONFIG_SND_MESON_GX_SOUND_CARD=m
CONFIG_SND_SOC_QCOM=m
@@ -1070,6 +1081,7 @@ CONFIG_VIDEO_MAX96712=m
CONFIG_CHROME_PLATFORMS=y
CONFIG_CROS_EC=y
CONFIG_CROS_EC_I2C=y
+CONFIG_CROS_EC_RPMSG=m
CONFIG_CROS_EC_SPI=y
CONFIG_CROS_EC_CHARDEV=m
CONFIG_COMMON_CLK_RK808=y
@@ -1092,6 +1104,18 @@ CONFIG_CLK_IMX8QXP=y
CONFIG_CLK_IMX8ULP=y
CONFIG_CLK_IMX93=y
CONFIG_TI_SCI_CLK=y
+CONFIG_COMMON_CLK_MT8192_AUDSYS=y
+CONFIG_COMMON_CLK_MT8192_CAMSYS=y
+CONFIG_COMMON_CLK_MT8192_IMGSYS=y
+CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP=y
+CONFIG_COMMON_CLK_MT8192_IPESYS=y
+CONFIG_COMMON_CLK_MT8192_MDPSYS=y
+CONFIG_COMMON_CLK_MT8192_MFGCFG=y
+CONFIG_COMMON_CLK_MT8192_MMSYS=y
+CONFIG_COMMON_CLK_MT8192_MSDC=y
+CONFIG_COMMON_CLK_MT8192_SCP_ADSP=y
+CONFIG_COMMON_CLK_MT8192_VDECSYS=y
+CONFIG_COMMON_CLK_MT8192_VENCSYS=y
CONFIG_COMMON_CLK_QCOM=y
CONFIG_QCOM_A53PLL=y
CONFIG_QCOM_CLK_APCS_MSM8916=y
@@ -1398,6 +1422,7 @@ CONFIG_CRYPTO_DEV_HISI_SEC2=m
CONFIG_CRYPTO_DEV_HISI_ZIP=m
CONFIG_CRYPTO_DEV_HISI_HPRE=m
CONFIG_CRYPTO_DEV_HISI_TRNG=m
+CONFIG_DMA_RESTRICTED_POOL=y
CONFIG_CMA_SIZE_MBYTES=32
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_KERNEL=y
--
2.39.0


Subject: Re: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

Il 12/01/23 16:12, Nícolas F. R. A. Prado ha scritto:
> Enable missing configs in the arm64 defconfig to get all devices probing
> on mt8192-asurada based machines.
>
> The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
> PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
> MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
> regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
> ChromeOS EC rpmsg communication, all MT8192 clocks.
>
> Support for DMA Restricted Pool is also enabled since it is used by the
> WiFi card on this platform.

Let's be more specific on this one:

In this specific case, support for DMA Restricted Pool is necessary because
this SoC has no IOMMU context for the PCI-Express RC (nor attached devices,
such as the MT7921E WiFi card)

After which,
Reviewed-by: AngeloGioacchino Del Regno <[email protected]>

...and, a long time ago, and today again:
[For MT8192 Asurada Spherion (Acer Chromebook 514 CB514-2H]
Tested-by: AngeloGioacchino Del Regno <[email protected]>

Cheers,
Angelo

2023-01-17 17:00:52

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

On Thu, Jan 12, 2023 at 10:12:38AM -0500, N?colas F. R. A. Prado wrote:
> Enable missing configs in the arm64 defconfig to get all devices probing
> on mt8192-asurada based machines.
>
> The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
> PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
> MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
> regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
> ChromeOS EC rpmsg communication, all MT8192 clocks.
>
> Support for DMA Restricted Pool is also enabled since it is used by the
> WiFi card on this platform.
>
> REGULATOR_CROS_EC is enabled as builtin since it powers the MMC
> controller for the SD card, making it required for booting on some
> setups.

I presume this implies that there's no ramdisk to carry these additional
modules?

>
> By enabling the support for all of this platform's devices on the
> defconfig we make it effortless to test the relevant hardware both by
> developers as well as CI systems like KernelCI.
>
> Signed-off-by: N?colas F. R. A. Prado <[email protected]>
>
> ---
>
> arch/arm64/configs/defconfig | 25 +++++++++++++++++++++++++
> 1 file changed, 25 insertions(+)
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index f3053e7018fe..4e806d8068f6 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -196,6 +196,7 @@ CONFIG_BT_HIDP=m
> CONFIG_BT_LEDS=y
> # CONFIG_BT_DEBUGFS is not set
> CONFIG_BT_HCIBTUSB=m
> +CONFIG_BT_HCIBTUSB_MTK=y
> CONFIG_BT_HCIUART=m
> CONFIG_BT_HCIUART_LL=y
> CONFIG_BT_HCIUART_BCM=y
> @@ -231,6 +232,7 @@ CONFIG_PCIE_ALTERA_MSI=y
> CONFIG_PCI_HOST_THUNDER_PEM=y
> CONFIG_PCI_HOST_THUNDER_ECAM=y
> CONFIG_PCIE_ROCKCHIP_HOST=m
> +CONFIG_PCIE_MEDIATEK_GEN3=m
> CONFIG_PCIE_BRCMSTB=m
> CONFIG_PCI_IMX6=y
> CONFIG_PCI_LAYERSCAPE=y
> @@ -403,6 +405,7 @@ CONFIG_BRCMFMAC=m
> CONFIG_MWIFIEX=m
> CONFIG_MWIFIEX_SDIO=m
> CONFIG_MWIFIEX_PCIE=m
> +CONFIG_MT7921E=m
> CONFIG_WL18XX=m
> CONFIG_WLCORE_SDIO=m
> CONFIG_INPUT_EVDEV=y
> @@ -411,6 +414,7 @@ CONFIG_KEYBOARD_GPIO=y
> CONFIG_KEYBOARD_SNVS_PWRKEY=m
> CONFIG_KEYBOARD_IMX_SC_KEY=m
> CONFIG_KEYBOARD_CROS_EC=y
> +CONFIG_MOUSE_ELAN_I2C=m
> CONFIG_INPUT_TOUCHSCREEN=y
> CONFIG_TOUCHSCREEN_ATMEL_MXT=m
> CONFIG_TOUCHSCREEN_GOODIX=m
> @@ -513,6 +517,7 @@ CONFIG_SPI_FSL_DSPI=y
> CONFIG_SPI_MESON_SPICC=m
> CONFIG_SPI_MESON_SPIFC=m
> CONFIG_SPI_MT65XX=y
> +CONFIG_SPI_MTK_NOR=m
> CONFIG_SPI_ORION=y
> CONFIG_SPI_PL022=y
> CONFIG_SPI_ROCKCHIP=y
> @@ -528,6 +533,7 @@ CONFIG_SPI_TEGRA210_QUAD=m
> CONFIG_SPI_TEGRA114=m
> CONFIG_SPI_SPIDEV=m
> CONFIG_SPMI=y
> +CONFIG_SPMI_MTK_PMIF=m
> CONFIG_PINCTRL_MAX77620=y
> CONFIG_PINCTRL_SINGLE=y
> CONFIG_PINCTRL_OWL=y
> @@ -674,6 +680,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y
> CONFIG_REGULATOR_AXP20X=y
> CONFIG_REGULATOR_BD718XX=y
> CONFIG_REGULATOR_BD9571MWV=y
> +CONFIG_REGULATOR_CROS_EC=y
> CONFIG_REGULATOR_FAN53555=y
> CONFIG_REGULATOR_GPIO=y
> CONFIG_REGULATOR_HI6421V530=y
> @@ -681,6 +688,7 @@ CONFIG_REGULATOR_HI655X=y
> CONFIG_REGULATOR_MAX77620=y
> CONFIG_REGULATOR_MAX8973=y
> CONFIG_REGULATOR_MP8859=y
> +CONFIG_REGULATOR_MT6315=m
> CONFIG_REGULATOR_MT6358=y
> CONFIG_REGULATOR_MT6359=y
> CONFIG_REGULATOR_MT6360=y
> @@ -714,6 +722,7 @@ CONFIG_V4L_PLATFORM_DRIVERS=y
> CONFIG_SDR_PLATFORM_DRIVERS=y
> CONFIG_V4L_MEM2MEM_DRIVERS=y
> CONFIG_VIDEO_MEDIATEK_JPEG=m
> +CONFIG_VIDEO_MEDIATEK_VCODEC=m
> CONFIG_VIDEO_QCOM_CAMSS=m
> CONFIG_VIDEO_QCOM_VENUS=m
> CONFIG_VIDEO_RCAR_ISP=m
> @@ -827,6 +836,8 @@ CONFIG_SND_SOC_IMX_AUDMIX=m
> CONFIG_SND_SOC_MT8183=m
> CONFIG_SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A=m
> CONFIG_SND_SOC_MT8183_DA7219_MAX98357A=m
> +CONFIG_SND_SOC_MT8192=m
> +CONFIG_SND_SOC_MT8192_MT6359_RT1015_RT5682=m
> CONFIG_SND_MESON_AXG_SOUND_CARD=m
> CONFIG_SND_MESON_GX_SOUND_CARD=m
> CONFIG_SND_SOC_QCOM=m
> @@ -1070,6 +1081,7 @@ CONFIG_VIDEO_MAX96712=m
> CONFIG_CHROME_PLATFORMS=y
> CONFIG_CROS_EC=y
> CONFIG_CROS_EC_I2C=y
> +CONFIG_CROS_EC_RPMSG=m
> CONFIG_CROS_EC_SPI=y
> CONFIG_CROS_EC_CHARDEV=m
> CONFIG_COMMON_CLK_RK808=y
> @@ -1092,6 +1104,18 @@ CONFIG_CLK_IMX8QXP=y
> CONFIG_CLK_IMX8ULP=y
> CONFIG_CLK_IMX93=y
> CONFIG_TI_SCI_CLK=y
> +CONFIG_COMMON_CLK_MT8192_AUDSYS=y
> +CONFIG_COMMON_CLK_MT8192_CAMSYS=y
> +CONFIG_COMMON_CLK_MT8192_IMGSYS=y
> +CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP=y
> +CONFIG_COMMON_CLK_MT8192_IPESYS=y
> +CONFIG_COMMON_CLK_MT8192_MDPSYS=y
> +CONFIG_COMMON_CLK_MT8192_MFGCFG=y
> +CONFIG_COMMON_CLK_MT8192_MMSYS=y
> +CONFIG_COMMON_CLK_MT8192_MSDC=y
> +CONFIG_COMMON_CLK_MT8192_SCP_ADSP=y
> +CONFIG_COMMON_CLK_MT8192_VDECSYS=y
> +CONFIG_COMMON_CLK_MT8192_VENCSYS=y

Are all these clock drivers needed in order to reach a ramdisk, with
working uart, where further kernel modules could be loaded?

> CONFIG_COMMON_CLK_QCOM=y
> CONFIG_QCOM_A53PLL=y
> CONFIG_QCOM_CLK_APCS_MSM8916=y
> @@ -1398,6 +1422,7 @@ CONFIG_CRYPTO_DEV_HISI_SEC2=m
> CONFIG_CRYPTO_DEV_HISI_ZIP=m
> CONFIG_CRYPTO_DEV_HISI_HPRE=m
> CONFIG_CRYPTO_DEV_HISI_TRNG=m
> +CONFIG_DMA_RESTRICTED_POOL=y

As this would alter the behavior of other platforms and devices, could
we please carry this in a patch of its own to aid bisection?

Thanks,
Bjorn

> CONFIG_CMA_SIZE_MBYTES=32
> CONFIG_PRINTK_TIME=y
> CONFIG_DEBUG_KERNEL=y
> --
> 2.39.0
>

2023-01-17 22:33:57

by Nícolas F. R. A. Prado

[permalink] [raw]
Subject: Re: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

On Tue, Jan 17, 2023 at 07:58:54AM -0800, Bjorn Andersson wrote:
> On Thu, Jan 12, 2023 at 10:12:38AM -0500, N?colas F. R. A. Prado wrote:
> > Enable missing configs in the arm64 defconfig to get all devices probing
> > on mt8192-asurada based machines.
> >
> > The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
> > PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
> > MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
> > regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
> > ChromeOS EC rpmsg communication, all MT8192 clocks.
> >
> > Support for DMA Restricted Pool is also enabled since it is used by the
> > WiFi card on this platform.
> >
> > REGULATOR_CROS_EC is enabled as builtin since it powers the MMC
> > controller for the SD card, making it required for booting on some
> > setups.
>
> I presume this implies that there's no ramdisk to carry these additional
> modules?

There may or may not be, at the discretion of the user, so enable by default.

>
> >
> > By enabling the support for all of this platform's devices on the
> > defconfig we make it effortless to test the relevant hardware both by
> > developers as well as CI systems like KernelCI.
> >
> > Signed-off-by: N?colas F. R. A. Prado <[email protected]>
> >
> > ---
> >
> > arch/arm64/configs/defconfig | 25 +++++++++++++++++++++++++
> > 1 file changed, 25 insertions(+)
> >
> > diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> > index f3053e7018fe..4e806d8068f6 100644
> > --- a/arch/arm64/configs/defconfig
> > +++ b/arch/arm64/configs/defconfig
[..]
> > @@ -1092,6 +1104,18 @@ CONFIG_CLK_IMX8QXP=y
> > CONFIG_CLK_IMX8ULP=y
> > CONFIG_CLK_IMX93=y
> > CONFIG_TI_SCI_CLK=y
> > +CONFIG_COMMON_CLK_MT8192_AUDSYS=y
> > +CONFIG_COMMON_CLK_MT8192_CAMSYS=y
> > +CONFIG_COMMON_CLK_MT8192_IMGSYS=y
> > +CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP=y
> > +CONFIG_COMMON_CLK_MT8192_IPESYS=y
> > +CONFIG_COMMON_CLK_MT8192_MDPSYS=y
> > +CONFIG_COMMON_CLK_MT8192_MFGCFG=y
> > +CONFIG_COMMON_CLK_MT8192_MMSYS=y
> > +CONFIG_COMMON_CLK_MT8192_MSDC=y
> > +CONFIG_COMMON_CLK_MT8192_SCP_ADSP=y
> > +CONFIG_COMMON_CLK_MT8192_VDECSYS=y
> > +CONFIG_COMMON_CLK_MT8192_VENCSYS=y
>
> Are all these clock drivers needed in order to reach a ramdisk, with
> working uart, where further kernel modules could be loaded?

No, but currently these configs can't be enabled as modules. So my intention is
to enable all of them as builtin for now so we get the functionality there, and
after the drivers and configs are reworked to allow building as modules (which
should happen shortly after [1] is merged), I'll update the defconfig so that
the non-essential ones for boot are set to =m.

[1] https://lore.kernel.org/all/[email protected]/

>
> > CONFIG_COMMON_CLK_QCOM=y
> > CONFIG_QCOM_A53PLL=y
> > CONFIG_QCOM_CLK_APCS_MSM8916=y
> > @@ -1398,6 +1422,7 @@ CONFIG_CRYPTO_DEV_HISI_SEC2=m
> > CONFIG_CRYPTO_DEV_HISI_ZIP=m
> > CONFIG_CRYPTO_DEV_HISI_HPRE=m
> > CONFIG_CRYPTO_DEV_HISI_TRNG=m
> > +CONFIG_DMA_RESTRICTED_POOL=y
>
> As this would alter the behavior of other platforms and devices, could
> we please carry this in a patch of its own to aid bisection?

Sure.

Thanks,
N?colas

>
> Thanks,
> Bjorn
>
> > CONFIG_CMA_SIZE_MBYTES=32
> > CONFIG_PRINTK_TIME=y
> > CONFIG_DEBUG_KERNEL=y
> > --
> > 2.39.0
> >

2023-01-18 18:45:47

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

On Tue, Jan 17, 2023 at 03:11:59PM -0500, N?colas F. R. A. Prado wrote:
> On Tue, Jan 17, 2023 at 07:58:54AM -0800, Bjorn Andersson wrote:
> > On Thu, Jan 12, 2023 at 10:12:38AM -0500, N?colas F. R. A. Prado wrote:
> > > Enable missing configs in the arm64 defconfig to get all devices probing
> > > on mt8192-asurada based machines.
> > >
> > > The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
> > > PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
> > > MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
> > > regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
> > > ChromeOS EC rpmsg communication, all MT8192 clocks.
> > >
> > > Support for DMA Restricted Pool is also enabled since it is used by the
> > > WiFi card on this platform.
> > >
> > > REGULATOR_CROS_EC is enabled as builtin since it powers the MMC
> > > controller for the SD card, making it required for booting on some
> > > setups.
> >
> > I presume this implies that there's no ramdisk to carry these additional
> > modules?
>
> There may or may not be, at the discretion of the user, so enable by default.
>

As long as the dependency chain is reasonably short this is okay with me.

> >
> > >
> > > By enabling the support for all of this platform's devices on the
> > > defconfig we make it effortless to test the relevant hardware both by
> > > developers as well as CI systems like KernelCI.
> > >
> > > Signed-off-by: N?colas F. R. A. Prado <[email protected]>
> > >
> > > ---
> > >
> > > arch/arm64/configs/defconfig | 25 +++++++++++++++++++++++++
> > > 1 file changed, 25 insertions(+)
> > >
> > > diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> > > index f3053e7018fe..4e806d8068f6 100644
> > > --- a/arch/arm64/configs/defconfig
> > > +++ b/arch/arm64/configs/defconfig
> [..]
> > > @@ -1092,6 +1104,18 @@ CONFIG_CLK_IMX8QXP=y
> > > CONFIG_CLK_IMX8ULP=y
> > > CONFIG_CLK_IMX93=y
> > > CONFIG_TI_SCI_CLK=y
> > > +CONFIG_COMMON_CLK_MT8192_AUDSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_CAMSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_IMGSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP=y
> > > +CONFIG_COMMON_CLK_MT8192_IPESYS=y
> > > +CONFIG_COMMON_CLK_MT8192_MDPSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_MFGCFG=y
> > > +CONFIG_COMMON_CLK_MT8192_MMSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_MSDC=y
> > > +CONFIG_COMMON_CLK_MT8192_SCP_ADSP=y
> > > +CONFIG_COMMON_CLK_MT8192_VDECSYS=y
> > > +CONFIG_COMMON_CLK_MT8192_VENCSYS=y
> >
> > Are all these clock drivers needed in order to reach a ramdisk, with
> > working uart, where further kernel modules could be loaded?
>
> No, but currently these configs can't be enabled as modules. So my intention is
> to enable all of them as builtin for now so we get the functionality there, and
> after the drivers and configs are reworked to allow building as modules (which
> should happen shortly after [1] is merged), I'll update the defconfig so that
> the non-essential ones for boot are set to =m.
>

Sounds good to me.

Thanks,
Bjorn

> [1] https://lore.kernel.org/all/[email protected]/
>
> >
> > > CONFIG_COMMON_CLK_QCOM=y
> > > CONFIG_QCOM_A53PLL=y
> > > CONFIG_QCOM_CLK_APCS_MSM8916=y
> > > @@ -1398,6 +1422,7 @@ CONFIG_CRYPTO_DEV_HISI_SEC2=m
> > > CONFIG_CRYPTO_DEV_HISI_ZIP=m
> > > CONFIG_CRYPTO_DEV_HISI_HPRE=m
> > > CONFIG_CRYPTO_DEV_HISI_TRNG=m
> > > +CONFIG_DMA_RESTRICTED_POOL=y
> >
> > As this would alter the behavior of other platforms and devices, could
> > we please carry this in a patch of its own to aid bisection?
>
> Sure.
>
> Thanks,
> N?colas
>
> >
> > Thanks,
> > Bjorn
> >
> > > CONFIG_CMA_SIZE_MBYTES=32
> > > CONFIG_PRINTK_TIME=y
> > > CONFIG_DEBUG_KERNEL=y
> > > --
> > > 2.39.0
> > >

Subject: Re: [PATCH] arm64: defconfig: Enable missing configs for mt8192-asurada

Il 18/01/23 19:15, Bjorn Andersson ha scritto:
> On Tue, Jan 17, 2023 at 03:11:59PM -0500, Nícolas F. R. A. Prado wrote:
>> On Tue, Jan 17, 2023 at 07:58:54AM -0800, Bjorn Andersson wrote:
>>> On Thu, Jan 12, 2023 at 10:12:38AM -0500, Nícolas F. R. A. Prado wrote:
>>>> Enable missing configs in the arm64 defconfig to get all devices probing
>>>> on mt8192-asurada based machines.
>>>>
>>>> The devices enabled are: MediaTek Bluetooth USB controller, MediaTek
>>>> PCIe Gen3 MAC controller, MT7921E wireless adapter, Elan I2C Trackpad,
>>>> MediaTek SPI NOR flash controller, Mediatek SPMI Controller, ChromeOS EC
>>>> regulators, MT6315 PMIC, MediaTek Video Codec, MT8192 sound cards,
>>>> ChromeOS EC rpmsg communication, all MT8192 clocks.
>>>>
>>>> Support for DMA Restricted Pool is also enabled since it is used by the
>>>> WiFi card on this platform.
>>>>
>>>> REGULATOR_CROS_EC is enabled as builtin since it powers the MMC
>>>> controller for the SD card, making it required for booting on some
>>>> setups.
>>>
>>> I presume this implies that there's no ramdisk to carry these additional
>>> modules?
>>
>> There may or may not be, at the discretion of the user, so enable by default.
>>
>
> As long as the dependency chain is reasonably short this is okay with me.
>
>>>
>>>>
>>>> By enabling the support for all of this platform's devices on the
>>>> defconfig we make it effortless to test the relevant hardware both by
>>>> developers as well as CI systems like KernelCI.
>>>>
>>>> Signed-off-by: Nícolas F. R. A. Prado <[email protected]>
>>>>
>>>> ---
>>>>
>>>> arch/arm64/configs/defconfig | 25 +++++++++++++++++++++++++
>>>> 1 file changed, 25 insertions(+)
>>>>
>>>> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
>>>> index f3053e7018fe..4e806d8068f6 100644
>>>> --- a/arch/arm64/configs/defconfig
>>>> +++ b/arch/arm64/configs/defconfig
>> [..]
>>>> @@ -1092,6 +1104,18 @@ CONFIG_CLK_IMX8QXP=y
>>>> CONFIG_CLK_IMX8ULP=y
>>>> CONFIG_CLK_IMX93=y
>>>> CONFIG_TI_SCI_CLK=y
>>>> +CONFIG_COMMON_CLK_MT8192_AUDSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_CAMSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_IMGSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_IMP_IIC_WRAP=y
>>>> +CONFIG_COMMON_CLK_MT8192_IPESYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_MDPSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_MFGCFG=y
>>>> +CONFIG_COMMON_CLK_MT8192_MMSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_MSDC=y
>>>> +CONFIG_COMMON_CLK_MT8192_SCP_ADSP=y
>>>> +CONFIG_COMMON_CLK_MT8192_VDECSYS=y
>>>> +CONFIG_COMMON_CLK_MT8192_VENCSYS=y
>>>
>>> Are all these clock drivers needed in order to reach a ramdisk, with
>>> working uart, where further kernel modules could be loaded?
>>
>> No, but currently these configs can't be enabled as modules. So my intention is
>> to enable all of them as builtin for now so we get the functionality there, and
>> after the drivers and configs are reworked to allow building as modules (which
>> should happen shortly after [1] is merged), I'll update the defconfig so that
>> the non-essential ones for boot are set to =m.
>>
>
> Sounds good to me.

Adding context... on MediaTek clock drivers, I'm doing the rework [1].

There's a lot to cleanup and one first rather big series is already there,
well-reviewed and ready to be picked, but that does not change the MT8192,
nor others, non-critical clock drivers to tristate.

I'll do that for most MTK clock drivers in a second (or third) cleanup series,
which is already scheduled on my side, but that will need some time to happen
since, as I said, there's still a bit to cleanup before that and I will make
sure that nobody will forget to send a followup commit that will change the
defconfig to build the non-boot-critical clock drivers as modules as soon as
possible.

Cheers,
Angelo