[PATCH 1/1] ASoC: fsl: fsl_ssi: Add dev_err_probe if PCM DMA init fails
This happens especially if this driver is built-in, but SDMA driver is configured as module. Signed-off-by: Alexander Stein --- sound/soc/fsl/fsl_ssi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c index ab6ec1974807..4ca3a16f7ac0 100644 --- a/sound/soc/fsl/fsl_ssi.c +++ b/sound/soc/fsl/fsl_ssi.c @@ -1401,8 +1401,10 @@ static int fsl_ssi_imx_probe(struct platform_device *pdev, goto error_pcm; } else { ret = imx_pcm_dma_init(pdev); - if (ret) + if (ret) { + dev_err_probe(dev, ret, "Failed to init PCM DMA\n"); goto error_pcm; + } } return 0; -- 2.34.1
[PATCH 2/2] ASoC: fsl: Specify driver name in ASoC card
Set the snd_soc_card driver name which fixes the warning: fsl-asoc-card sound: ASoC: driver name too long 'imx-audio-tlv320aic32x4' -> 'imx-audio-tlv32' Signed-off-by: Alexander Stein --- These patches could be squashed, but I opted for separation this patch is the actual functional change. Patch 1 is just preparation. sound/soc/fsl/fsl-asoc-card.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sound/soc/fsl/fsl-asoc-card.c b/sound/soc/fsl/fsl-asoc-card.c index e956abfd50f8..bffa1048d31e 100644 --- a/sound/soc/fsl/fsl-asoc-card.c +++ b/sound/soc/fsl/fsl-asoc-card.c @@ -609,6 +609,7 @@ static int fsl_asoc_card_probe(struct platform_device *pdev) priv->card.dapm_routes = audio_map; priv->card.num_dapm_routes = ARRAY_SIZE(audio_map); + priv->card.driver_name = DRIVER_NAME; /* Diversify the card configurations */ if (of_device_is_compatible(np, "fsl,imx-audio-cs42888")) { codec_dai_name = "cs42888"; -- 2.34.1
[PATCH 1/2] ASoC: fsl: define a common DRIVER_NAME
Instead of copying the driver name manually, use a common define. No functional change. Signed-off-by: Alexander Stein --- sound/soc/fsl/fsl-asoc-card.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sound/soc/fsl/fsl-asoc-card.c b/sound/soc/fsl/fsl-asoc-card.c index cdfca9fd1eb0..e956abfd50f8 100644 --- a/sound/soc/fsl/fsl-asoc-card.c +++ b/sound/soc/fsl/fsl-asoc-card.c @@ -28,6 +28,8 @@ #include "../codecs/wm8994.h" #include "../codecs/tlv320aic31xx.h" +#define DRIVER_NAME "fsl-asoc-card" + #define CS427x_SYSCLK_MCLK 0 #define RX 0 @@ -915,7 +917,7 @@ MODULE_DEVICE_TABLE(of, fsl_asoc_card_dt_ids); static struct platform_driver fsl_asoc_card_driver = { .probe = fsl_asoc_card_probe, .driver = { - .name = "fsl-asoc-card", + .name = DRIVER_NAME, .pm = &snd_soc_pm_ops, .of_match_table = fsl_asoc_card_dt_ids, }, @@ -924,5 +926,5 @@ module_platform_driver(fsl_asoc_card_driver); MODULE_DESCRIPTION("Freescale Generic ASoC Sound Card driver with ASRC"); MODULE_AUTHOR("Nicolin Chen "); -MODULE_ALIAS("platform:fsl-asoc-card"); +MODULE_ALIAS("platform:" DRIVER_NAME); MODULE_LICENSE("GPL"); -- 2.34.1
Re: [PATCH v2 02/10] ARM: dts: ls1021a: add TQ-Systems MBLS102xA device tree
Hi Shawn, thanks for your feedback. Am Donnerstag, 26. Januar 2023, 10:44:21 CET schrieb Shawn Guo: > On Fri, Jan 20, 2023 at 02:34:47PM +0100, Alexander Stein wrote: > > Add device tree for the MBLS102xA mainboard with TQMLS1021A SoM. > > > > Signed-off-by: Alexander Stein > > --- > > Changes in v2: > > * Remove unnecessary status = "okay" > > * Remove underscore from node names > > * Move reg direct below compatiblefor i2c devices > > * Remove i2c device nodes without software support > > > > Add a comment about existance for the device though > > > > arch/arm/boot/dts/Makefile| 1 + > > .../boot/dts/ls1021a-tqmls1021a-mbls1021a.dts | 406 ++ > > arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 81 > > 3 files changed, 488 insertions(+) > > create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts > > create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi > > > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > > index d0c07867aeabe..44b5ed44b13d6 100644 > > --- a/arch/arm/boot/dts/Makefile > > +++ b/arch/arm/boot/dts/Makefile > > @@ -802,6 +802,7 @@ dtb-$(CONFIG_SOC_LS1021A) += \ > > > > ls1021a-iot.dtb \ > > ls1021a-moxa-uc-8410a.dtb \ > > ls1021a-qds.dtb \ > > > > + ls1021a-tqmls1021a-mbls1021a.dtb \ > > > > ls1021a-tsn.dtb \ > > ls1021a-twr.dtb > > > > dtb-$(CONFIG_SOC_VF610) += \ > > > > diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts > > b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts new file mode 100644 > > index 0..aa8b605344655 > > --- /dev/null > > +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts > > @@ -0,0 +1,406 @@ > > +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) > > +/* > > + * Copyright 2013-2014 Freescale Semiconductor, Inc. > > + * Copyright 2018-2023 TQ-Systems GmbH , > > + * D-82229 Seefeld, Germany. > > + * Author: Alexander Stein > > + */ > > + > > +/dts-v1/; > > + > > +#include > > +#include > > +#include > > +#include > > +#include > > +#include "ls1021a-tqmls1021a.dtsi" > > + > > +/ { > > + model = "TQMLS102xA SOM on MBLS102xA"; > > + compatible = "tq,ls1021a-tqmls1021a-mbls102xa", "tq,ls1021a- tqmls1021a", > > "fsl,ls1021a"; + > > + audio_mclk: audio-clock { > > + compatible = "fixed-clock"; > > + #clock-cells = <0>; > > + clock-frequency = <2500>; > > + }; > > + > > + backlight_dcu: backlight { > > + compatible = "gpio-backlight"; > > + gpios = <&pca9530 0 GPIO_ACTIVE_LOW>; > > + status = "disabled"; > > + }; > > + > > + gpio-keys { > > + compatible = "gpio-keys"; > > + autorepeat; > > + > > + switch-1 { > > + label = "S6"; > > + linux,code = ; > > + gpios = <&pca9554_0 0 GPIO_ACTIVE_LOW>; > > + }; > > + > > + btn2: switch-2 { > > + label = "S7"; > > + linux,code = ; > > + gpios = <&pca9554_0 1 GPIO_ACTIVE_LOW>; > > + }; > > + > > + switch-3 { > > + label = "S8"; > > + linux,code = ; > > + gpios = <&pca9554_0 2 GPIO_ACTIVE_LOW>; > > + }; > > + }; > > + > > + gpio_leds: gpio-leds { > > + compatible = "gpio-leds"; > > + > > + led-0 { > > + color = ; > > + function = LED_FUNCTION_STATUS; > > + function-enumerator = <0>; > > + gpios = <&pca9554_2 4 GPIO_ACTIVE_LOW>; > > + linux,default-trigger = "default-on"; > > + }; > > + > > + led-1 { > > + color = ; > > + function = LED_FUNCTION_STATUS; > > + function-enumerator = <1>; > > + gpios = <&pca9554_2 5 GPIO_ACTIVE_LOW>; > > + linux,default-trigger = "default-on"; > > + }; &
[PATCH v3 10/10] ARM: add multi_v7_lpae_defconfig
From: Nicolas Saenz Julienne The only missing configuration option preventing us from using multi_v7_defconfig with the Raspberry Pi 4 is ARM_LPAE. It's needed as the PCIe controller found on the SoC depends on 64bit addressing, yet can't be included as not all v7 boards support LPAE. Introduce multi_v7_lpae_defconfig, built off multi_v7_defconfig, which will avoid us having to duplicate and maintain multiple similar configurations. Needless to say the Raspberry Pi 4 is not the only platform that can benefit from this new configuration. Signed-off-by: Nicolas Saenz Julienne Signed-off-by: Alexander Stein --- Changes in v3: * As per Arnd's suggestion add CONFIG_VMSPLIT_2G to lpae.config fragment * List multi_v7_lpae_defconfig target in 'make help' as well Unfortunately the list of defconfigs is autogenerated, so this new (explicit) target doesn't fit into this list. Therefore it's added to 'archhelp' instead. arch/arm/Makefile| 6 ++ arch/arm/configs/lpae.config | 2 ++ 2 files changed, 8 insertions(+) create mode 100644 arch/arm/configs/lpae.config diff --git a/arch/arm/Makefile b/arch/arm/Makefile index a353b92641f36..485a439e22ca8 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -314,6 +314,10 @@ endif # My testing targets (bypasses dependencies) bp:; $(Q)$(MAKE) $(build)=$(boot) $(boot)/bootpImage +include $(srctree)/scripts/Makefile.defconf +PHONY += multi_v7_lpae_defconfig +multi_v7_lpae_defconfig: + $(call merge_into_defconfig,multi_v7_defconfig,lpae) define archhelp echo '* zImage- Compressed kernel image (arch/$(ARCH)/boot/zImage)' @@ -329,4 +333,6 @@ define archhelp echo ' (distribution) /sbin/$(INSTALLKERNEL) or' echo ' install to $$(INSTALL_PATH) and run lilo' echo ' vdso_install - Install unstripped vdso.so to $$(INSTALL_MOD_PATH)/vdso' + echo + echo ' multi_v7_lpae_defconfig - multi_v7_defconfig with CONFIG_ARM_LPAE enabled' endef diff --git a/arch/arm/configs/lpae.config b/arch/arm/configs/lpae.config new file mode 100644 index 0..a6d6f7ab3c01a --- /dev/null +++ b/arch/arm/configs/lpae.config @@ -0,0 +1,2 @@ +CONFIG_ARM_LPAE=y +CONFIG_VMSPLIT_2G=y -- 2.34.1
[PATCH v3 09/10] kbuild: Add config fragment merge functionality
From: Nicolas Saenz Julienne So far this function was only used locally in powerpc, some other architectures might benefit from it. Move it into scripts/Makefile.defconf. Signed-off-by: Nicolas Saenz Julienne Signed-off-by: Alexander Stein Acked-by: Arnd Bergmann --- Changes in v3: * Added Arnd's A-b arch/powerpc/Makefile| 12 +--- scripts/Makefile.defconf | 15 +++ 2 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 scripts/Makefile.defconf diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile index 4fd630efe39d3..6ec5b9f7b7caa 100644 --- a/arch/powerpc/Makefile +++ b/arch/powerpc/Makefile @@ -253,17 +253,7 @@ PHONY += bootwrapper_install bootwrapper_install: $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) -# Used to create 'merged defconfigs' -# To use it $(call) it with the first argument as the base defconfig -# and the second argument as a space separated list of .config files to merge, -# without the .config suffix. -define merge_into_defconfig - $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ - -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ - $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) - +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig -endef - +include $(srctree)/scripts/Makefile.defconf PHONY += pseries_le_defconfig pseries_le_defconfig: $(call merge_into_defconfig,pseries_defconfig,le) diff --git a/scripts/Makefile.defconf b/scripts/Makefile.defconf new file mode 100644 index 0..ab332f7534f51 --- /dev/null +++ b/scripts/Makefile.defconf @@ -0,0 +1,15 @@ +# SPDX-License-Identifier: GPL-2.0 +# Configuration heplers + +# Creates 'merged defconfigs' +# --- +# Usage: +# $(call merge_into_defconfig,base_config,config_fragment1 config_fragment2 ...) +# +# Input config fragments without '.config' suffix +define merge_into_defconfig + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ + -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ + $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) + +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig +endef -- 2.34.1
[PATCH v3 08/10] ARM: multi_v7_defconfig: Add options to support TQMLS102xA series
Enable drivers used on TQMLS102xA + MBLS1021A. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * Changed symbols to 'm' where possible arch/arm/configs/multi_v7_defconfig | 13 + 1 file changed, 13 insertions(+) diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig index ee184eb37adcf..92628a160cfb3 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -191,6 +191,7 @@ CONFIG_PCI_TEGRA=y CONFIG_PCI_RCAR_GEN2=y CONFIG_PCIE_RCAR_HOST=y CONFIG_PCI_DRA7XX_EP=y +CONFIG_PCI_LAYERSCAPE=y CONFIG_PCI_ENDPOINT=y CONFIG_PCI_ENDPOINT_CONFIGFS=y CONFIG_PCI_EPF_TEST=m @@ -249,6 +250,7 @@ CONFIG_AHCI_ST=y CONFIG_AHCI_IMX=y CONFIG_AHCI_SUNXI=y CONFIG_AHCI_TEGRA=y +CONFIG_AHCI_QORIQ=y CONFIG_SATA_HIGHBANK=y CONFIG_SATA_MV=y CONFIG_SATA_RCAR=y @@ -329,6 +331,7 @@ CONFIG_TOUCHSCREEN_ADC=m CONFIG_TOUCHSCREEN_ATMEL_MXT=m CONFIG_TOUCHSCREEN_ELAN=m CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m CONFIG_TOUCHSCREEN_WM97XX=m CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_STMPE=y @@ -483,6 +486,7 @@ CONFIG_GPIO_ASPEED_SGPIO=y CONFIG_GPIO_DAVINCI=y CONFIG_GPIO_DWAPB=y CONFIG_GPIO_EM=y +CONFIG_GPIO_MPC8XXX=y CONFIG_GPIO_MXC=y CONFIG_GPIO_RCAR=y CONFIG_GPIO_SYSCON=y @@ -493,6 +497,7 @@ CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCF857X=y CONFIG_GPIO_PALMAS=y +CONFIG_GPIO_STMPE=y CONFIG_GPIO_TPS6586X=y CONFIG_GPIO_TPS65910=y CONFIG_GPIO_TWL4030=y @@ -533,6 +538,7 @@ CONFIG_SENSORS_INA2XX=m CONFIG_CPU_THERMAL=y CONFIG_DEVFREQ_THERMAL=y CONFIG_IMX_THERMAL=y +CONFIG_QORIQ_THERMAL=m CONFIG_ROCKCHIP_THERMAL=y CONFIG_RCAR_THERMAL=y CONFIG_ARMADA_THERMAL=y @@ -821,6 +827,8 @@ CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m CONFIG_SND_SOC_SGTL5000=m CONFIG_SND_SOC_STI_SAS=m +CONFIG_SND_SOC_TLV320AIC32X4=m +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m CONFIG_SND_SOC_WM8978=m CONFIG_SND_AUDIO_GRAPH_CARD=m CONFIG_USB=y @@ -830,6 +838,7 @@ CONFIG_USB_XHCI_MVEBU=y CONFIG_USB_XHCI_TEGRA=m CONFIG_USB_BRCMSTB=m CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_FSL=m CONFIG_USB_EHCI_HCD_STI=y CONFIG_USB_EHCI_EXYNOS=m CONFIG_USB_EHCI_MV=m @@ -933,6 +942,8 @@ CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CPCAP=m +CONFIG_LEDS_PCA9532=m +CONFIG_LEDS_PCA9532_GPIO=y CONFIG_LEDS_GPIO=y CONFIG_LEDS_PWM=y CONFIG_LEDS_MAX8997=m @@ -949,6 +960,7 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y CONFIG_LEDS_TRIGGER_TRANSIENT=y CONFIG_LEDS_TRIGGER_CAMERA=y CONFIG_EDAC=y +CONFIG_EDAC_LAYERSCAPE=y CONFIG_EDAC_HIGHBANK_MC=y CONFIG_EDAC_HIGHBANK_L2=y CONFIG_RTC_CLASS=y @@ -962,6 +974,7 @@ CONFIG_RTC_DRV_MAX8997=m CONFIG_RTC_DRV_MAX77686=y CONFIG_RTC_DRV_RK808=m CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_PCF85063=m CONFIG_RTC_DRV_PCF85363=m CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_TWL4030=y -- 2.34.1
[PATCH v3 07/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH FC21 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * None arch/arm/boot/dts/Makefile| 2 + ...1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts | 55 +++ 2 files changed, 57 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 64cc0f3f6efb0..d68100144ae4f 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,10 +806,12 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-cdtech-fc21-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dtbo ls1021a-tqmls1021a-mbls1021a-cdtech-dc44-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtbo ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts new file mode 100644 index 0..4bd10d0e17b90 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; +}; + +&display { + compatible = "cdtech,s070pws19hp-fc21"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; +}; + +&i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + polytouch: touchscreen@38 { + compatible = "edt,edt-ft5406"; + reg = <0x38>; + interrupt-parent = <&pca9554_0>; + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; + /* LCD_PWR_EN -> TSC_WAKE */ + wake-gpios = <&pca9554_1 4 GPIO_ACTIVE_HIGH>; + gain = <20>; + touchscreen-size-x = <1024>; + touchscreen-size-y = <600>; + }; +}; -- 2.34.1
[PATCH v3 05/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA HDMI overlay
Add device tree overlay for HDMI usage. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * None arch/arm/boot/dts/Makefile| 2 ++ .../ls1021a-tqmls1021a-mbls1021a-hdmi.dtso| 36 +++ 2 files changed, 38 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 626f7172c74e9..f9f75c5325808 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,8 +806,10 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb dtb-$(CONFIG_SOC_VF610) += \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso new file mode 100644 index 0..f5ca22643c08e --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&sii9022a_in>; + }; + }; +}; + +&hdmi_out { + status = "okay"; +}; + +&sii9022a { + status = "okay"; + + ports { + port@0 { + sii9022a_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; + }; +}; -- 2.34.1
[PATCH v3 06/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH DC44 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * None arch/arm/boot/dts/Makefile| 2 + ...1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts | 55 +++ 2 files changed, 57 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index f9f75c5325808..64cc0f3f6efb0 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,9 +806,11 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-cdtech-dc44-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtbo ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts new file mode 100644 index 0..ddc71bc597295 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; +}; + +&display { + compatible = "cdtech,s070swv29hg-dc44"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; +}; + +&i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + polytouch: touchscreen@38 { + compatible = "edt,edt-ft5406"; + reg = <0x38>; + interrupt-parent = <&pca9554_0>; + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; + /* LCD_PWR_EN -> TSC_WAKE */ + wake-gpios = <&pca9554_1 4 GPIO_ACTIVE_HIGH>; + gain = <20>; + touchscreen-size-x = <800>; + touchscreen-size-y = <480>; + }; +}; -- 2.34.1
[PATCH v3 04/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS TM070JVHG33 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * None arch/arm/boot/dts/Makefile| 5 ++ ...tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso | 56 +++ 2 files changed, 61 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 758b6f2f14e7d..626f7172c74e9 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -805,6 +805,11 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tqmls1021a-mbls1021a.dtb \ ls1021a-tsn.dtb \ ls1021a-twr.dtb + +ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo + +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb + dtb-$(CONFIG_SOC_VF610) += \ vf500-colibri-eval-v3.dtb \ vf610-bk4.dtb \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso new file mode 100644 index 0..252ef982dd862 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso @@ -0,0 +1,56 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + + dcu_out: endpoint { + remote-endpoint = <&lvds_encoder_in>; + }; + }; +}; + +&display { + compatible = "tianma,tm070jvhg33"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder_out>; + }; + }; +}; + +&lvds_encoder { + status = "okay"; + + ports { + port@0 { + lvds_encoder_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; + + port@1 { + lvds_encoder_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; + }; +}; -- 2.34.1
[PATCH v3 03/10] ARM: dts: ls1021a: add TQMLS1021A flash partition layout
The bootloader does not add the partitions into DT, so add them manually here. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * None arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 31 +++ 1 file changed, 31 insertions(+) diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi b/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi index 24ad4a76fe597..ea6734253ba88 100644 --- a/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi @@ -77,5 +77,36 @@ qflash0: flash@0 { spi-rx-bus-width = <4>; spi-tx-bus-width = <4>; reg = <0>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot@0 { + label = "U-Boot-PBL"; + reg = <0x0 0xe>; + }; + + env@e { + label = "U-Boot Environment"; + reg = <0xe 0x1>; + }; + + dtb@f { + label = "DTB"; + reg = <0xf 0x1>; + }; + + linux@10 { + label = "Linux"; + reg = <0x10 0x70>; + }; + + rootfs@80 { + label = "RootFS"; + reg = <0x80 0x380>; + }; + }; }; }; -- 2.34.1
[PATCH v3 02/10] ARM: dts: ls1021a: add TQ-Systems MBLS102xA device tree
Add device tree for the MBLS102xA mainboard with TQMLS1021A SoM. Signed-off-by: Alexander Stein --- Changes in v3: * None Changes in v2: * Remove unnecessary status = "okay" * Remove underscore from node names * Move reg direct below compatiblefor i2c devices * Remove i2c device nodes without software support Add a comment about existance for the device though arch/arm/boot/dts/Makefile| 1 + .../boot/dts/ls1021a-tqmls1021a-mbls1021a.dts | 406 ++ arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 81 3 files changed, 488 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 53e9c96136519..758b6f2f14e7d 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -802,6 +802,7 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-iot.dtb \ ls1021a-moxa-uc-8410a.dtb \ ls1021a-qds.dtb \ + ls1021a-tqmls1021a-mbls1021a.dtb \ ls1021a-tsn.dtb \ ls1021a-twr.dtb dtb-$(CONFIG_SOC_VF610) += \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts new file mode 100644 index 0..aa8b605344655 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts @@ -0,0 +1,406 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2013-2014 Freescale Semiconductor, Inc. + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + */ + +/dts-v1/; + +#include +#include +#include +#include +#include +#include "ls1021a-tqmls1021a.dtsi" + +/ { + model = "TQMLS102xA SOM on MBLS102xA"; + compatible = "tq,ls1021a-tqmls1021a-mbls102xa", "tq,ls1021a-tqmls1021a", "fsl,ls1021a"; + + audio_mclk: audio-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <2500>; + }; + + backlight_dcu: backlight { + compatible = "gpio-backlight"; + gpios = <&pca9530 0 GPIO_ACTIVE_LOW>; + status = "disabled"; + }; + + gpio-keys { + compatible = "gpio-keys"; + autorepeat; + + switch-1 { + label = "S6"; + linux,code = ; + gpios = <&pca9554_0 0 GPIO_ACTIVE_LOW>; + }; + + btn2: switch-2 { + label = "S7"; + linux,code = ; + gpios = <&pca9554_0 1 GPIO_ACTIVE_LOW>; + }; + + switch-3 { + label = "S8"; + linux,code = ; + gpios = <&pca9554_0 2 GPIO_ACTIVE_LOW>; + }; + }; + + gpio_leds: gpio-leds { + compatible = "gpio-leds"; + + led-0 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <0>; + gpios = <&pca9554_2 4 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-1 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <1>; + gpios = <&pca9554_2 5 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-2 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <2>; + gpios = <&pca9554_2 6 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-3 { + color = ; + function = LED_FUNCTION_HEARTBEAT; + function-enumerator = <0>; + gpios = <&pca9554_2 7 GPIO_ACTIVE_LOW>; + linux,default-trigger = "heartbeat"; + }; + }; + + lvds_encoder: lvds-encoder { + compatible = "ti,sn75lvds83", "lvds-encoder"; + power-supply = <®_3p3v>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + +
[PATCH v3 01/10] dt-bindings: arm: fsl: add TQ-Systems LS1021A board
From: Matthias Schiffer TQMLS102xA is a SOM family using NXP LS1021A CPU family. MBLS102xA is an evaluation mainboard for this SOM. Signed-off-by: Matthias Schiffer Signed-off-by: Alexander Stein Acked-by: Krzysztof Kozlowski --- Changes in v3: * Added Krzysztof's A-b Documentation/devicetree/bindings/arm/fsl.yaml | 10 ++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml index 3ba354578e8f9..489d350c3bbbe 100644 --- a/Documentation/devicetree/bindings/arm/fsl.yaml +++ b/Documentation/devicetree/bindings/arm/fsl.yaml @@ -1164,6 +1164,16 @@ properties: - fsl,ls1021a-twr - const: fsl,ls1021a + - description: + TQ-Systems TQMLS102xA is a series of socketable SOM featuring + LS102x system-on-chip variants. MBLS102xA mainboard can be used as + starterkit. +items: + - enum: + - tq,ls1021a-tqmls1021a-mbls102xa + - const: tq,ls1021a-tqmls1021a + - const: fsl,ls1021a + - description: LS1028A based Boards items: - enum: -- 2.34.1
[PATCH v3 00/10] TQMLS1021A support
Hi, thanks everyone for the feedback. This is the third round of this series to add support for the TQMLS1021A using the MBLS1021A mainboard. The changelog is included in the individual patches. Best regards, Alexander Alexander Stein (7): ARM: dts: ls1021a: add TQ-Systems MBLS102xA device tree ARM: dts: ls1021a: add TQMLS1021A flash partition layout ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS TM070JVHG33 overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA HDMI overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH DC44 overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH FC21 overlay ARM: multi_v7_defconfig: Add options to support TQMLS102xA series Matthias Schiffer (1): dt-bindings: arm: fsl: add TQ-Systems LS1021A board Nicolas Saenz Julienne (2): kbuild: Add config fragment merge functionality ARM: add multi_v7_lpae_defconfig .../devicetree/bindings/arm/fsl.yaml | 10 + arch/arm/Makefile | 6 + arch/arm/boot/dts/Makefile| 12 + ...1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts | 55 +++ ...1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts | 55 +++ .../ls1021a-tqmls1021a-mbls1021a-hdmi.dtso| 36 ++ ...tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso | 56 +++ .../boot/dts/ls1021a-tqmls1021a-mbls1021a.dts | 406 ++ arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 112 + arch/arm/configs/lpae.config | 2 + arch/arm/configs/multi_v7_defconfig | 13 + arch/powerpc/Makefile | 12 +- scripts/Makefile.defconf | 15 + 13 files changed, 779 insertions(+), 11 deletions(-) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi create mode 100644 arch/arm/configs/lpae.config create mode 100644 scripts/Makefile.defconf -- 2.34.1
[PATCH v2 10/10] ARM: add multi_v7_lpae_defconfig
From: Nicolas Saenz Julienne The only missing configuration option preventing us from using multi_v7_defconfig with the Raspberry Pi 4 is ARM_LPAE. It's needed as the PCIe controller found on the SoC depends on 64bit addressing, yet can't be included as not all v7 boards support LPAE. Introduce multi_v7_lpae_defconfig, built off multi_v7_defconfig, which will avoid us having to duplicate and maintain multiple similar configurations. Needless to say the Raspberry Pi 4 is not the only platform that can benefit from this new configuration. Signed-off-by: Nicolas Saenz Julienne Signed-off-by: Alexander Stein --- Directly applied from https://lore.kernel.org/linux-arm-kernel/20200203184820.4433-2-nsaenzjulie...@suse.de/T/#m96968dd45c0aaa88e0a7387024b5ac13b002363d Although I had to apply manually arch/arm/Makefile| 4 arch/arm/configs/lpae.config | 1 + 2 files changed, 5 insertions(+) create mode 100644 arch/arm/configs/lpae.config diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 506dbc72323bc..80d9eaf3dc06a 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -314,6 +314,10 @@ endif # My testing targets (bypasses dependencies) bp:; $(Q)$(MAKE) $(build)=$(boot) $(boot)/bootpImage +include $(srctree)/scripts/Makefile.defconf +PHONY += multi_v7_lpae_defconfig +multi_v7_lpae_defconfig: + $(call merge_into_defconfig,multi_v7_defconfig,lpae) define archhelp echo '* zImage- Compressed kernel image (arch/$(ARCH)/boot/zImage)' diff --git a/arch/arm/configs/lpae.config b/arch/arm/configs/lpae.config new file mode 100644 index 0..19bab134e014b --- /dev/null +++ b/arch/arm/configs/lpae.config @@ -0,0 +1 @@ +CONFIG_ARM_LPAE=y -- 2.34.1
[PATCH v2 09/10] kbuild: Add config fragment merge functionality
From: Nicolas Saenz Julienne So far this function was only used locally in powerpc, some other architectures might benefit from it. Move it into scripts/Makefile.defconf. Signed-off-by: Nicolas Saenz Julienne Signed-off-by: Alexander Stein --- Directly applied from https://lore.kernel.org/linux-arm-kernel/20200203184820.4433-2-nsaenzjulie...@suse.de/T/#m96968dd45c0aaa88e0a7387024b5ac13b002363d arch/powerpc/Makefile| 12 +--- scripts/Makefile.defconf | 15 +++ 2 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 scripts/Makefile.defconf diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile index dc4cbf0a5ca95..533457466ce25 100644 --- a/arch/powerpc/Makefile +++ b/arch/powerpc/Makefile @@ -253,17 +253,7 @@ PHONY += bootwrapper_install bootwrapper_install: $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) -# Used to create 'merged defconfigs' -# To use it $(call) it with the first argument as the base defconfig -# and the second argument as a space separated list of .config files to merge, -# without the .config suffix. -define merge_into_defconfig - $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ - -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ - $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) - +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig -endef - +include $(srctree)/scripts/Makefile.defconf PHONY += pseries_le_defconfig pseries_le_defconfig: $(call merge_into_defconfig,pseries_defconfig,le) diff --git a/scripts/Makefile.defconf b/scripts/Makefile.defconf new file mode 100644 index 0..ab332f7534f51 --- /dev/null +++ b/scripts/Makefile.defconf @@ -0,0 +1,15 @@ +# SPDX-License-Identifier: GPL-2.0 +# Configuration heplers + +# Creates 'merged defconfigs' +# --- +# Usage: +# $(call merge_into_defconfig,base_config,config_fragment1 config_fragment2 ...) +# +# Input config fragments without '.config' suffix +define merge_into_defconfig + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ + -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ + $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) + +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig +endef -- 2.34.1
[PATCH v2 08/10] ARM: multi_v7_defconfig: Add options to support TQMLS102xA series
Enable drivers used on TQMLS102xA + MBLS1021A. Signed-off-by: Alexander Stein --- Changes in v2: * Changed symbols to 'm' where possible arch/arm/configs/multi_v7_defconfig | 13 + 1 file changed, 13 insertions(+) diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig index ee184eb37adcf..92628a160cfb3 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -191,6 +191,7 @@ CONFIG_PCI_TEGRA=y CONFIG_PCI_RCAR_GEN2=y CONFIG_PCIE_RCAR_HOST=y CONFIG_PCI_DRA7XX_EP=y +CONFIG_PCI_LAYERSCAPE=y CONFIG_PCI_ENDPOINT=y CONFIG_PCI_ENDPOINT_CONFIGFS=y CONFIG_PCI_EPF_TEST=m @@ -249,6 +250,7 @@ CONFIG_AHCI_ST=y CONFIG_AHCI_IMX=y CONFIG_AHCI_SUNXI=y CONFIG_AHCI_TEGRA=y +CONFIG_AHCI_QORIQ=y CONFIG_SATA_HIGHBANK=y CONFIG_SATA_MV=y CONFIG_SATA_RCAR=y @@ -329,6 +331,7 @@ CONFIG_TOUCHSCREEN_ADC=m CONFIG_TOUCHSCREEN_ATMEL_MXT=m CONFIG_TOUCHSCREEN_ELAN=m CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m CONFIG_TOUCHSCREEN_WM97XX=m CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_STMPE=y @@ -483,6 +486,7 @@ CONFIG_GPIO_ASPEED_SGPIO=y CONFIG_GPIO_DAVINCI=y CONFIG_GPIO_DWAPB=y CONFIG_GPIO_EM=y +CONFIG_GPIO_MPC8XXX=y CONFIG_GPIO_MXC=y CONFIG_GPIO_RCAR=y CONFIG_GPIO_SYSCON=y @@ -493,6 +497,7 @@ CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCF857X=y CONFIG_GPIO_PALMAS=y +CONFIG_GPIO_STMPE=y CONFIG_GPIO_TPS6586X=y CONFIG_GPIO_TPS65910=y CONFIG_GPIO_TWL4030=y @@ -533,6 +538,7 @@ CONFIG_SENSORS_INA2XX=m CONFIG_CPU_THERMAL=y CONFIG_DEVFREQ_THERMAL=y CONFIG_IMX_THERMAL=y +CONFIG_QORIQ_THERMAL=m CONFIG_ROCKCHIP_THERMAL=y CONFIG_RCAR_THERMAL=y CONFIG_ARMADA_THERMAL=y @@ -821,6 +827,8 @@ CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m CONFIG_SND_SOC_SGTL5000=m CONFIG_SND_SOC_STI_SAS=m +CONFIG_SND_SOC_TLV320AIC32X4=m +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m CONFIG_SND_SOC_WM8978=m CONFIG_SND_AUDIO_GRAPH_CARD=m CONFIG_USB=y @@ -830,6 +838,7 @@ CONFIG_USB_XHCI_MVEBU=y CONFIG_USB_XHCI_TEGRA=m CONFIG_USB_BRCMSTB=m CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_FSL=m CONFIG_USB_EHCI_HCD_STI=y CONFIG_USB_EHCI_EXYNOS=m CONFIG_USB_EHCI_MV=m @@ -933,6 +942,8 @@ CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CPCAP=m +CONFIG_LEDS_PCA9532=m +CONFIG_LEDS_PCA9532_GPIO=y CONFIG_LEDS_GPIO=y CONFIG_LEDS_PWM=y CONFIG_LEDS_MAX8997=m @@ -949,6 +960,7 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y CONFIG_LEDS_TRIGGER_TRANSIENT=y CONFIG_LEDS_TRIGGER_CAMERA=y CONFIG_EDAC=y +CONFIG_EDAC_LAYERSCAPE=y CONFIG_EDAC_HIGHBANK_MC=y CONFIG_EDAC_HIGHBANK_L2=y CONFIG_RTC_CLASS=y @@ -962,6 +974,7 @@ CONFIG_RTC_DRV_MAX8997=m CONFIG_RTC_DRV_MAX77686=y CONFIG_RTC_DRV_RK808=m CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_PCF85063=m CONFIG_RTC_DRV_PCF85363=m CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_TWL4030=y -- 2.34.1
[PATCH v2 07/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH FC21 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v2: * None arch/arm/boot/dts/Makefile| 2 + ...1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts | 55 +++ 2 files changed, 57 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 774cc57274e20..bc51a5b868c10 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,10 +806,12 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-cdtech-fc21-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dtbo ls1021a-tqmls1021a-mbls1021a-cdtech-dc44-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtbo ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts new file mode 100644 index 0..4bd10d0e17b90 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; +}; + +&display { + compatible = "cdtech,s070pws19hp-fc21"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; +}; + +&i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + polytouch: touchscreen@38 { + compatible = "edt,edt-ft5406"; + reg = <0x38>; + interrupt-parent = <&pca9554_0>; + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; + /* LCD_PWR_EN -> TSC_WAKE */ + wake-gpios = <&pca9554_1 4 GPIO_ACTIVE_HIGH>; + gain = <20>; + touchscreen-size-x = <1024>; + touchscreen-size-y = <600>; + }; +}; -- 2.34.1
[PATCH v2 06/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH DC44 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v2: * None arch/arm/boot/dts/Makefile| 2 + ...1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts | 55 +++ 2 files changed, 57 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index d5105e8179431..774cc57274e20 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,9 +806,11 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-cdtech-dc44-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtbo ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts new file mode 100644 index 0..ddc71bc597295 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; +}; + +&display { + compatible = "cdtech,s070swv29hg-dc44"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; +}; + +&i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + polytouch: touchscreen@38 { + compatible = "edt,edt-ft5406"; + reg = <0x38>; + interrupt-parent = <&pca9554_0>; + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; + /* LCD_PWR_EN -> TSC_WAKE */ + wake-gpios = <&pca9554_1 4 GPIO_ACTIVE_HIGH>; + gain = <20>; + touchscreen-size-x = <800>; + touchscreen-size-y = <480>; + }; +}; -- 2.34.1
[PATCH v2 05/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA HDMI overlay
Add device tree overlay for HDMI usage. Signed-off-by: Alexander Stein --- Changes in v2: * None arch/arm/boot/dts/Makefile| 2 ++ .../ls1021a-tqmls1021a-mbls1021a-hdmi.dtso| 36 +++ 2 files changed, 38 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index e6943dc73a3fd..d5105e8179431 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -806,8 +806,10 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tsn.dtb \ ls1021a-twr.dtb +ls1021a-tqmls1021a-mbls1021a-hdmi-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-hdmi.dtbo ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-hdmi.dtb dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb dtb-$(CONFIG_SOC_VF610) += \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso new file mode 100644 index 0..f5ca22643c08e --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +&dcu { + status = "okay"; + + port { + dcu_out: endpoint { + remote-endpoint = <&sii9022a_in>; + }; + }; +}; + +&hdmi_out { + status = "okay"; +}; + +&sii9022a { + status = "okay"; + + ports { + port@0 { + sii9022a_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; + }; +}; -- 2.34.1
[PATCH v2 04/10] ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS TM070JVHG33 overlay
Add device tree overlay for LVDS display usage. Signed-off-by: Alexander Stein --- Changes in v2: * None arch/arm/boot/dts/Makefile| 5 ++ ...tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso | 56 +++ 2 files changed, 61 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 44b5ed44b13d6..e6943dc73a3fd 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -805,6 +805,11 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-tqmls1021a-mbls1021a.dtb \ ls1021a-tsn.dtb \ ls1021a-twr.dtb + +ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33-dtbs := ls1021a-tqmls1021a-mbls1021a.dtb ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtbo + +dtb-$(CONFIG_SOC_LS1021A) += ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtb + dtb-$(CONFIG_SOC_VF610) += \ vf500-colibri-eval-v3.dtb \ vf610-bk4.dtb \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso new file mode 100644 index 0..252ef982dd862 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso @@ -0,0 +1,56 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + + */ + +/dts-v1/; +/plugin/; + +#include + +&backlight_dcu { + status = "okay"; +}; + +&dcu { + status = "okay"; + + port { + + dcu_out: endpoint { + remote-endpoint = <&lvds_encoder_in>; + }; + }; +}; + +&display { + compatible = "tianma,tm070jvhg33"; + status = "okay"; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder_out>; + }; + }; +}; + +&lvds_encoder { + status = "okay"; + + ports { + port@0 { + lvds_encoder_in: endpoint { + remote-endpoint = <&dcu_out>; + }; + }; + + port@1 { + lvds_encoder_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; + }; +}; -- 2.34.1
[PATCH v2 03/10] ARM: dts: ls1021a: add TQMLS1021A flash partition layout
The bootloader does not add the partitions into DT, so add them manually here. Signed-off-by: Alexander Stein --- Changes in v2: * None arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 31 +++ 1 file changed, 31 insertions(+) diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi b/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi index 24ad4a76fe597..ea6734253ba88 100644 --- a/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi @@ -77,5 +77,36 @@ qflash0: flash@0 { spi-rx-bus-width = <4>; spi-tx-bus-width = <4>; reg = <0>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot@0 { + label = "U-Boot-PBL"; + reg = <0x0 0xe>; + }; + + env@e { + label = "U-Boot Environment"; + reg = <0xe 0x1>; + }; + + dtb@f { + label = "DTB"; + reg = <0xf 0x1>; + }; + + linux@10 { + label = "Linux"; + reg = <0x10 0x70>; + }; + + rootfs@80 { + label = "RootFS"; + reg = <0x80 0x380>; + }; + }; }; }; -- 2.34.1
[PATCH v2 02/10] ARM: dts: ls1021a: add TQ-Systems MBLS102xA device tree
Add device tree for the MBLS102xA mainboard with TQMLS1021A SoM. Signed-off-by: Alexander Stein --- Changes in v2: * Remove unnecessary status = "okay" * Remove underscore from node names * Move reg direct below compatiblefor i2c devices * Remove i2c device nodes without software support Add a comment about existance for the device though arch/arm/boot/dts/Makefile| 1 + .../boot/dts/ls1021a-tqmls1021a-mbls1021a.dts | 406 ++ arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 81 3 files changed, 488 insertions(+) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index d0c07867aeabe..44b5ed44b13d6 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -802,6 +802,7 @@ dtb-$(CONFIG_SOC_LS1021A) += \ ls1021a-iot.dtb \ ls1021a-moxa-uc-8410a.dtb \ ls1021a-qds.dtb \ + ls1021a-tqmls1021a-mbls1021a.dtb \ ls1021a-tsn.dtb \ ls1021a-twr.dtb dtb-$(CONFIG_SOC_VF610) += \ diff --git a/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts new file mode 100644 index 0..aa8b605344655 --- /dev/null +++ b/arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts @@ -0,0 +1,406 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) +/* + * Copyright 2013-2014 Freescale Semiconductor, Inc. + * Copyright 2018-2023 TQ-Systems GmbH , + * D-82229 Seefeld, Germany. + * Author: Alexander Stein + */ + +/dts-v1/; + +#include +#include +#include +#include +#include +#include "ls1021a-tqmls1021a.dtsi" + +/ { + model = "TQMLS102xA SOM on MBLS102xA"; + compatible = "tq,ls1021a-tqmls1021a-mbls102xa", "tq,ls1021a-tqmls1021a", "fsl,ls1021a"; + + audio_mclk: audio-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <2500>; + }; + + backlight_dcu: backlight { + compatible = "gpio-backlight"; + gpios = <&pca9530 0 GPIO_ACTIVE_LOW>; + status = "disabled"; + }; + + gpio-keys { + compatible = "gpio-keys"; + autorepeat; + + switch-1 { + label = "S6"; + linux,code = ; + gpios = <&pca9554_0 0 GPIO_ACTIVE_LOW>; + }; + + btn2: switch-2 { + label = "S7"; + linux,code = ; + gpios = <&pca9554_0 1 GPIO_ACTIVE_LOW>; + }; + + switch-3 { + label = "S8"; + linux,code = ; + gpios = <&pca9554_0 2 GPIO_ACTIVE_LOW>; + }; + }; + + gpio_leds: gpio-leds { + compatible = "gpio-leds"; + + led-0 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <0>; + gpios = <&pca9554_2 4 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-1 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <1>; + gpios = <&pca9554_2 5 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-2 { + color = ; + function = LED_FUNCTION_STATUS; + function-enumerator = <2>; + gpios = <&pca9554_2 6 GPIO_ACTIVE_LOW>; + linux,default-trigger = "default-on"; + }; + + led-3 { + color = ; + function = LED_FUNCTION_HEARTBEAT; + function-enumerator = <0>; + gpios = <&pca9554_2 7 GPIO_ACTIVE_LOW>; + linux,default-trigger = "heartbeat"; + }; + }; + + lvds_encoder: lvds-encoder { + compatible = "ti,sn75lvds83", "lvds-encoder"; + power-supply = <®_3p3v>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + +
[PATCH v2 01/10] dt-bindings: arm: fsl: add TQ-Systems LS1021A board
From: Matthias Schiffer TQMLS102xA is a SOM family using NXP LS1021A CPU family. MBLS102xA is an evaluation mainboard for this SOM. Signed-off-by: Matthias Schiffer Signed-off-by: Alexander Stein --- Changes in v2: * Improved the description mentioning this is a socketable module Documentation/devicetree/bindings/arm/fsl.yaml | 10 ++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml index 3ba354578e8f9..489d350c3bbbe 100644 --- a/Documentation/devicetree/bindings/arm/fsl.yaml +++ b/Documentation/devicetree/bindings/arm/fsl.yaml @@ -1164,6 +1164,16 @@ properties: - fsl,ls1021a-twr - const: fsl,ls1021a + - description: + TQ-Systems TQMLS102xA is a series of socketable SOM featuring + LS102x system-on-chip variants. MBLS102xA mainboard can be used as + starterkit. +items: + - enum: + - tq,ls1021a-tqmls1021a-mbls102xa + - const: tq,ls1021a-tqmls1021a + - const: fsl,ls1021a + - description: LS1028A based Boards items: - enum: -- 2.34.1
[PATCH v2 00/10] TQMLS1021A support
Hi, this is the second round of this series to add support for the TQMLS1021A using the MBLS1021A mainboard. The changelog is included in the individual patches but the most notable one is picking up the old patch series for adding lpae config snippet support. Best regards, Alexander Alexander Stein (7): ARM: dts: ls1021a: add TQ-Systems MBLS102xA device tree ARM: dts: ls1021a: add TQMLS1021A flash partition layout ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS TM070JVHG33 overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA HDMI overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH DC44 overlay ARM: dts: ls1021a: add TQMLS1021A/MBLS102xA LVDS CDTECH FC21 overlay ARM: multi_v7_defconfig: Add options to support TQMLS102xA series Matthias Schiffer (1): dt-bindings: arm: fsl: add TQ-Systems LS1021A board Nicolas Saenz Julienne (2): kbuild: Add config fragment merge functionality ARM: add multi_v7_lpae_defconfig .../devicetree/bindings/arm/fsl.yaml | 10 + arch/arm/Makefile | 4 + arch/arm/boot/dts/Makefile| 12 + ...1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts | 55 +++ ...1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts | 55 +++ .../ls1021a-tqmls1021a-mbls1021a-hdmi.dtso| 36 ++ ...tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso | 56 +++ .../boot/dts/ls1021a-tqmls1021a-mbls1021a.dts | 406 ++ arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi | 112 + arch/arm/configs/lpae.config | 1 + arch/arm/configs/multi_v7_defconfig | 13 + arch/powerpc/Makefile | 12 +- scripts/Makefile.defconf | 15 + 13 files changed, 776 insertions(+), 11 deletions(-) create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-dc44.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-cdtech-fc21.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-hdmi.dtso create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a-lvds-tm070jvhg33.dtso create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a-mbls1021a.dts create mode 100644 arch/arm/boot/dts/ls1021a-tqmls1021a.dtsi create mode 100644 arch/arm/configs/lpae.config create mode 100644 scripts/Makefile.defconf -- 2.34.1
[PATCH 1/1] ASoC: imx-hdmi: Use dev_err_probe
This silences -517 errors and helps figuring out why the device probe is deferred. Signed-off-by: Alexander Stein --- sound/soc/fsl/imx-hdmi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/fsl/imx-hdmi.c b/sound/soc/fsl/imx-hdmi.c index a780cf5a65ffa..b6cc7e6c2a320 100644 --- a/sound/soc/fsl/imx-hdmi.c +++ b/sound/soc/fsl/imx-hdmi.c @@ -202,7 +202,7 @@ static int imx_hdmi_probe(struct platform_device *pdev) snd_soc_card_set_drvdata(&data->card, data); ret = devm_snd_soc_register_card(&pdev->dev, &data->card); if (ret) { - dev_err(&pdev->dev, "snd_soc_register_card failed (%d)\n", ret); + dev_err_probe(&pdev->dev, ret, "snd_soc_register_card failed\n"); goto fail; } -- 2.34.1
[PATCH 1/1] ASoC: fsl_sai: Use dev_err_probe
This helps figuring out why the device probe is deferred, e.g. missing FSL_EDMA driver. Signed-off-by: Alexander Stein --- Old: root@ls1021:~# cat /sys/kernel/debug/devices_deferred sound fsl-asoc-card: snd_soc_register_card failed: -517 2b5.sai New: root@ls1021:~# cat /sys/kernel/debug/devices_deferred sound fsl-asoc-card: snd_soc_register_card failed: -517 2b5.sai fsl-sai: Registering PCM dmaengine failed sound/soc/fsl/fsl_sai.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c index 1c9be8a5dcb13..2a38e2bdf9893 100644 --- a/sound/soc/fsl/fsl_sai.c +++ b/sound/soc/fsl/fsl_sai.c @@ -1458,14 +1458,17 @@ static int fsl_sai_probe(struct platform_device *pdev) if (sai->soc_data->use_imx_pcm) { ret = imx_pcm_dma_init(pdev); if (ret) { + dev_err_probe(dev, ret, "PCM DMA init failed\n"); if (!IS_ENABLED(CONFIG_SND_SOC_IMX_PCM_DMA)) dev_err(dev, "Error: You must enable the imx-pcm-dma support!\n"); goto err_pm_get_sync; } } else { ret = devm_snd_dmaengine_pcm_register(dev, NULL, 0); - if (ret) + if (ret) { + dev_err_probe(dev, ret, "Registering PCM dmaengine failed\n"); goto err_pm_get_sync; + } } ret = devm_snd_soc_register_component(dev, &fsl_component, -- 2.34.1
Re: [PATCH 1/1] serial/uuc_uart: Set shutdown timeout to CONFIG_HZ independent 2ms
On Monday 05 December 2016 10:04:27, Timur Tabi wrote: > Alexander Stein wrote: > > - schedule_timeout(2); > > + schedule_timeout(msecs_to_jiffies(2)); > > NACK. > > So I don't remember why I wrote this code, but I don't think I was > expecting it to be 2ms. Instead, I think I just wanted it to be some > delay, but I believed that schedule_timeout(1) was too short or would be > "optimized" out somehow. > > Note that right below this, I do: > > if (qe_port->wait_closing) { > /* Wait a bit longer */ > set_current_state(TASK_UNINTERRUPTIBLE); > schedule_timeout(qe_port->wait_closing); > } > > And wait_closing is a number of jiffies, so I knew that > schedule_timeout() took jiffies as a parameter. > > So I think I'm going to NACK this patch, since I believe I knew what I > was doing when I wrote it five years ago. Okay, I was just wondering why the timeout is dependant on the timer tick. That didn't seem obvious to me. Rethinking about this, I would rather replace those lines with msleep instead. Best regards, Alexander
[PATCH 1/1] serial/uuc_uart: Set shutdown timeout to CONFIG_HZ independent 2ms
schedule_timeout takes a timeout in jiffies resolution. So pass 2ms as a converted jiffies value. This makes the timeout independent of CONFIG_HZ. Signed-off-by: Alexander Stein --- drivers/tty/serial/ucc_uart.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/serial/ucc_uart.c b/drivers/tty/serial/ucc_uart.c index 481eb29..c6c01a4 100644 --- a/drivers/tty/serial/ucc_uart.c +++ b/drivers/tty/serial/ucc_uart.c @@ -827,7 +827,7 @@ static void qe_uart_shutdown(struct uart_port *port) break; } set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout(2); + schedule_timeout(msecs_to_jiffies(2)); } if (qe_port->wait_closing) { -- 2.7.3
[PATCH 1/1] serial/uuc_uart: Support higher bitrates than 115200 Bit/s
The maximum bitrate supported depends on the clock rate used in BRG. This is stored in port.uartclk during probe. Respecting the 16x oversampling higher bitrates can be supported. Signed-off-by: Alexander Stein --- drivers/tty/serial/ucc_uart.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/serial/ucc_uart.c b/drivers/tty/serial/ucc_uart.c index 7d2532b..73190f5 100644 --- a/drivers/tty/serial/ucc_uart.c +++ b/drivers/tty/serial/ucc_uart.c @@ -950,7 +950,7 @@ static void qe_uart_set_termios(struct uart_port *port, if ((termios->c_cflag & CREAD) == 0) port->read_status_mask &= ~BD_SC_EMPTY; - baud = uart_get_baud_rate(port, termios, old, 0, 115200); + baud = uart_get_baud_rate(port, termios, old, 0, port->uartclk / 16); /* Do we really need a spinlock here? */ spin_lock_irqsave(&port->lock, flags); -- 2.3.6 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev