[PATCH 1/2] ARM: dts: imx6qdl: Add Variscite VAR-SOM-MX6 SoM support

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Wed Jul 19 12:24:19 PDT 2023


On 19/07/2023 20:57, James Hilliard wrote:
> On Wed, Jul 19, 2023 at 11:16 AM Krzysztof Kozlowski
> <krzysztof.kozlowski at linaro.org> wrote:
>>


>>> +
>>> +/ {
>>> +     model = "Variscite i.MX6 QUAD/DUAL VAR-SOM-MX6";
>>> +     compatible = "fsl,imx6q";
>>
>> That's not correct compatible. It's not Imx6 soc. It's a som.
> 
> I'm confused, AFAIU the VAR-SOM-MX6 uses an imx6q SoC.

True, I should say - that's incomplete compatible. You claim here this
is imx6q. Not that it uses imx6q... Add your own compatible and document
all of them.

> 
>>
>>> +...
>>> +
>>> +     sound: sound {
>>> +             compatible = "simple-audio-card";
>>> +             simple-audio-card,name = "var-som-audio";
>>> +             simple-audio-card,format = "i2s";
>>> +             simple-audio-card,bitclock-master = <&sound_codec>;
>>> +             simple-audio-card,frame-master = <&sound_codec>;
>>> +             simple-audio-card,widgets = "Headphone", "Headphone Jack",
>>> +                                         "Line", "Line In", "Microphone", "Mic Jack";
>>> +             simple-audio-card,routing = "Headphone Jack", "HPLOUT",
>>> +                                         "Headphone Jack", "HPROUT",
>>> +                                         "LINE1L", "Line In",
>>> +                                         "LINE1R", "Line In";
>>> +
>>> +             sound_cpu: simple-audio-card,cpu {
>>> +                     sound-dai = <&ssi2>;
>>> +             };
>>> +
>>> +             sound_codec: simple-audio-card,codec {
>>> +                     sound-dai = <&tlv320aic3106>;
>>> +                     clocks = <&clks IMX6QDL_CLK_CKO>;
>>> +             };
>>> +     };
>>> +
>>> +     wlan_bt_rfkill {
>>
>> No underscores in node names.
>>
>> Just "rfkill"
>>
>>
>>> +             compatible = "rfkill-gpio";
>>> +             name = "wlan_bt_rfkill";
>>> +             type = <2>;     /* bluetooth */
>>> +             gpios = <&gpio6 18 GPIO_ACTIVE_HIGH>;
>>> +     };
>>> +};
>>> +
>>
>> ...
>>
>>> +     tlv320aic3106: codec at 1b {
>>> +             compatible = "ti,tlv320aic3106";
>>> +             reg = <0x1b>;
>>> +             #sound-dai-cells = <0>;
>>> +             DRVDD-supply = <&reg_3p3v>;
>>> +             AVDD-supply = <&reg_3p3v>;
>>> +             IOVDD-supply = <&reg_3p3v>;
>>> +             DVDD-supply = <&reg_3p3v>;
>>> +             ai3x-ocmv = <0>;
>>> +             reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;
>>> +             ai3x-gpio-func = <
>>> +                     0 /* AIC3X_GPIO1_FUNC_DISABLED */
>>> +                     5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
>>> +             >;
>>> +     };
>>> +};
>>> +
>>> +&iomuxc {
>>> +     pinctrl-names = "default";
>>> +     pinctrl-0 = <&pinctrl_hog>;
>>> +
>>> +     imx6qdl-var-som-mx6 {
>>> +             pinctrl_hog: hoggrp {
>>> +                     fsl,pins = <
>>> +                             /* CTW6120 IRQ */
>>> +                             MX6QDL_PAD_EIM_DA7__GPIO3_IO07          0x80000000
>>> +                             /* SDMMC2 CD/WP */
>>> +                             MX6QDL_PAD_KEY_COL4__GPIO4_IO14         0x80000000
>>> +                             MX6QDL_PAD_KEY_ROW4__GPIO4_IO15         0x80000000
>>> +                     >;
>>> +             };
>>> +
>>> +             pinctrl_audmux: audmux {
>>
>> It does not look like you tested the DTS against bindings. Please run
>> `make dtbs_check` (see
>> Documentation/devicetree/bindings/writing-schema.rst or
>> https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/
>> for instructions).
>>
>> AFAIR, all of them end with grp
> 
> Ah, that's def throwing a bunch of warnings, although quite a few look
> to be existing
> issues in dependent dtsi files. I'll clean up what I can there.
> 
>>
>>
>> ...
>>
>>> +
>>> +&usdhc3 {
>>> +     pinctrl-names = "default", "state_100mhz", "state_200mhz";
>>> +     pinctrl-0 = <&pinctrl_usdhc3>;
>>> +     pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
>>> +     pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
>>> +     bus-width = <4>;
>>> +     vmmc-supply = <&reg_wl18xx_vmmc>;
>>> +     non-removable;
>>> +     wakeup-source;
>>> +     keep-power-in-suspend;
>>> +     cap-power-off-card;
>>> +     #address-cells = <1>;
>>> +     #size-cells = <0>;
>>> +     status = "okay";
>>> +
>>> +     wlcore: wlcore at 0 {
>>
>> Generic node names. Is this wifi?
> 
> I think it also supports bluetooth technically, although that might be
> under a different node.
> 

Bluetooths are usually under serial, so this is just wifi.

Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list