This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

dts file for TMDSEVM437X and WL1837MODCOM8I module

Other Parts Discussed in Thread: WL1837MODCOM8I, TMDSEVM437X, WL1835, WL1271, WL1281, WL1283, WL1801, WL1831, WL1837

Hi all,


does a dts file exist for interfacing the WL1837MODCOM8I with TMDSEVM437X

if not, is it possible to get the schematic for the TMDSEVM437X rev 1.5B

Thanks,

amf

  • Hi,

    I checked the am437x SDK2.00.00.00. Here is what is done for the wi fi module:

    &mmc3 {

      status = "okay";

      /* these are on the crossbar and are outlined in the

      xbar-event-map element */

      dmas = <&edma 30

      &edma 31>;

      dma-names = "tx", "rx";

      vmmc-supply = <&vmmcwl_fixed>;

      bus-width = <4>;

      pinctrl-names = "default", "sleep";

      pinctrl-0 = <&mmc3_pins_default>;

      pinctrl-1 = <&mmc3_pins_sleep>;

      cap-power-off-card;

      keep-power-in-suspend;

      ti,non-removable;

      #address-cells = <1>;

      #size-cells = <0>;

      wlcore: wlcore@0 {

              compatible = "ti,wl1835";

              reg = <2>;

              interrupt-parent = <&gpio1>;

              interrupts = <23 IRQ_TYPE_LEVEL_HIGH>;

      };

    };

    As you can see wlcore uses the drivers/net/wireless/ti/wlcore/sdio.c, this is because of the compatible = "ti,wl1835"; part. If you check the sdio.c driver, you'll find out, that it is compatible with the following wireless modules:

    #ifdef CONFIG_OF

    static const struct of_device_id wlcore_sdio_of_match_table[] = {

    { .compatible = "ti,wl1271" },

    { .compatible = "ti,wl1273" },

    { .compatible = "ti,wl1281" },

    { .compatible = "ti,wl1283" },

    { .compatible = "ti,wl1801" },

    { .compatible = "ti,wl1805" },

    { .compatible = "ti,wl1807" },

    { .compatible = "ti,wl1831" },

    { .compatible = "ti,wl1835" },

    { .compatible = "ti,wl1837" },

    { }

    };

    So yes, the DTS is compatible with the WL1837 chip, you just may need to change: compatible = "ti,wl1837"; in wlcore child node.

    As for the AM437x Schematics, they are located here:
    processors.wiki.ti.com/.../AM437X_EVM_Boards

    Hope this helps.

    Best Regards, 

  • Hi Yordan,
    I use this ti-sdk-epos-am438x-02.02.00.15 SDK for am437x, but there is not the fuction of "wlcore_sdio_of_match_table[]" in the drivers/net/wireless/ti/wlcore/sdio.c .how can I config the dts to be compatible with the WL1837 chip?

    #ifdef CONFIG_OF
    static struct wl12xx_platform_data *wlcore_probe_of(struct device *dev)
    {
    struct device_node *np = dev->of_node;
    struct wl12xx_platform_data *pdata;

    if (!np || !of_device_is_compatible(np, "ti,wlcore")) {
    dev_err(dev, "No platform data set\n");
    return NULL;
    }

    pdata = kzalloc(sizeof(*pdata), GFP_KERNEL);
    if (!pdata) {
    dev_err(dev, "Can't allocate platform data\n");
    return NULL;
    }

    pdata->irq = irq_of_parse_and_map(np, 0);
    if (!pdata->irq) {
    dev_err(dev, "No irq in platform data\n");
    kfree(pdata);
    return NULL;
    }

    return pdata;
    }
    #else
    static struct wl12xx_platform_data *wlcore_probe_of(struct device *dev)
    {
    return NULL;
    }
    #endif

    Thanks!