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.

AM335X: GPIO not set high from device tree

Dear Ti e2E community,

Am using ti sdk 8 am335x & I am enabling gpio2 24 as active high, as this pin is required for wifi enabling

#if 1
wlan_en_reg: fixedregulator@1 {
compatible = "regulator-fixed";
regulator-name = "wlan-en-regulator";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
gpio = <&gpio2 24 0>;
enable-active-high;
};
#endif

wlan_pins_default: pinmux_wlan_pins_default {
pinctrl-single,pins = <

0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
0x160 (PIN_INPUT_PULLUP | MUX_MODE7) /* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */

>;
};

wlan_pins_sleep: pinmux_wlan_pins_sleep {
pinctrl-single,pins = <

0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
0x160 (PIN_INPUT_PULLUP | MUX_MODE7) /* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */

>;
};

But when I measure after bootup I am not seeing 3.2V uisng multimeter 

Could you please let me know why am not seeing this pin as high even though am driving this pin as high using gpio = <&gpio2 24 0>;

 

Kindly do the needful as early as possible, as am stuck with this from past 3 days

Many Many Thanks in advance

 

  • Which comes first? Why do you pinmux the GPIO with pulldown?
  • Dear Biser,

    Many Thanks a lot for your quick support

    As per the below link it says WLAN-EN pin is pinmuxed with gpio as OUTPULLDOWN ie.,, so I have set it to OUTPUT_PULLDOWN

    http://processors.wiki.ti.com/index.php/WL18xx_Platform_Integration_Guide

    GPIO Pins Configuration

    • In addition to the MMC, UART interfaces, the WiLink module needs three additional GPIO lines:
      • WLAN Enable (GPIO1_16): Set as an output pin

    tunstall-common_cadb.txt
    /*
     * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
     *
     * This program is free software; you can redistribute it and/or modify
     * it under the terms of the GNU General Public License version 2 as
     * published by the Free Software Foundation.
     */
    #include <dt-bindings/interrupt-controller/irq.h>
    /{
        model = "Tunstall Lifeline";
        compatible = "ti,am335x-bone", "ti,am33xx";
    	
    #if 1	
    	wlan_en_reg: fixedregulator@1 {
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio2 24 0>;
    		enable-active-high;
    	};
    #endif	
    
        cpus {
            cpu@0 {
            cpu0-supply = <&dcdc2_reg>;
            };
        };
    
        memory {
            device_type = "memory";
    
            /* As per the processor datasheet external RAM is mapped to 0x8000_0000
             * address, DDR3 size is of 256 MB
             * Below declaration represents the starting address and length of the
             * DDR3register area.
             * First cell represents the starting address of SDRAM and second
             * cell represents the size of the register. Since the size of DDR3 is
             * 256 MB, 2 nd cell size should be 256MB of register area.
             */
            reg = <0x80000000 0x10000000>; /* 256 MB */
        };
    
        /* Tunstall Board LED's configuration */
        leds {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&user_leds_default>;
            pinctrl-1 = <&user_leds_sleep>;
    
            compatible = "gpio-leds";
    
            /* Away LED */
            Away_led@1 {
                label = "Away_led";
                gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Error LED */
            Error_led@2 {
                label = "Error_led";
                gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Alarm LED */
            Alarm_gpio1@3{
                label = "Alarm_led";
                gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Status LED */
            HF_gpio2@4{
                label = "HF_led";
                gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
                default-state = "on"; /* off modified to glow status LED at bootup */
            };
    
            /* RGB1 LED */
            RGB1_cntr0@5{
                label = "RGB1_cntr0";
                gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr1@6{
                label = "RGB1_cntr1";
                gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr2@7{
                label = "RGB1_cntr2";
                gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr0@8{
                label = "RGB2_cntr0";
                gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr1@9{
                label = "RGB2_cntr1";
                gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr2@10{
                label = "RGB2_cntr2";
                gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
        };
        /* End of LED configuration */
    
        /* GSM reset and gsm power on 3v3 pin configuration */
        gsm {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&gsm_default>;
            pinctrl-1 = <&gsm_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        vampc {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&vampc_default>;
            pinctrl-1 = <&vampc_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        audio {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&audio_default>;
            pinctrl-1 = <&audio_sleep>;
            compatible = "gpio-leds";
        };
    
        /* voltage regulators configuration */
        power_enable {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&power_enable_default>;
            pinctrl-1 = <&power_enable_sleep>;
            compatible = "gpio-leds";
        };
    
        /* smart RF radio_reset configuration to reset samrt RF */
        smartrf {
            pinctrl-names = "default";
            pinctrl-0 = <&smartrf_default>;
            compatible = "gpio-leds";
        };
      
        /* output relay pin configuration */
        output_relay {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&output_relay_default>;
            pinctrl-1 = <&output_relay_sleep>;
            compatible = "gpio-leds";
        };
    
        /* battery section related configurations */
        battery {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&battery_default>;
            pinctrl-1 = <&battery_sleep>;
            compatible = "gpio-leds";
        };
    
        /* monoirq configuration */
        monoirq {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&monoirq_default>;
            compatible = "gpio-leds";
        };
    
        /* usb0_ocn configuration */
        usb0_ocn {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&usb00cn_default>;
            pinctrl-1 = <&usb00cn_sleep>;
            compatible = "gpio-leds";
        };
    
        vmmcsd_fixed: fixedregulator@0 {
            compatible = "regulator-fixed";
            regulator-name = "vmmcsd_fixed";
            regulator-min-microvolt = <3300000>;
            regulator-max-microvolt = <3300000>;
        };
    
        /* mii reset pin configuration */
        mii_reset {
            pinctrl-names = "default";
            pinctrl-0 = <&mii_reset_default>;
            compatible = "gpio-leds";
    	
        };
        
        /* All the unused pins are confgured in this node,
         * and they are configured as INPUT_PULLDOWN to make
         * sure that pins are not consuming any power 
         */
    #if 0	 
        unused_pins {
            pinctrl-names = "default";
            pinctrl-0 = <&unusedpins_default>;
            compatible = "gpio-leds";
        };
    #endif	
    #if 0	
    	wlan_en_reg: fixedregulator@1 {
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio2 24 0>;
    		enable-active-high;
    	};
    #endif	
    };
    
    &am33xx_pinmux {
        pinctrl-names = "default";
        pinctrl-0 = <&clkout2_pin>;
    
        user_leds_default: user_leds_default {
            pinctrl-single,pins = <
                0xa0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D0/Away_LED  */
                0xa4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D1/Error_LED */
                0x6C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Alarm_led */
                0x30 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_12 H/F led */
    
                0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* RGB1_cntr0*/
                0xb4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D5/RGB1_Cnt1 */
                0xb8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D6/RGB1_Cnt2 */
    
                0x38 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt0 */
                0xbc (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
                0x19C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
    
                /* 555 timer controller gpio pin */
                0xA8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D2/led_cntl */
                >;
        };
    
        user_leds_sleep: user_leds_sleep {
            pinctrl-single,pins = <
                /* 555 timer controller gpio pin should be ON in deep sleep mode*/
                0xA8 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* D2/LED_CNTL */
            >;
        };
    
        battery_default: battery_default {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
                0x94 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* 83ma_43ma_ch_sel */
                0x1A4 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Batt_on */
            >;
        };
    
        battery_sleep: battery_sleep {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
            >;
        };
    
        output_relay_default: output_relay_default {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        output_relay_sleep: output_relay_sleep {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        gsm_default: gsm_default {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        gsm_sleep: gsm_sleep {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)   /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        vampc_default: vampc_default {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        vampc_sleep: vampc_sleep {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        audio_default: audio_default {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        audio_sleep: audio_sleep {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        power_enable_default: power_enable_default {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3*/
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        power_enable_sleep: power_enable_sleep {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3 */
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        smartrf_default: smartrf_default {
            pinctrl-single,pins = <
                0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* radio reset */
                0x64 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* bootloader_ctrl */
            >;
        };
    
        mii_reset_default: mii_reset_default {
            pinctrl-single,pins = <
                0x3C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* MII reset */
            >;
        };
    
        monoirq_default: monoirq_default {
            pinctrl-single,pins = <
                0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mono_irq */
            >;
        };
    
        usb00cn_default: usb00cn_default {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    
        usb00cn_sleep: usb00cn_sleep {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    #if 0
        wifipowerenable_default: wifipowerenable_default {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* D4/WIFI_PWR_EN */
    
            >;
        };
    
        wifipowerenable_sleep: wifipowerenable_sleep {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* D4/WIFI_PWR_EN */
            >;
        };
    #endif
        i2c0_pins: pinmux_i2c0_pins {
            pinctrl-single,pins = <
                0x188 (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
                0x18c (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
            >;
        };
    
        /* UART0 configuration for Debug port */
        uart0_pins: pinmux_uart0_pins {
            pinctrl-single,pins = <
                0x170 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart0_rxd.uart0_rxd */
                0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart0_txd.uart0_txd */
            >;
        };
    
        /* UART1 configuration for GSM */
        uart1_pins: pinmux_uart1_pins {
            pinctrl-single,pins = <
                0x180 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart1_rxd.uart1_rxd */
                0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart1_txd.uart1_txd */
            >;
        };
    
        /* UART4 configuration for smartRF */
        smartrf_uart4_pins: pinmux_smartrf_uart4_pins {
            pinctrl-single,pins = <
                0x70 (PIN_INPUT_PULLUP | MUX_MODE6)  /* smartrf.uart4_rxd */
                0x74 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)  /* smartrf.uart4_txd */
            >;
        };
    
        /* UART5 configuration for POTS */
        uart5_pins: pinmux_uart5_pins {
            pinctrl-single,pins = <
                0xC4 (PIN_INPUT_PULLUP | MUX_MODE4)  /* uart5_rxd */
                0xC0 (PIN_OUTPUT_PULLDOWN | MUX_MODE4)  /* uart5_txd */
            >;
        };
    
        clkout2_pin: pinmux_clkout2_pin {
            pinctrl-single,pins = <
                0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)  /* xdma_event_intr1.clkout2 */
            >;
        };
    
        cpsw_default: cpsw_default {
            pinctrl-single,pins = <
                /* Slave 1 */
                0x110 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxerr.mii1_rxerr */
                0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txen.mii1_txen */
                0x118 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxdv.mii1_rxdv */
                0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd3.mii1_txd3 */
                0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd2.mii1_txd2 */
                0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd1.mii1_txd1 */
                0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd0.mii1_txd0 */
                0x12c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_txclk.mii1_txclk */
                0x130 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxclk.mii1_rxclk */
                0x134 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd3.mii1_rxd3 */
                0x138 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd2.mii1_rxd2 */
                0x13c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd1.mii1_rxd1 */
                0x140 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd0.mii1_rxd0 */
            >;
        };
    
        cpsw_sleep: cpsw_sleep {
            pinctrl-single,pins = <
                /* Slave 1 reset value */
                0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
        davinci_mdio_default: davinci_mdio_default {
            pinctrl-single,pins = <
                /* MDIO */
                0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* mdio_data.mdio_data */
                0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*D15_PHY_SUP_CNT */
            >;
        };
    
        davinci_mdio_sleep: davinci_mdio_sleep {
            pinctrl-single,pins = <
                /* MDIO reset value */
                0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_data.mdio_data */
                0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /*D15_PHY_SUP_CNT */
            >;
        };
    
    	
        mmc1_pins_default: pinmux_mmc1_pins {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat3.mmc0_dat3 */
                0x0F4 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat2.mmc0_dat2 */
                0x0F8 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat1.mmc0_dat1 */
                0x0FC (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat0.mmc0_dat0 */
                0x100 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_clk.mmc0_clk */
                0x104 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_cmd.mmc0_cmd */
    	
    
            >;
        };
    
        mmc1_pins_sleep: pinmux_mmc1_pins_sleep {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0FC (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x100 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x104 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
    	wlan_pins_default: pinmux_wlan_pins_default {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 (PIN_INPUT_PULLUP | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    
    
    		>;
    	};
    
    	wlan_pins_sleep: pinmux_wlan_pins_sleep {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 (PIN_INPUT_PULLUP | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    
    
    		>;
    	};	
    
    	
        emmc_pins: pinmux_emmc_pins {
            pinctrl-single,pins = <
                0x80 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_clk */
                0x84 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_cmd */
                0x00 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat0 */
                0x04 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat1 */
                0x08 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat2 */
                0x0c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat3 */
                0x10 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat4 */
                0x14 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat5 */
                0x18 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat6 */
                0x1c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat7 */
            >;
        };
    
        ehrpwm1_pin_pwm3_led: pinmux_ehrpwm1_pin_pwm3_led {
            /* Modified to support Status LED to glow at bootup by converting as GPIO pin */
            /*pinctrl-single,pins = < 0x048 MUX_MODE6 >; */ /* ehrpwm pin */
            pinctrl-single,pins = < 0x048 (PIN_OUTPUT_PULLUP | MUX_MODE7) >;  /* ehrpwm pin */
        };
    #if 0
        unusedpins_default: pinmux_unusedpins_default {
            pinctrl-single,pins = <
                0x7C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP12 */
                0x78 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP6 */
                0x4C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_FUNC2 */
                0x68 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GPIO_PBIN */
                0xAC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D3 */
                0xD8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D14 */
              //  0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* WIFI_ENABLE */
              //  0XE0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_EN */
    
            >;
        };
    #endif
    };
    
    /* UART0 configuration for the GSM Port */
    &uart0 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart0_pins>;
    
        status = "okay";
    };
    
    
    /* UART1 configuration for the debug port */
    &uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart1_pins>;
    
        status = "okay";
    };
    
    /* Blue tooth configuration, at present not using */
    #if 0
    /* For USB1 to UART3 */
    &uart3 {
    
        status = "okay";
    
    };
    #endif
    
    /* UART4 configuration for smartRF */
    &uart4 {
        pinctrl-names = "default";
        pinctrl-0 = <&smartrf_uart4_pins>;
        status = "okay";
    };
    
    /* UART5 configuration for the POTS port */
    &uart5 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart5_pins>;
        status = "okay";
    };
    /* End */
    
    /* USB configuration */
    &usb {
        status = "okay";
    
        control@44e10620 {
            status = "okay";
        };
    
        usb-phy@47401300 {
            status = "okay";
        };
    
        usb-phy@47401b00 {
            status = "okay";
        };
    
        usb@47401000 {
            status = "okay";
        };
    #if 0
        usb@47401800 {
            status = "okay";
            /*dr_mode = "host";*/  //COMMENTED  for USB1 to UART3
        };
    #endif
    
        dma-controller@47402000  {
            status = "okay";
        };
    
    };
    
    /* i2c0 configuration  */
    &i2c0 {
        pinctrl-names = "default";
        pinctrl-0 = <&i2c0_pins>;
    
        status = "okay";
        clock-frequency = <400000>;
    
        tps: tps@24 {
            reg = <0x24>;
        };
    
        lm75: tcn75@48 {
            compatible = "lm75,tcn75";
            reg = <0x48>;
        };
    };
    
    
    /include/ "tps65217.dtsi"
    
    &tps {
        ti,pmic-shutdown-controller;
    
        regulators {
            dcdc1_reg: regulator@0 {
                regulator-always-on;
            };
    
            dcdc2_reg: regulator@1 {
                /* VDD_MPU voltage limits 0.95V - 1.325V with +/-4% tolerance */
                regulator-name = "vdd_mpu";
                regulator-min-microvolt = <912500>;
                regulator-max-microvolt = <1378000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            dcdc3_reg: regulator@2 {
                /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
                regulator-name = "vdd_core";
                regulator-min-microvolt = <925000>;
                regulator-max-microvolt = <1150000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            ldo1_reg: regulator@3 {
                regulator-always-on;
            };
    
            ldo2_reg: regulator@4 {
                regulator-always-on;
            };
    
            ldo3_reg: regulator@5 {
                regulator-always-on;
            };
    
            ldo4_reg: regulator@6 {
                regulator-always-on;
            };
    
            rtc@44e3e000 {
                ti,system-power-controller;
            };
        };
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac0 {
        phy_id = <&davinci_mdio>, <1>; /*CADB DP83848 PHY*/
        phy-mode = "mii";
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac1 {
        phy_id = <&davinci_mdio>, <1>;
        phy-mode = "mii";
    };
    
    /* Dual EMAC configuration  */
    &mac {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&cpsw_default>;
        /* Sleep section of ethernet interface handle by Application */
        /*pinctrl-1 = <&cpsw_sleep>;*/ 
    
    };
    
    /* Ethernet subsystem configuration */
    &davinci_mdio {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&davinci_mdio_default>;
        /* Sleep section of ethernet interface handle by Application */
        /* pinctrl-1 = <&davinci_mdio_sleep>; */
    };
    
    
    
    &wkup_m3 {
        ti,scale-data-fw = "am335x-bone-scale-data.bin";
    };
    
    /* EHRPWM1A configuration as PWM, to control the intensity of the LED light */
    &epwmss1 {
        pinctrl-names = "default";
        pinctrl-0 = < &ehrpwm1_pin_pwm3_led >;
    
        status = "okay";
    
        ehrpwm@48302200 {
            status = "okay";
        };
    };
    
    /* SDCard configuration */
    &mmc1 {
    
    	status = "okay";
    	vmmc-supply = <&wlan_en_reg>;
    	bus-width = <4>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mmc1_pins_default &wlan_pins_default>;
    	pinctrl-1 = <&mmc1_pins_sleep &wlan_pins_sleep>;
    //	pinctrl-0 = <&mmc1_pins_default>;
    //	pinctrl-1 = <&mmc1_pins_sleep>;
    	ti,non-removable;
    	ti,needs-special-hs-handling;
    	cap-power-off-card;
    	keep-power-in-suspend;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@0 {
    		compatible = "ti,wl1831";
    		reg = <2>;
    		interrupt-parent = <&gpio0>;
    		interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
    	};
    
    };
    

    And I have hereby attached the Device tree file, Could you please let me help to correct this if am making anything wrong

    Kindly do the needful as early as possible

    Sorry to push you hard, as am stuck with this from 3 days

    Many Thanks in advance

  • Dear Biser,

    Could you please provide any inputs w.r.t the above issue

    Kindly do the needful as early as possible

    Many Thanks in advance
  • Hi Srini,

    You cannot expect the device pad to be high, when you set 0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7).

    The gpio should be set with pullup. Have a look ath am335x Starter Kit dts for reference:
    wl12xx_vmmc: fixedregulator@2 {
    pinctrl-names = "default";
    pinctrl-0 = <&wl12xx_gpio>;
    compatible = "regulator-fixed";
    regulator-name = "vwl1271";
    regulator-min-microvolt = <1800000>;
    regulator-max-microvolt = <1800000>;
    gpio = <&gpio1 29 0>;
    startup-delay-us = <70000>;
    enable-active-high;
    };

    wl12xx_gpio: pinmux_wl12xx_gpio {
    pinctrl-single,pins = <
    0x7c (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_csn0.gpio1_29 */
    >;
    };

    Best Regards,
    Yordan
  • Even after setting to  pullup

    tunstall-common_cadb (2).txt
    /*
     * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
     *
     * This program is free software; you can redistribute it and/or modify
     * it under the terms of the GNU General Public License version 2 as
     * published by the Free Software Foundation.
     */
    #include <dt-bindings/interrupt-controller/irq.h>
    /{
        model = "Tunstall Lifeline";
        compatible = "ti,am335x-bone", "ti,am33xx";
    	
    #if 1	
    	wlan_en_reg: fixedregulator@1 {
    	//	pinctrl-names = "default";
    	//	pinctrl-0 = <&wlan_pins_default>;
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio2 24 GPIO_ACTIVE_HIGH>;
    		startup-delay-us = <70000>;
    		enable-active-high;
    	};
    #endif	
    
        cpus {
            cpu@0 {
            cpu0-supply = <&dcdc2_reg>;
            };
        };
    
        memory {
            device_type = "memory";
    
            /* As per the processor datasheet external RAM is mapped to 0x8000_0000
             * address, DDR3 size is of 256 MB
             * Below declaration represents the starting address and length of the
             * DDR3register area.
             * First cell represents the starting address of SDRAM and second
             * cell represents the size of the register. Since the size of DDR3 is
             * 256 MB, 2 nd cell size should be 256MB of register area.
             */
            reg = <0x80000000 0x10000000>; /* 256 MB */
        };
    
        /* Tunstall Board LED's configuration */
        leds {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&user_leds_default>;
            pinctrl-1 = <&user_leds_sleep>;
    
            compatible = "gpio-leds";
    
            /* Away LED */
            Away_led@1 {
                label = "Away_led";
                gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Error LED */
            Error_led@2 {
                label = "Error_led";
                gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Alarm LED */
            Alarm_gpio1@3{
                label = "Alarm_led";
                gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Status LED */
            HF_gpio2@4{
                label = "HF_led";
                gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
                default-state = "on"; /* off modified to glow status LED at bootup */
            };
    
            /* RGB1 LED */
            RGB1_cntr0@5{
                label = "RGB1_cntr0";
                gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr1@6{
                label = "RGB1_cntr1";
                gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr2@7{
                label = "RGB1_cntr2";
                gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr0@8{
                label = "RGB2_cntr0";
                gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr1@9{
                label = "RGB2_cntr1";
                gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr2@10{
                label = "RGB2_cntr2";
                gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
        };
        /* End of LED configuration */
    
        /* GSM reset and gsm power on 3v3 pin configuration */
        gsm {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&gsm_default>;
            pinctrl-1 = <&gsm_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        vampc {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&vampc_default>;
            pinctrl-1 = <&vampc_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        audio {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&audio_default>;
            pinctrl-1 = <&audio_sleep>;
            compatible = "gpio-leds";
        };
    
        /* voltage regulators configuration */
        power_enable {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&power_enable_default>;
            pinctrl-1 = <&power_enable_sleep>;
            compatible = "gpio-leds";
        };
    
        /* smart RF radio_reset configuration to reset samrt RF */
        smartrf {
            pinctrl-names = "default";
            pinctrl-0 = <&smartrf_default>;
            compatible = "gpio-leds";
        };
      
        /* output relay pin configuration */
        output_relay {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&output_relay_default>;
            pinctrl-1 = <&output_relay_sleep>;
            compatible = "gpio-leds";
        };
    
        /* battery section related configurations */
        battery {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&battery_default>;
            pinctrl-1 = <&battery_sleep>;
            compatible = "gpio-leds";
        };
    
        /* monoirq configuration */
        monoirq {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&monoirq_default>;
            compatible = "gpio-leds";
        };
    
        /* usb0_ocn configuration */
        usb0_ocn {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&usb00cn_default>;
            pinctrl-1 = <&usb00cn_sleep>;
            compatible = "gpio-leds";
        };
    
        vmmcsd_fixed: fixedregulator@0 {
            compatible = "regulator-fixed";
            regulator-name = "vmmcsd_fixed";
            regulator-min-microvolt = <3300000>;
            regulator-max-microvolt = <3300000>;
        };
    
        /* mii reset pin configuration */
        mii_reset {
            pinctrl-names = "default";
            pinctrl-0 = <&mii_reset_default>;
            compatible = "gpio-leds";
    	
        };
        
        /* All the unused pins are confgured in this node,
         * and they are configured as INPUT_PULLDOWN to make
         * sure that pins are not consuming any power 
         */
    #if 0	 
        unused_pins {
            pinctrl-names = "default";
            pinctrl-0 = <&unusedpins_default>;
            compatible = "gpio-leds";
        };
    #endif	
    #if 0	
    	wlan_en_reg: fixedregulator@1 {
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    //		gpio = <&gpio2 24 0>;
    		enable-active-high;
    	};
    #endif	
    };
    
    &am33xx_pinmux {
        pinctrl-names = "default";
        pinctrl-0 = <&clkout2_pin>;
    	
    //	pinctrl-0 = <&wlan_pins_default>;
    //	pinctrl-1 = <&wlan_pins_sleep>;
    
        user_leds_default: user_leds_default {
            pinctrl-single,pins = <
                0xa0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D0/Away_LED  */
                0xa4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D1/Error_LED */
                0x6C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Alarm_led */
                0x30 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_12 H/F led */
    
                0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* RGB1_cntr0*/
                0xb4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D5/RGB1_Cnt1 */
                0xb8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D6/RGB1_Cnt2 */
    
                0x38 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt0 */
                0xbc (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
                0x19C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
    
                /* 555 timer controller gpio pin */
                0xA8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D2/led_cntl */
                >;
        };
    
        user_leds_sleep: user_leds_sleep {
            pinctrl-single,pins = <
                /* 555 timer controller gpio pin should be ON in deep sleep mode*/
                0xA8 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* D2/LED_CNTL */
            >;
        };
    
        battery_default: battery_default {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
                0x94 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* 83ma_43ma_ch_sel */
                0x1A4 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Batt_on */
            >;
        };
    
        battery_sleep: battery_sleep {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
            >;
        };
    
        output_relay_default: output_relay_default {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        output_relay_sleep: output_relay_sleep {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        gsm_default: gsm_default {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        gsm_sleep: gsm_sleep {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)   /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        vampc_default: vampc_default {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        vampc_sleep: vampc_sleep {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        audio_default: audio_default {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        audio_sleep: audio_sleep {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        power_enable_default: power_enable_default {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3*/
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        power_enable_sleep: power_enable_sleep {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3 */
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        smartrf_default: smartrf_default {
            pinctrl-single,pins = <
                0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* radio reset */
                0x64 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* bootloader_ctrl */
            >;
        };
    
        mii_reset_default: mii_reset_default {
            pinctrl-single,pins = <
                0x3C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* MII reset */
            >;
        };
    
        monoirq_default: monoirq_default {
            pinctrl-single,pins = <
                0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mono_irq */
            >;
        };
    
        usb00cn_default: usb00cn_default {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    
        usb00cn_sleep: usb00cn_sleep {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    #if 0
        wifipowerenable_default: wifipowerenable_default {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* D4/WIFI_PWR_EN */
    
            >;
        };
    
        wifipowerenable_sleep: wifipowerenable_sleep {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* D4/WIFI_PWR_EN */
            >;
        };
    #endif
        i2c0_pins: pinmux_i2c0_pins {
            pinctrl-single,pins = <
                0x188 (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
                0x18c (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
            >;
        };
    
        /* UART0 configuration for Debug port */
        uart0_pins: pinmux_uart0_pins {
            pinctrl-single,pins = <
                0x170 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart0_rxd.uart0_rxd */
                0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart0_txd.uart0_txd */
            >;
        };
    
        /* UART1 configuration for GSM */
        uart1_pins: pinmux_uart1_pins {
            pinctrl-single,pins = <
                0x180 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart1_rxd.uart1_rxd */
                0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart1_txd.uart1_txd */
            >;
        };
    
        /* UART4 configuration for smartRF */
        smartrf_uart4_pins: pinmux_smartrf_uart4_pins {
            pinctrl-single,pins = <
                0x70 (PIN_INPUT_PULLUP | MUX_MODE6)  /* smartrf.uart4_rxd */
                0x74 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)  /* smartrf.uart4_txd */
            >;
        };
    
        /* UART5 configuration for POTS */
        uart5_pins: pinmux_uart5_pins {
            pinctrl-single,pins = <
                0xC4 (PIN_INPUT_PULLUP | MUX_MODE4)  /* uart5_rxd */
                0xC0 (PIN_OUTPUT_PULLDOWN | MUX_MODE4)  /* uart5_txd */
            >;
        };
    
        clkout2_pin: pinmux_clkout2_pin {
            pinctrl-single,pins = <
                0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)  /* xdma_event_intr1.clkout2 */
            >;
        };
    
        cpsw_default: cpsw_default {
            pinctrl-single,pins = <
                /* Slave 1 */
                0x110 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxerr.mii1_rxerr */
                0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txen.mii1_txen */
                0x118 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxdv.mii1_rxdv */
                0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd3.mii1_txd3 */
                0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd2.mii1_txd2 */
                0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd1.mii1_txd1 */
                0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd0.mii1_txd0 */
                0x12c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_txclk.mii1_txclk */
                0x130 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxclk.mii1_rxclk */
                0x134 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd3.mii1_rxd3 */
                0x138 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd2.mii1_rxd2 */
                0x13c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd1.mii1_rxd1 */
                0x140 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd0.mii1_rxd0 */
            >;
        };
    
        cpsw_sleep: cpsw_sleep {
            pinctrl-single,pins = <
                /* Slave 1 reset value */
                0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
        davinci_mdio_default: davinci_mdio_default {
            pinctrl-single,pins = <
                /* MDIO */
                0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* mdio_data.mdio_data */
                0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*D15_PHY_SUP_CNT */
            >;
        };
    
        davinci_mdio_sleep: davinci_mdio_sleep {
            pinctrl-single,pins = <
                /* MDIO reset value */
                0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_data.mdio_data */
                0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /*D15_PHY_SUP_CNT */
            >;
        };
    
    	
        mmc1_pins_default: pinmux_mmc1_pins {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat3.mmc0_dat3 */
                0x0F4 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat2.mmc0_dat2 */
                0x0F8 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat1.mmc0_dat1 */
                0x0FC (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat0.mmc0_dat0 */
                0x100 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_clk.mmc0_clk */
                0x104 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_cmd.mmc0_cmd */
    	
    
            >;
        };
    
        mmc1_pins_sleep: pinmux_mmc1_pins_sleep {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0FC (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x100 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x104 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
    	wlan_pins_default: pinmux_wlan_pins_default {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 ( PIN_INPUT_PULLUP/*PIN_INPUT*/ | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    		>;
    	};
    
    	wlan_pins_sleep: pinmux_wlan_pins_sleep {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 ( PIN_INPUT_PULLUP/*PIN_INPUT*/ | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    
    
    		>;
    	};	
    
    	
        emmc_pins: pinmux_emmc_pins {
            pinctrl-single,pins = <
                0x80 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_clk */
                0x84 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_cmd */
                0x00 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat0 */
                0x04 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat1 */
                0x08 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat2 */
                0x0c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat3 */
                0x10 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat4 */
                0x14 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat5 */
                0x18 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat6 */
                0x1c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat7 */
            >;
        };
    
        ehrpwm1_pin_pwm3_led: pinmux_ehrpwm1_pin_pwm3_led {
            /* Modified to support Status LED to glow at bootup by converting as GPIO pin */
            /*pinctrl-single,pins = < 0x048 MUX_MODE6 >; */ /* ehrpwm pin */
            pinctrl-single,pins = < 0x048 (PIN_OUTPUT_PULLUP | MUX_MODE7) >;  /* ehrpwm pin */
        };
    #if 0
        unusedpins_default: pinmux_unusedpins_default {
            pinctrl-single,pins = <
                0x7C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP12 */
                0x78 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP6 */
                0x4C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_FUNC2 */
                0x68 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GPIO_PBIN */
                0xAC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D3 */
                0xD8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D14 */
              //  0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* WIFI_ENABLE */
              //  0XE0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_EN */
    
            >;
        };
    #endif
    };
    
    /* UART0 configuration for the GSM Port */
    &uart0 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart0_pins>;
    
        status = "okay";
    };
    
    
    /* UART1 configuration for the debug port */
    &uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart1_pins>;
    
        status = "okay";
    };
    
    /* Blue tooth configuration, at present not using */
    #if 0
    /* For USB1 to UART3 */
    &uart3 {
    
        status = "okay";
    
    };
    #endif
    
    /* UART4 configuration for smartRF */
    &uart4 {
        pinctrl-names = "default";
        pinctrl-0 = <&smartrf_uart4_pins>;
        status = "okay";
    };
    
    /* UART5 configuration for the POTS port */
    &uart5 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart5_pins>;
        status = "okay";
    };
    /* End */
    
    /* USB configuration */
    &usb {
        status = "okay";
    
        control@44e10620 {
            status = "okay";
        };
    
        usb-phy@47401300 {
            status = "okay";
        };
    
        usb-phy@47401b00 {
            status = "okay";
        };
    
        usb@47401000 {
            status = "okay";
        };
    #if 0
        usb@47401800 {
            status = "okay";
            /*dr_mode = "host";*/  //COMMENTED  for USB1 to UART3
        };
    #endif
    
        dma-controller@47402000  {
            status = "okay";
        };
    
    };
    
    /* i2c0 configuration  */
    &i2c0 {
        pinctrl-names = "default";
        pinctrl-0 = <&i2c0_pins>;
    
        status = "okay";
        clock-frequency = <400000>;
    
        tps: tps@24 {
            reg = <0x24>;
        };
    
        lm75: tcn75@48 {
            compatible = "lm75,tcn75";
            reg = <0x48>;
        };
    };
    
    
    /include/ "tps65217.dtsi"
    
    &tps {
        ti,pmic-shutdown-controller;
    
        regulators {
            dcdc1_reg: regulator@0 {
                regulator-always-on;
            };
    
            dcdc2_reg: regulator@1 {
                /* VDD_MPU voltage limits 0.95V - 1.325V with +/-4% tolerance */
                regulator-name = "vdd_mpu";
                regulator-min-microvolt = <912500>;
                regulator-max-microvolt = <1378000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            dcdc3_reg: regulator@2 {
                /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
                regulator-name = "vdd_core";
                regulator-min-microvolt = <925000>;
                regulator-max-microvolt = <1150000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            ldo1_reg: regulator@3 {
                regulator-always-on;
            };
    
            ldo2_reg: regulator@4 {
                regulator-always-on;
            };
    
            ldo3_reg: regulator@5 {
                regulator-always-on;
            };
    
            ldo4_reg: regulator@6 {
                regulator-always-on;
            };
    
            rtc@44e3e000 {
                ti,system-power-controller;
            };
        };
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac0 {
        phy_id = <&davinci_mdio>, <1>; /*CADB DP83848 PHY*/
        phy-mode = "mii";
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac1 {
        phy_id = <&davinci_mdio>, <1>;
        phy-mode = "mii";
    };
    
    /* Dual EMAC configuration  */
    &mac {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&cpsw_default>;
        /* Sleep section of ethernet interface handle by Application */
        /*pinctrl-1 = <&cpsw_sleep>;*/ 
    
    };
    
    /* Ethernet subsystem configuration */
    &davinci_mdio {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&davinci_mdio_default>;
        /* Sleep section of ethernet interface handle by Application */
        /* pinctrl-1 = <&davinci_mdio_sleep>; */
    };
    
    
    
    &wkup_m3 {
        ti,scale-data-fw = "am335x-bone-scale-data.bin";
    };
    
    /* EHRPWM1A configuration as PWM, to control the intensity of the LED light */
    &epwmss1 {
        pinctrl-names = "default";
        pinctrl-0 = < &ehrpwm1_pin_pwm3_led >;
    
        status = "okay";
    
        ehrpwm@48302200 {
            status = "okay";
        };
    };
    
    /* SDCard configuration */
    &mmc1 {
    
    	status = "okay";
    	vmmc-supply = <&wlan_en_reg>;
    	bus-width = <4>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mmc1_pins_default &wlan_pins_default>;
    	pinctrl-1 = <&mmc1_pins_sleep &wlan_pins_sleep>;
    	ti,non-removable;
    	ti,needs-special-hs-handling;
    	cap-power-off-card;
    	keep-power-in-suspend;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@0 {
    		compatible = "ti,wlcore";
    		reg = <2>;
    		interrupt-parent = <&gpio0>;
    		interrupts = <6  /*IRQ_TYPE_LEVEL_HIGH*//*IRQ_TYPE_EDGE_RISING*/ IRQ_TYPE_EDGE_FALLING /*IRQ_TYPE_LEVEL_LOW*/>;
    	};
    
    };
    

    Am unable to see this pin being driven high

    Could you please let me know what could be the issue??

    Kindly do the needful as early as possible

    Thanks in advance

  • Hi,

    Can you verify that this pin is not used by another module in your dts?

    Can you test setting this pin from userspace (using devmem2) & see if it will accept the changes?

    Best Regards,
    Yordan
  • HI Yordan,

    I have tried to set it using echo command this is working fine but am unable to do it drom DT during boot

    Kindly do the needful
    Many thanks in advance
  • Hi,

    I don't mean using the entries from /sys/class/gpio. I mean try to set the pinmux register using devmem2, if you don't succeed then most likely this pin is used from another driver (dts node) & you will need to correct the pinmux settings in your system.

    Best Regards,
    Yordan
  • Srini,

    It's not expected that the WLAN_EN pin is high immediately on boot.  That pin is dynamically controlled by the WLAN driver.  Have you added your fake regulator into your mmc device tree node?  For example, here's a snippet from TI SDK 8.00 am335x-evm.dts:

    &mmc3 {
            /* these are on the crossbar and are outlined in the
               xbar-event-map element */
            dmas = <&edma 12
                    &edma 13>;
            dma-names = "tx", "rx";
            status = "okay";
            vmmc-supply = <&wlan_en_reg>;
            bus-width = <4>;
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&mmc3_pins_default &wlan_pins_default>;
            pinctrl-1 = <&mmc3_pins_sleep &wlan_pins_sleep>;
            ti,non-removable;
            ti,needs-special-hs-handling;
            cap-power-off-card;
            keep-power-in-suspend;

            #address-cells = <1>;
            #size-cells = <0>;
            wlcore: wlcore@0 {
                    compatible = "ti,wlcore";
                    reg = <2>;
                    interrupt-parent = <&gpio3>;
                    interrupts = <17 IRQ_TYPE_NONE>;
            };
    };

    Do you have something along those lines to tie your fake regulator to your Wi-Fi?  You probably need to execute "ifconfig wlan0 up" to see the pin go high.

  • No Yordan this is not going high, I have tried using ifconfig wlan0 up , I have already added fake regulator into mmc device tree node as earlier attached
  • My name is Brad. Please attach (don't inline) a log showing your complete boot up, as well as execution of "lsmod" and "ifconfig wlan0 up".
  • Sorry Brad,

    Many Thanks a lot for your quick responses

    1. As discussed, please find the attached logs & dts file, am using ti sdk 8, Currently since because am unable to drive WLAN_EN to active high from device tree, I have hardwired it to 1.8V and am seeing  " wlcore: ERROR timeout waiting for the hardware to complete initialization"

    2. And more over while building wl18xx modules, I see few patches are  getting failed  is this causing any serious problem as am using ti sdk 8

    srinivasan@tata-HP-Elite-7100-Microtower-PC:~/wl8-build/build-utilites$ ./build_wl18xx.sh modules
    Changing ROOTFS path to /tools/rootfs_dir/srini/Rootfs/
    Using user defined kernel
    Makefile was found. Kernel version was set to 3.14.26.
    ***** building only Driver modules *****
    Copy original source files ...
    Apply patches ...
    Failed to apply changes from backport-adjustments/flow_dissector.patch
    > patching file compat/net-core-flow_dissector.c
    > Hunk #1 FAILED at 177.
    > 1 out of 1 hunk FAILED -- saving rejects to file compat/net-core-flow_dissector.c.rej
    Failed to apply changes from collateral-evolutions/network/09-threaded-irq/drivers_net_wireless_ti_wlcore_main.patch
    > patching file drivers/net/wireless/ti/wlcore/main.c
    > Hunk #1 FAILED at 6079.
    > Hunk #2 succeeded at 6604 (offset 471 lines).
    > Hunk #3 succeeded at 6656 (offset 473 lines).
    > 1 out of 3 hunks FAILED -- saving rejects to file drivers/net/wireless/ti/wlcore/main.c.rej
    Failed to apply changes from collateral-evolutions/network/85-hid_ll_driver/net_bluetooth_hidp_core.patch
    > patching file net/bluetooth/hidp/core.c
    > Hunk #1 succeeded at 268 with fuzz 1 (offset 45 lines).
    > Hunk #2 succeeded at 353 with fuzz 2 (offset 45 lines).
    > Hunk #3 FAILED at 396.
    > Hunk #4 succeeded at 474 with fuzz 2 (offset 65 lines).
    > Hunk #5 FAILED at 739.
    > 2 out of 5 hunks FAILED -- saving rejects to file net/bluetooth/hidp/core.c.rej
    Failed to apply changes from collateral-evolutions/network/86-qdisc_tx_busylock/ieee802154.patch
    > patching file net/ieee802154/6lowpan.c
    > Hunk #1 FAILED at 530.
    > Hunk #2 FAILED at 545.
    > 2 out of 2 hunks FAILED -- saving rejects to file net/ieee802154/6lowpan.c.rej

    logs.txt
    U-Boot SPL 2014.07 (Dec 01 2015 - 15:59:06)
    
    
    U-Boot 2014.07 (Dec 01 2015 - 15:59:06)
    
    I2C:   ready
    DRAM:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    Net:   cpsw
    Hit any key to stop autoboot:  0
    Tunstall:~$
    Tunstall:~$ setenv autoload no
    Tunstall:~$ dhcp
    link up on port 0, speed 100, full duplex
    BOOTP broadcast 1
    DHCP client bound to address 192.168.82.3
    Tunstall:~$ setenv serverip 192.168.82.137
    Tunstall:~$ setenv netmask 255.255.255.0
    Tunstall:~$ setenv gatewayip 192.168.82.1
    Tunstall:~$ tftpboot ${fdtaddr} srini/tunstall-lifeline_cadb.dtb
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.82.137; our IP address is 192.168.82.3
    Filename 'srini/tunstall-lifeline_cadb.dtb'.
    Load address: 0x88000000
    Loading: ########
             1 MiB/s
    done
    Bytes transferred = 36836 (8fe4 hex)
    Tunstall:~$ tftpboot ${kloadaddr} srini/zImage
    link up on port 0, speed 100, full duplex
    Using cpsw device
    TFTP from server 192.168.82.137; our IP address is 192.168.82.3
    Filename 'srini/zImage'.
    Load address: 0x82000000
    Loading: #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             ################
             1.1 MiB/s
    done
    Bytes transferred = 2407376 (24bbd0 hex)
    Tunstall:~$ setenv bootargs console=ttyO1,115200n8 lpj=3590144 root=/dev/nfs nfsroot=192.168.82.137:/tools/rootfs_dir/srini/Rootfs rootwait ip=dhcp
    Tunstall:~$ bootz 0x82000000 - 0x88000000
    Kernel image @ 0x82000000 [ 0x000000 - 0x24bbd0 ]
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Device Tree to 8ef4d000, end 8ef58fe3 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 3.14.26 (srinivasan@tata-HP-Elite-7100-Microtower-PC) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #3 Tue Dec 1 15:21:43 IST 2015
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine model: Tunstall Lifeline
    [    0.000000] cma: CMA: reserved 24 MiB at 8d000000
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (neon )
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 64768
    [    0.000000] Kernel command line: console=ttyO1,115200n8 lpj=3590144 root=/dev/nfs nfsroot=192.168.82.137:/tools/rootfs_dir/srini/Rootfs rootwait ip=dhcp
    [    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    [    0.000000] Memory: 229096K/261120K available (3751K kernel code, 214K rwdata, 652K rodata, 182K init, 162K bss, 32024K reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    [    0.000000]     vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc0454f84   (4404 kB)
    [    0.000000]       .init : 0xc0455000 - 0xc0482a80   ( 183 kB)
    [    0.000000]       .data : 0xc0484000 - 0xc04b9960   ( 215 kB)
    [    0.000000]        .bss : 0xc04b9960 - 0xc04e2204   ( 163 kB)
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] Total of 128 interrupts on 1 active controller
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [    0.000011] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
    [    0.000028] OMAP clocksource: timer1 at 24000000 Hz
    [    0.000256] Console: colour dummy device 80x30
    [    0.000277] Calibrating delay loop (skipped) preset value.. 718.02 BogoMIPS (lpj=3590144)
    [    0.000291] pid_max: default: 32768 minimum: 301
    [    0.000369] Security Framework initialized
    [    0.000416] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000426] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.007256] CPU: Testing write buffer coherency: ok
    [    0.007585] Setting up static identity map for 0x803af4f0 - 0x803af548
    [    0.008424] devtmpfs: initialized
    [    0.009887] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.015574] omap_hwmod: tptc0 using broken dt data from edma
    [    0.015638] omap_hwmod: tptc1 using broken dt data from edma
    [    0.015696] omap_hwmod: tptc2 using broken dt data from edma
    [    0.019045] omap_hwmod: debugss: _wait_target_disable failed
    [    0.062100] pinctrl core: initialized pinctrl subsystem
    [    0.062961] regulator-dummy: no parameters
    [    0.064990] NET: Registered protocol family 16
    [    0.066641] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.068161] cpuidle: using governor ladder
    [    0.068176] cpuidle: using governor menu
    [    0.073463] syscon 44e10000.control_module: regmap [mem 0x44e10000-0x44e107fb] registered
    [    0.074676] platform 49000000.edma: alias fck already exists
    [    0.074697] platform 49000000.edma: alias fck already exists
    [    0.074709] platform 49000000.edma: alias fck already exists
    [    0.075643] OMAP GPIO hardware version 0.1
    [    0.089335] No ATAGs?
    [    0.089356] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.102416] bio: create slab <bio-0> at 0
    [    0.114487] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [    0.115190] entering enablinggggggggggggggg enable-active-highhhhhhhhhhhhh
    [    0.115200] -------HIGHHHHHHHHHHHHHHHHH not at boot
    [    0.115548] wlan-en-regulator: 1800 mV
    [    0.115696] -------LOWWWWWWWWWWWWWWWWWWWWW not at boot
    [    0.115951] vmmcsd_fixed: 3300 mV
    [    0.117405] SCSI subsystem initialized
    [    0.118184] usbcore: registered new interface driver usbfs
    [    0.118340] usbcore: registered new interface driver hub
    [    0.118519] usbcore: registered new device driver usb
    [    0.119213] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe
    [    0.119237] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral
    [    0.119651] pps_core: LinuxPPS API ver. 1 registered
    [    0.119662] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.119777] PTP clock support registered
    [    0.121453] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.122379] Advanced Linux Sound Architecture Driver Initialized.
    [    0.123302] Switched to clocksource timer1
    [    0.140029] NET: Registered protocol family 2
    [    0.140778] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.140806] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.140829] TCP: Hash tables configured (established 2048 bind 2048)
    [    0.140888] TCP: reno registered
    [    0.140899] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.140914] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.141062] NET: Registered protocol family 1
    [    0.141404] RPC: Registered named UNIX socket transport module.
    [    0.141413] RPC: Registered udp transport module.
    [    0.141418] RPC: Registered tcp transport module.
    [    0.141424] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.142151] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
    [    0.144556] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.146004] VFS: Disk quotas dquot_6.5.2
    [    0.146056] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.146477] msgmni has been set to 495
    [    0.147959] NET: Registered protocol family 38
    [    0.147997] io scheduler noop registered
    [    0.148017] io scheduler cfq registered (default)
    [    0.149520] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.150318]
    [    0.150318] Device Registered: pinctrl
    [    0.150332] Major number = 249, Minor number = 0
    [    0.153070] omap_uart 44e09000.serial: no wakeirq for uart0
    [    0.153204] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0
    [    0.153912] omap_uart 48022000.serial: no wakeirq for uart0
    [    0.154024] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud = 3000000) is a OMAP UART1
    [    0.789163] console [ttyO1] enabled
    [    0.793358] omap_uart 481a8000.serial: no wakeirq for uart0
    [    0.799253] 481a8000.serial: ttyO4 at MMIO 0x481a8000 (irq = 61, base_baud = 3000000) is a OMAP UART4
    [    0.809425] omap_uart 481aa000.serial: no wakeirq for uart0
    [    0.815396] 481aa000.serial: ttyO5 at MMIO 0x481aa000 (irq = 62, base_baud = 3000000) is a OMAP UART5
    [    0.826205] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
    [    0.835206] PPP generic driver version 2.4.2
    [    0.840228] usbcore: registered new interface driver cdc_ether
    [    0.846506] usbcore: registered new interface driver cdc_eem
    [    0.852542] usbcore: registered new interface driver rndis_host
    [    0.858838] usbcore: registered new interface driver cdc_subset
    [    0.865215] usbcore: registered new interface driver cdc_ncm
    [    0.871492] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [    0.878314] ehci-omap: OMAP-EHCI Host Controller driver
    [    0.884192] usbcore: registered new interface driver cdc_wdm
    [    0.890280] usbcore: registered new interface driver usb-storage
    [    0.897681] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [    0.905373] i2c /dev entries driver
    [    0.910808] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [    0.953893] mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
    [    0.964683] omap_hsmmc 48060000.mmc: card claims to support voltages below defined range
    [    0.985248] mmc0: queuing unknown CIS tuple 0x91 (3 bytes)
    [    0.992473] mmc0: new high speed SDIO card at address 0001
    [    1.001225] mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz
    [    1.013165] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.019879] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [    1.027281] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [    1.034529] platform 44d00000.wkup_m3: Driver wkup_m3 requests probe deferral
    [    1.064200] davinci_evm sound.18: uda134x-hifi <-> 48038000.mcasp mapping ok
    [    1.074890] TCP: cubic registered
    [    1.078338] Initializing XFRM netlink socket
    [    1.082793] NET: Registered protocol family 17
    [    1.087603] NET: Registered protocol family 15
    [    1.092301] Key type dns_resolver registered
    [    1.097463] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
    [    1.106621] cpu cpu0: cpu0 clock notifier not ready, retry
    [    1.112350] mmc1: BKOPS_EN bit is not set
    [    1.116631] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe deferral
    [    1.125020] PM: bootloader does not support rtc-only!
    [    1.130377] ThumbEE CPU extension supported.
    [    1.134956] Registering SWP/SWPB emulation handler
    [    1.141009] wlan-en-regulator: disabling
    [    1.145273] regulator-dummy: disabling
    [    1.149244] mmc1: new high speed MMC card at address 0001
    [    1.156502] mmcblk0: mmc1:0001 MMC02G 1.78 GiB
    [    1.161502] mmcblk0boot0: mmc1:0001 MMC02G partition 1 1.00 MiB
    [    1.168953] mmcblk0boot1: mmc1:0001 MMC02G partition 2 1.00 MiB
    [    1.175560] DCDC1: at 1500 mV
    [    1.180608] vdd_mpu: 925 <--> 1375 mV at 1325 mV
    [    1.186905] vdd_core: 925 <--> 1150 mV at 1125 mV
    [    1.191970]  mmcblk0: p1 p2 p3 p4 < p5 p6 p7 >
    [    1.198755] LDO1: at 1800 mV
    [    1.203083] LDO2: at 3300 mV
    [    1.207778]  mmcblk0boot1: unknown partition table
    [    1.213261] LDO3: 1800 mV
    [    1.217726] LDO4: at 3300 mV
    [    1.220920]  mmcblk0boot0: unknown partition table
    [    1.227263] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    1.233724] lm75 0-0048: hwmon0: sensor 'tcn75'
    [    1.238832] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.245075]  remoteproc0: wkup_m3 is available
    [    1.249700]  remoteproc0: Note: remoteproc is still under development and considered experimental.
    [    1.259055]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    1.269950]  remoteproc0: Direct firmware load failed with error -2
    [    1.276490]  remoteproc0: Falling back to user helper
    [    1.282188] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->950000]:-22
    [    1.353392] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
    [    1.359812] davinci_mdio 4a101000.mdio: detected phy mask fffffffd
    [    1.367676] libphy: 4a101000.mdio: probed
    [    1.371914] davinci_mdio 4a101000.mdio: phy[1]: device 4a101000.mdio:01, driver DP83848 PHY
    [    1.382144] cpsw 4a100000.ethernet: Detected MACID = 68:c9:0b:6d:0d:bd
    [    1.395175] input: gpio_buttons.19 as /devices/gpio_buttons.19/input/input0
    [    1.404502] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
    [    1.420925] net eth0: initializing cpsw version 1.12 (0)
    [    1.503966] net eth0: phy found : id is : 0x20005c90
    [    1.509301] net eth0: PHY already attached
    [    1.513654] net eth0: phy 4a101000.mdio:01 not found on slave 1
    [    3.504027] libphy: 4a101000.mdio:01 - Link is Up - 100/Full
    [    3.543369] Sending DHCP requests ., OK
    [    3.563829] IP-Config: Got DHCP answer from 192.168.82.1, my address is 192.168.82.3
    [    3.572423] IP-Config: Complete:
    [    3.575896]      device=eth0, hwaddr=68:c9:0b:6d:0d:bd, ipaddr=192.168.82.3, mask=255.255.255.0, gw=192.168.82.1
    [    3.586604]      host=192.168.82.3, domain=, nis-domain=(none)
    [    3.592734]      bootserver=0.0.0.0, rootserver=192.168.82.137, rootpath=
    [    3.599700]      nameserver0=10.1.1.2, nameserver1=10.1.1.3
    [    3.606025] ALSA device list:
    [    3.609148]   #0: TI UDA1345TS
    [    3.622391] VFS: Mounted root (nfs filesystem) readonly on device 0:13.
    [    3.630251] devtmpfs: mounted
    [    3.634204] Freeing unused kernel memory: 180K (c0455000 - c0482000)
    INIT: version 2.88 booting
    UIM SYSFS Node Not Found
    Starting ifplugd service for dynamic IP assignment...
    Starting udev
    mkdir: can't create directory '/var/lib/dbus': Read-only file system
    chown: /var/lib/dbus: No such file or directory
    chgrp: /var/lib/dbus: No such file or directory
    [    5.798657] random: dbus-uuidgen urandom read with 126 bits of entropy available
    Failed to open "/etc/machine-id": No such file or directory
    Starting system message bus: [    5.907355] random: nonblocking pool is initialized
    Failed to start message bus: Failed to read directory "/etc/dbus-1/system.d": No such file or directory
    dbus.
    [    6.246064] udevd[657]: starting version 182
    TUNSTALL INIT CONFIGURATIONS START
    GSM_PWR_ON_3V3
    GSM_reset
    Configure PIN 50 as PWM PIN
    #################################################################
    Running ntpdate to fetch current date and time from NTP server
    ##################################################################
    ALSA: Restoring mixer settings...
    Got NTP server, IP: 192.168.82.40
    GPIO pin =50
    GPIO register data =0x6[    6.548515] GPIO 50 PHY address =0x44e10848
    
    PWM LED CONFIGURATION
    Vamp_C1 Configuration
    Vamp_C2 Configuration
    Stereo codec Configuration
    Audio amplifier Configuration
    BATT_ON
    Monocodec driver configuration
    WIFI DRIVER LOADINGGGGGGGGGGGGG
    TUNSTALL INIT CONFIGURATIONS END
    Programming MAX9860 Registers
    /usr/sbin/alsactl: state_lock:121: file /var/lib/alsa/asound.state lock error: File exists
    /usr/sbin/alsactl: load_state:1677: Cannot open /var/lib/alsa/asound.state for reading: File exists
    Found hardware: "TI_UDA1345TS" "" "" "" ""
    Hardware is initialized using a generic method
    Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined
      Playback channels: Mono
      Limits: Playback 0 - 63
      Mono: Playback 63 [100%]
    Simple mixer control 'DC Filter Enable',0
      Capabilities: pswitch pswitch-joined
      Playback channels: Mono
      Mono: Playback [on]
    urandom start: failed.
    [    8.364772] 47401300.usb-phy supply vcc not found, using dummy regulator
    [    8.538317] 47401b00.usb-phy supply vcc not found, using dummy regulator
    [    8.883750]  remoteproc0: powering up wkup_m3
    [    8.944508]  remoteproc0: Booting fw image am335x-pm-firmware.elf, size 154420
    [    8.952734] PM: CM3 Firmware Version = 0x190
    [    9.198214]  remoteproc0: remote processor wkup_m3 is now up
    [    9.563830] Loading modules backported from Linux version R8.5-0-gcb51164
    [    9.570985] Backport generated by backports.git R8.4-0-g0d46f43
    [   10.045974] ENTERING INTO WLCORE_PROBE_OFFFFF
    [   10.093180] PRINTING IRQQQQQQQQ NUMBEEEEEERR  150
    [   14.177944] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
    [   14.304242] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
    [   14.423850] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [   14.431015] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   14.438662] usb usb1: Product: MUSB HDRC host driver
    [   14.443914] usb usb1: Manufacturer: Linux 3.14.26 musb-hcd
    [   14.449681] usb usb1: SerialNumber: musb-hdrc.1.auto
    [   14.928190] hub 1-0:1.0: USB hub found
     1 Jan 00:00:14 ntpdate[662]: no server suitable for synchronization found
    [   15.038091] hub 1-0:1.0: 1 port detected
    [   16.078040] cfg80211: Calling CRDA to update world regulatory domain
    [   17.217088] ENTERING INTO WLCOREEEEEEEEEE_PROBEEEEEEEEEE
    [   17.342848] Entering wlcore_nvs_cb..............
    [   17.383443] before ENTERING request_threaded_irqQQQQQQQQQQ
    [   17.467344] AFTERrrrrrrrrrrrr REQUEST_IRQQQQQQ
    [   17.542982] cfg80211: World regulatory domain updated:
    [   17.548576] cfg80211:  DFS Master region: unset
    [   17.553158] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
    [   17.563549] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
    [   17.571956] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
    [   17.580392] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
    [   17.588831] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
    [   17.598817] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
    [   17.608798] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
    [   17.617322] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
    [   17.625755] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
    [   17.953732] wlcore: wl18xx HW: 183xH, PG 1.3 (ROM 0x8)
    [   18.053927] ENTERING INTO wl12xx_sdio_power_offffffffffff
    [   18.087117] mmc0: mmc_power_save_host: powering down
    [   18.141606] case 1 WLAN CHIP IDDDDDDDDDDD chip id 0x6030111 (185x PG20)
    [   18.241579] wlcore: loaded
    [   18.294529] wlcore: driver version: R8.5-dirty
    [   18.299345] wlcore: compilation time: Tue Dec  1 20:39:46 2015
    [   19.780734] EXT4-fs (mmcblk0boot0): mounted filesystem without journal. Opts: (null)
    [   20.077116] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: (null)
    Sat Jan  1 00:06:00 UTC 2000
    INIT: Entering runlevel: 5
    Starting syslogd/klogd: [   21.383016] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: (null)
    done
    
    lifeline login:  1 Jan 00:00:23 ntpdate[977]: no server suitable for synchronization found
     1 Jan 00:00:31 ntpdate[1238]: no server suitable for synchronization found
    Failed to set ntpdate after 3 re-tries!!!
    
    lifeline login: root
    root@lifeline:~# cd /
    root@lifeline:/# cat /proc/interrupts
               CPU0
     28:        853      INTC  12  edma
     30:          6      INTC  14  edma_error
     32:          0      INTC  16  TI-am335x-adc
     33:          0      INTC  17  47400000.dma-controller
     34:          0      INTC  18  musb-hdrc.1.auto
     44:       2587      INTC  28  mmc1
     56:          0      INTC  40  4a100000.ethernet
     57:      17831      INTC  41  4a100000.ethernet
     58:       6447      INTC  42  4a100000.ethernet
     59:          0      INTC  43  4a100000.ethernet
     80:        312      INTC  64  mmc0
     84:       2579      INTC  68  gp_timer
     86:        199      INTC  70  44e0b000.i2c
     89:        203      INTC  73  OMAP UART1
     91:          0      INTC  75  rtc0
     92:          0      INTC  76  rtc0
     93:          0      INTC  77  wkup_m3
     94:          1      INTC  78  wkup_m3_txev
    125:          0      INTC 109  53100000.sham
    127:          0      INTC 111  48310000.rng
    147:          0  44e07000.gpio   3  mains_v
    148:          0  44e07000.gpio   4  rech_batt_v_low
    149:          1  44e07000.gpio   5  rech_batt_v_high
    150:          0  44e07000.gpio   6  wl18xx
    156:          0  44e07000.gpio  12  uart5_pots_rx
    157:          0  44e07000.gpio  13  h_wire
    163:          0  44e07000.gpio  19  smartrf_rx
    166:          1  44e07000.gpio  22  Alarm_key
    167:          1  44e07000.gpio  23  Away_key
    170:          1  44e07000.gpio  26  Cancel_key
    253:          1  481ae000.gpio  13  gsmaudio_switch
    Err:          0
    root@lifeline:~#
    root@lifeline:~#
    root@lifeline:~# cd /
    root@lifeline:/#
    root@lifeline:/# lsmod
    Module                  Size  Used by
    wl18xx                 63336  0
    wlcore                134956  1 wl18xx
    mac80211              238656  2 wl18xx,wlcore
    cfg80211              135616  3 mac80211,wl18xx,wlcore
    musb_dsps               5668  0
    musb_hdrc              42512  1 musb_dsps
    wlcore_sdio             3616  0
    compat                  1040  4 cfg80211,mac80211,wl18xx,wlcore_sdio
    musb_am335x              872  0
    root@lifeline:/#  1 Jan 00:00:32 ntpdate[1246]: no server suitable for synchronization found
    Failed to set ntpdate after 3 re-tries!!!
    
    root@lifeline:/#
    root@lifeline:/#
    root@lifeline:/# ifconfig wlan0 up
    [   56.761970] wlcore: ERROR timeout waiting for the hardware to complete initialization
    [   56.816330] mmc0: mmc_power_save_host: powering down
    [   71.629236] wlcore: ERROR timeout waiting for the hardware to complete initialization
    [   71.683547] mmc0: mmc_power_save_host: powering down
    

    6076.tunstall-common_cadb (2).txt
    /*
     * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
     *
     * This program is free software; you can redistribute it and/or modify
     * it under the terms of the GNU General Public License version 2 as
     * published by the Free Software Foundation.
     */
    #include <dt-bindings/interrupt-controller/irq.h>
    /{
        model = "Tunstall Lifeline";
        compatible = "ti,am335x-bone", "ti,am33xx";
    	
    #if 1	
    	wlan_en_reg: fixedregulator@1 {
    	//	pinctrl-names = "default";
    	//	pinctrl-0 = <&wlan_pins_default>;
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio2 24 GPIO_ACTIVE_HIGH>;
    		startup-delay-us = <70000>;
    		enable-active-high;
    	};
    #endif	
    
        cpus {
            cpu@0 {
            cpu0-supply = <&dcdc2_reg>;
            };
        };
    
        memory {
            device_type = "memory";
    
            /* As per the processor datasheet external RAM is mapped to 0x8000_0000
             * address, DDR3 size is of 256 MB
             * Below declaration represents the starting address and length of the
             * DDR3register area.
             * First cell represents the starting address of SDRAM and second
             * cell represents the size of the register. Since the size of DDR3 is
             * 256 MB, 2 nd cell size should be 256MB of register area.
             */
            reg = <0x80000000 0x10000000>; /* 256 MB */
        };
    
        /* Tunstall Board LED's configuration */
        leds {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&user_leds_default>;
            pinctrl-1 = <&user_leds_sleep>;
    
            compatible = "gpio-leds";
    
            /* Away LED */
            Away_led@1 {
                label = "Away_led";
                gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Error LED */
            Error_led@2 {
                label = "Error_led";
                gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Alarm LED */
            Alarm_gpio1@3{
                label = "Alarm_led";
                gpios = <&gpio1 27 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* Status LED */
            HF_gpio2@4{
                label = "HF_led";
                gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
                default-state = "on"; /* off modified to glow status LED at bootup */
            };
    
            /* RGB1 LED */
            RGB1_cntr0@5{
                label = "RGB1_cntr0";
                gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr1@6{
                label = "RGB1_cntr1";
                gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB1 LED */
            RGB1_cntr2@7{
                label = "RGB1_cntr2";
                gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr0@8{
                label = "RGB2_cntr0";
                gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr1@9{
                label = "RGB2_cntr1";
                gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
    
            /* RGB2 LEd */
            RGB2_cntr2@10{
                label = "RGB2_cntr2";
                gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
                default-state = "off";
            };
        };
        /* End of LED configuration */
    
        /* GSM reset and gsm power on 3v3 pin configuration */
        gsm {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&gsm_default>;
            pinctrl-1 = <&gsm_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        vampc {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&vampc_default>;
            pinctrl-1 = <&vampc_sleep>;
            compatible = "gpio-leds";
        };
    
        /* audio amplifier pins configuration */
        audio {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&audio_default>;
            pinctrl-1 = <&audio_sleep>;
            compatible = "gpio-leds";
        };
    
        /* voltage regulators configuration */
        power_enable {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&power_enable_default>;
            pinctrl-1 = <&power_enable_sleep>;
            compatible = "gpio-leds";
        };
    
        /* smart RF radio_reset configuration to reset samrt RF */
        smartrf {
            pinctrl-names = "default";
            pinctrl-0 = <&smartrf_default>;
            compatible = "gpio-leds";
        };
      
        /* output relay pin configuration */
        output_relay {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&output_relay_default>;
            pinctrl-1 = <&output_relay_sleep>;
            compatible = "gpio-leds";
        };
    
        /* battery section related configurations */
        battery {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&battery_default>;
            pinctrl-1 = <&battery_sleep>;
            compatible = "gpio-leds";
        };
    
        /* monoirq configuration */
        monoirq {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&monoirq_default>;
            compatible = "gpio-leds";
        };
    
        /* usb0_ocn configuration */
        usb0_ocn {
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&usb00cn_default>;
            pinctrl-1 = <&usb00cn_sleep>;
            compatible = "gpio-leds";
        };
    
        vmmcsd_fixed: fixedregulator@0 {
            compatible = "regulator-fixed";
            regulator-name = "vmmcsd_fixed";
            regulator-min-microvolt = <3300000>;
            regulator-max-microvolt = <3300000>;
        };
    
        /* mii reset pin configuration */
        mii_reset {
            pinctrl-names = "default";
            pinctrl-0 = <&mii_reset_default>;
            compatible = "gpio-leds";
    	
        };
        
        /* All the unused pins are confgured in this node,
         * and they are configured as INPUT_PULLDOWN to make
         * sure that pins are not consuming any power 
         */
    #if 0	 
        unused_pins {
            pinctrl-names = "default";
            pinctrl-0 = <&unusedpins_default>;
            compatible = "gpio-leds";
        };
    #endif	
    #if 0	
    	wlan_en_reg: fixedregulator@1 {
    		compatible = "regulator-fixed";
    		regulator-name = "wlan-en-regulator";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    //		gpio = <&gpio2 24 0>;
    		enable-active-high;
    	};
    #endif	
    };
    
    &am33xx_pinmux {
        pinctrl-names = "default";
        pinctrl-0 = <&clkout2_pin>;
    	
    //	pinctrl-0 = <&wlan_pins_default>;
    //	pinctrl-1 = <&wlan_pins_sleep>;
    
        user_leds_default: user_leds_default {
            pinctrl-single,pins = <
                0xa0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D0/Away_LED  */
                0xa4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D1/Error_LED */
                0x6C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Alarm_led */
                0x30 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_12 H/F led */
    
                0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* RGB1_cntr0*/
                0xb4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D5/RGB1_Cnt1 */
                0xb8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D6/RGB1_Cnt2 */
    
                0x38 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt0 */
                0xbc (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
                0x19C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D7/RGB2_Cnt1 */
    
                /* 555 timer controller gpio pin */
                0xA8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D2/led_cntl */
                >;
        };
    
        user_leds_sleep: user_leds_sleep {
            pinctrl-single,pins = <
                /* 555 timer controller gpio pin should be ON in deep sleep mode*/
                0xA8 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* D2/LED_CNTL */
            >;
        };
    
        battery_default: battery_default {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
                0x94 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* 83ma_43ma_ch_sel */
                0x1A4 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Batt_on */
            >;
        };
    
        battery_sleep: battery_sleep {
            pinctrl-single,pins = <
                0x44 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* gpio1_17 Batt_charge_on */
            >;
        };
    
        output_relay_default: output_relay_default {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        output_relay_sleep: output_relay_sleep {
            pinctrl-single,pins = <
                0x34 (PIN_INPUT | MUX_MODE7)  /* gpio1_13 Output_relay*/
            >;
        };
    
        gsm_default: gsm_default {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        gsm_sleep: gsm_sleep {
            pinctrl-single,pins = <
                0x1A0 (PIN_OUTPUT_PULLUP | MUX_MODE7)   /*GSM_RESET */
                0xEC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GSM_PWR_ON_3V3 */
            >;
        };
    
        vampc_default: vampc_default {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        vampc_sleep: vampc_sleep {
            pinctrl-single,pins = <
                0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C1 */
                0x88 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Vamp_C2 */
            >;
        };
    
        audio_default: audio_default {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        audio_sleep: audio_sleep {
            pinctrl-single,pins = <
                0x8C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* MIC_Mute */
                0x5C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* DS0_sup_cnt */
                0xE4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* SC_SUP_CNTL */
            >;
        };
    
        power_enable_default: power_enable_default {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3*/
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        power_enable_sleep: power_enable_sleep {
            pinctrl-single,pins = <
                0x9C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v3 */
                0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* Power Enable 3v8 */
            >;
        };
    
        smartrf_default: smartrf_default {
            pinctrl-single,pins = <
                0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* radio reset */
                0x64 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* bootloader_ctrl */
            >;
        };
    
        mii_reset_default: mii_reset_default {
            pinctrl-single,pins = <
                0x3C (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* MII reset */
            >;
        };
    
        monoirq_default: monoirq_default {
            pinctrl-single,pins = <
                0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mono_irq */
            >;
        };
    
        usb00cn_default: usb00cn_default {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    
        usb00cn_sleep: usb00cn_sleep {
            pinctrl-single,pins = <
                0x150 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* USB0_ocn */
            >;
        };
    #if 0
        wifipowerenable_default: wifipowerenable_default {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* D4/WIFI_PWR_EN */
    
            >;
        };
    
        wifipowerenable_sleep: wifipowerenable_sleep {
            pinctrl-single,pins = <
                0xB0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* D4/WIFI_PWR_EN */
            >;
        };
    #endif
        i2c0_pins: pinmux_i2c0_pins {
            pinctrl-single,pins = <
                0x188 (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
                0x18c (PIN_INPUT_PULLUP | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
            >;
        };
    
        /* UART0 configuration for Debug port */
        uart0_pins: pinmux_uart0_pins {
            pinctrl-single,pins = <
                0x170 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart0_rxd.uart0_rxd */
                0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart0_txd.uart0_txd */
            >;
        };
    
        /* UART1 configuration for GSM */
        uart1_pins: pinmux_uart1_pins {
            pinctrl-single,pins = <
                0x180 (PIN_INPUT_PULLUP | MUX_MODE0)  /* uart1_rxd.uart1_rxd */
                0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart1_txd.uart1_txd */
            >;
        };
    
        /* UART4 configuration for smartRF */
        smartrf_uart4_pins: pinmux_smartrf_uart4_pins {
            pinctrl-single,pins = <
                0x70 (PIN_INPUT_PULLUP | MUX_MODE6)  /* smartrf.uart4_rxd */
                0x74 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)  /* smartrf.uart4_txd */
            >;
        };
    
        /* UART5 configuration for POTS */
        uart5_pins: pinmux_uart5_pins {
            pinctrl-single,pins = <
                0xC4 (PIN_INPUT_PULLUP | MUX_MODE4)  /* uart5_rxd */
                0xC0 (PIN_OUTPUT_PULLDOWN | MUX_MODE4)  /* uart5_txd */
            >;
        };
    
        clkout2_pin: pinmux_clkout2_pin {
            pinctrl-single,pins = <
                0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)  /* xdma_event_intr1.clkout2 */
            >;
        };
    
        cpsw_default: cpsw_default {
            pinctrl-single,pins = <
                /* Slave 1 */
                0x110 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxerr.mii1_rxerr */
                0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txen.mii1_txen */
                0x118 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxdv.mii1_rxdv */
                0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd3.mii1_txd3 */
                0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd2.mii1_txd2 */
                0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd1.mii1_txd1 */
                0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* mii1_txd0.mii1_txd0 */
                0x12c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_txclk.mii1_txclk */
                0x130 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxclk.mii1_rxclk */
                0x134 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd3.mii1_rxd3 */
                0x138 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd2.mii1_rxd2 */
                0x13c (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd1.mii1_rxd1 */
                0x140 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mii1_rxd0.mii1_rxd0 */
            >;
        };
    
        cpsw_sleep: cpsw_sleep {
            pinctrl-single,pins = <
                /* Slave 1 reset value */
                0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
        davinci_mdio_default: davinci_mdio_default {
            pinctrl-single,pins = <
                /* MDIO */
                0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* mdio_data.mdio_data */
                0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7)  /*D15_PHY_SUP_CNT */
            >;
        };
    
        davinci_mdio_sleep: davinci_mdio_sleep {
            pinctrl-single,pins = <
                /* MDIO reset value */
                0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_data.mdio_data */
                0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* mdio_clk.mdio_clk */
                0x108 (PIN_INPUT_PULLUP | MUX_MODE7)  /* MII1_COL */
                0x60 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /*D15_PHY_SUP_CNT */
            >;
        };
    
    	
        mmc1_pins_default: pinmux_mmc1_pins {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat3.mmc0_dat3 */
                0x0F4 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat2.mmc0_dat2 */
                0x0F8 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat1.mmc0_dat1 */
                0x0FC (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_dat0.mmc0_dat0 */
                0x100 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_clk.mmc0_clk */
                0x104 (PIN_INPUT_PULLUP | MUX_MODE0)  /* mmc0_cmd.mmc0_cmd */
    	
    
            >;
        };
    
        mmc1_pins_sleep: pinmux_mmc1_pins_sleep {
            pinctrl-single,pins = <
                0x0F0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0F8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x0FC (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x100 (PIN_INPUT_PULLDOWN | MUX_MODE7)
                0x104 (PIN_INPUT_PULLDOWN | MUX_MODE7)
            >;
        };
    
    	wlan_pins_default: pinmux_wlan_pins_default {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 ( PIN_INPUT_PULLUP/*PIN_INPUT*/ | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    		>;
    	};
    
    	wlan_pins_sleep: pinmux_wlan_pins_sleep {
    		pinctrl-single,pins = <
    		
    			0xE8 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* V5 --> conf_lcd_pclk.gpio2_24 WL_EN*/
    			0x160 ( PIN_INPUT_PULLUP/*PIN_INPUT*/ | MUX_MODE7)	/* C15 --> conf_spi0_cs1.gpio0_6 WL_IRQ*/
    			0xB0 ( PIN_OUTPUT_PULLUP | MUX_MODE7 ) /* (T1 = WIFI_PWR_ENABLE regulator) lcd_data4.gpio2[10] */
    
    
    
    		>;
    	};	
    
    	
        emmc_pins: pinmux_emmc_pins {
            pinctrl-single,pins = <
                0x80 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_clk */
                0x84 (PIN_INPUT_PULLUP | MUX_MODE2)  /* mmc1_cmd */
                0x00 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat0 */
                0x04 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat1 */
                0x08 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat2 */
                0x0c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat3 */
                0x10 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat4 */
                0x14 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat5 */
                0x18 (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat6 */
                0x1c (PIN_INPUT_PULLUP | MUX_MODE1)  /* mmc1_dat7 */
            >;
        };
    
        ehrpwm1_pin_pwm3_led: pinmux_ehrpwm1_pin_pwm3_led {
            /* Modified to support Status LED to glow at bootup by converting as GPIO pin */
            /*pinctrl-single,pins = < 0x048 MUX_MODE6 >; */ /* ehrpwm pin */
            pinctrl-single,pins = < 0x048 (PIN_OUTPUT_PULLUP | MUX_MODE7) >;  /* ehrpwm pin */
        };
    #if 0
        unusedpins_default: pinmux_unusedpins_default {
            pinctrl-single,pins = <
                0x7C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP12 */
                0x78 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* Extra_TP6 */
                0x4C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_FUNC2 */
                0x68 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* GPIO_PBIN */
                0xAC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D3 */
                0xD8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* D14 */
              //  0xE8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* WIFI_ENABLE */
              //  0XE0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)  /* BT_EN */
    
            >;
        };
    #endif
    };
    
    /* UART0 configuration for the GSM Port */
    &uart0 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart0_pins>;
    
        status = "okay";
    };
    
    
    /* UART1 configuration for the debug port */
    &uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart1_pins>;
    
        status = "okay";
    };
    
    /* Blue tooth configuration, at present not using */
    #if 0
    /* For USB1 to UART3 */
    &uart3 {
    
        status = "okay";
    
    };
    #endif
    
    /* UART4 configuration for smartRF */
    &uart4 {
        pinctrl-names = "default";
        pinctrl-0 = <&smartrf_uart4_pins>;
        status = "okay";
    };
    
    /* UART5 configuration for the POTS port */
    &uart5 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart5_pins>;
        status = "okay";
    };
    /* End */
    
    /* USB configuration */
    &usb {
        status = "okay";
    
        control@44e10620 {
            status = "okay";
        };
    
        usb-phy@47401300 {
            status = "okay";
        };
    
        usb-phy@47401b00 {
            status = "okay";
        };
    
        usb@47401000 {
            status = "okay";
        };
    #if 0
        usb@47401800 {
            status = "okay";
            /*dr_mode = "host";*/  //COMMENTED  for USB1 to UART3
        };
    #endif
    
        dma-controller@47402000  {
            status = "okay";
        };
    
    };
    
    /* i2c0 configuration  */
    &i2c0 {
        pinctrl-names = "default";
        pinctrl-0 = <&i2c0_pins>;
    
        status = "okay";
        clock-frequency = <400000>;
    
        tps: tps@24 {
            reg = <0x24>;
        };
    
        lm75: tcn75@48 {
            compatible = "lm75,tcn75";
            reg = <0x48>;
        };
    };
    
    
    /include/ "tps65217.dtsi"
    
    &tps {
        ti,pmic-shutdown-controller;
    
        regulators {
            dcdc1_reg: regulator@0 {
                regulator-always-on;
            };
    
            dcdc2_reg: regulator@1 {
                /* VDD_MPU voltage limits 0.95V - 1.325V with +/-4% tolerance */
                regulator-name = "vdd_mpu";
                regulator-min-microvolt = <912500>;
                regulator-max-microvolt = <1378000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            dcdc3_reg: regulator@2 {
                /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
                regulator-name = "vdd_core";
                regulator-min-microvolt = <925000>;
                regulator-max-microvolt = <1150000>;
                regulator-boot-on;
                regulator-always-on;
            };
    
            ldo1_reg: regulator@3 {
                regulator-always-on;
            };
    
            ldo2_reg: regulator@4 {
                regulator-always-on;
            };
    
            ldo3_reg: regulator@5 {
                regulator-always-on;
            };
    
            ldo4_reg: regulator@6 {
                regulator-always-on;
            };
    
            rtc@44e3e000 {
                ti,system-power-controller;
            };
        };
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac0 {
        phy_id = <&davinci_mdio>, <1>; /*CADB DP83848 PHY*/
        phy-mode = "mii";
    };
    
    /* Dual Emac mode implementation */
    &cpsw_emac1 {
        phy_id = <&davinci_mdio>, <1>;
        phy-mode = "mii";
    };
    
    /* Dual EMAC configuration  */
    &mac {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&cpsw_default>;
        /* Sleep section of ethernet interface handle by Application */
        /*pinctrl-1 = <&cpsw_sleep>;*/ 
    
    };
    
    /* Ethernet subsystem configuration */
    &davinci_mdio {
        pinctrl-names = "default", "sleep";
        pinctrl-0 = <&davinci_mdio_default>;
        /* Sleep section of ethernet interface handle by Application */
        /* pinctrl-1 = <&davinci_mdio_sleep>; */
    };
    
    
    
    &wkup_m3 {
        ti,scale-data-fw = "am335x-bone-scale-data.bin";
    };
    
    /* EHRPWM1A configuration as PWM, to control the intensity of the LED light */
    &epwmss1 {
        pinctrl-names = "default";
        pinctrl-0 = < &ehrpwm1_pin_pwm3_led >;
    
        status = "okay";
    
        ehrpwm@48302200 {
            status = "okay";
        };
    };
    
    /* SDCard configuration */
    &mmc1 {
    
    	status = "okay";
    	vmmc-supply = <&wlan_en_reg>;
    	bus-width = <4>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mmc1_pins_default &wlan_pins_default>;
    	pinctrl-1 = <&mmc1_pins_sleep &wlan_pins_sleep>;
    	ti,non-removable;
    	ti,needs-special-hs-handling;
    	cap-power-off-card;
    	keep-power-in-suspend;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@0 {
    		compatible = "ti,wlcore";
    		reg = <2>;
    		interrupt-parent = <&gpio0>;
    		interrupts = <6  /*IRQ_TYPE_LEVEL_HIGH*//*IRQ_TYPE_EDGE_RISING*/ IRQ_TYPE_EDGE_FALLING /*IRQ_TYPE_LEVEL_LOW*/>;
    	};
    
    };
    

    Kindly do the needful as early as possible & would really appreciate the same for all TI support provided me so far..for all my threads, asm am stuck in this wl18xx bringup from long time

    Sorry to push you hard

    Many Thanks in advance

  • I see this in your dts:

    wlcore: wlcore@0 {
    compatible = "ti,wlcore";
    reg = <2>;
    interrupt-parent = <&gpio0>;
    interrupts = <6 /*IRQ_TYPE_LEVEL_HIGH*//*IRQ_TYPE_EDGE_RISING*/ IRQ_TYPE_EDGE_FALLING /*IRQ_TYPE_LEVEL_LOW*/>;
    };

    The code in SDK 8.00 uses IRQ_TYPE_NONE. Please use the same.

    The "hunk" messages you see during the build are normal.

    I see some printouts in your code about the EN pin going high and low. If you hook up a scope do you see the pin momentarily go high?
  • Thanks a lot Brad.. for your info am using IRQ_TYPE_EDGE_FALLING beacuse our custom board is designed in that way

    lifeline login: root
    root@lifeline:~# cd /
    root@lifeline:/# ifconfig wlan0 up
    [ 53.825416] wlcore: using inverted interrupt logic: 2
    [ 54.010020] wlcore: PHY firmware version: Rev 8.2.0.0.232
    [ 54.128170] wlcore: firmware booted (Rev 8.9.0.0.48)
    root@lifeline:/#
    root@lifeline:/#
    root@lifeline:/#
    root@lifeline:/# iw wlan0 scan
    [ 72.483518] wlcore: ERROR ELP wakeup timeout!
    [ 72.488188] wlcore: Hardware recovery in progress. FW ver: Rev 8.9.0.0.48
    [ 72.495405] wlcore: down
    command failed: Connection timed out (-110)
    [ 72.503213] mmc0: mmc_power_save_host: powering down
    [ 72.512976] ieee80211 phy0: Hardware restart was requested
    root@lifeline:/# [ 72.840256] wlcore: using inverted interrupt logic: 2
    [ 83.358720] wlcore: ERROR timeout waiting for the hardware to complete initialization
    [ 83.367236] mmc0: mmc_power_save_host: powering down
    [ 83.682240] wlcore: using inverted interrupt logic: 2

    In cat /proc/interrupts

    150: 0 44e07000.gpio 6 wl18xx

    Kindly do the needful as early as possible
    Many Thanks in advance
  • Your issue seems to be something specific to the WL18xx.  I recommend starting a new thread in the WiLink forum:

    https://e2e.ti.com/support/wireless_connectivity/f/307#pi318135=1

    You will get help from WL18xx experts there.

  • Hello Srini,

    I hope you have soled this problem by now. I have the same problem which you have faced. Can you tell me how you solved the problem. How you make that WLAN_EN pin go high when it didnt go high through DTS. I am using TISDK 3.04.00.04 which comes with linux kernel 4.4.41

    Regards,
    Sachin
  • wlan_en_reg: fixedregulator@1 {
    compatible = "regulator-fixed";
    regulator-name = "wlan-en-regulator";
    regulator-min-microvolt = <1800000>;
    regulator-max-microvolt = <1800000>;
    /* WLAN_EN GPIO for this board - Bank2, pin24 */
    gpio = <&gpio2 24 0>;
    enable-active-high;
    };


    The above dts configuration worked in ti sdk 8 linux kernel 3.14, moreover It was long before 2 years back, I had been working in ti bsps. I have been moved to some other project, now as of now am not working in ti bsps
  • Hello

    Thanks for your reply,

    In SDK kernel 4.4.41 the dts contains the above code snippet out of the box.

    wlan_en_reg: fixedregulator@2 {
            compatible = "regulator-fixed";
            regulator-name = "wlan-en-regulator";
            regulator-min-microvolt = <1800000>;
            regulator-max-microvolt = <1800000>;
            startup-delay-us = <70000>;

            /* WLAN_EN GPIO for this board - Bank1, pin16 */
            gpio = <&gpio1 16 GPIO_ACTIVE_HIGH>;
            enable-active-high;
        };

    Does the delay matters?

    Regards,

    Sachin