wl1271 on sdmmc2

Hi all,

I have a board that has a wl1271-tiwi-ble chip connected on SDMMC2A sdio. I’ve managed to bring-up the sdio interface and now I’m trying to enable it in the board-ardbeg-sdhci.c board file. There’s seem to already be support for another sdio wifi, but now I have to port the wl1271 to it’s place. I’ve used a porting guide for a ‘similar’ platform, but I haven’t managed to make it work. To be honest I can’t find a way to ‘connect’ the wl1271 platform data (wl12xx_platform_data) to tegra_sdhci_device1.

This is my code:

/*
 * arch/arm/mach-tegra/board-ardbeg-sdhci.c
 *
 * Copyright (c) 2013-2014, NVIDIA CORPORATION.  All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include <linux/resource.h>
#include <linux/platform_device.h>
#include <linux/wlan_plat.h>
#include <linux/delay.h>
#include <linux/gpio.h>
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/mmc/host.h>
#include <linux/wl12xx.h>
#include <linux/platform_data/mmc-sdhci-tegra.h>
#include <linux/mfd/max77660/max77660-core.h>
#include <linux/tegra-fuse.h>
#include <linux/dma-mapping.h>

#include <asm/mach-types.h>
#include <mach/irqs.h>
#include <mach/gpio-tegra.h>
#include <mach/nct.h>

#include "gpio-names.h"
#include "board.h"
#include "board-ardbeg.h"
#include "dvfs.h"
#include "iomap.h"
#include "tegra-board-id.h"

#define ARDBEG_WLAN_RST	TEGRA_GPIO_PBB0
#define ARDBEG_WLAN_PWR	TEGRA_GPIO_PK0
#define ARDBEG_WLAN_WOW	TEGRA_GPIO_PJ0
#define ARDBEG_BT_PWR	TEGRA_GPIO_PI2
#define ARDBEG_SD_CD	TEGRA_GPIO_PV2
#define ARDBEG_SD_WP	TEGRA_GPIO_PQ4
#define FUSE_SOC_SPEEDO_0	0x134

static void (*wifi_status_cb)(int card_present, void *dev_id);
static void *wifi_status_cb_devid;
static int ardbeg_wifi_status_register(void (*callback)(int , void *), void *);

static int wl12xx_set_power(int power_on);

static struct wl12xx_platform_data wlan_data = {
		.irq = 257,
		/* COM6 (127x) uses FREF */
		.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
		/* COM7 (128x) uses TCXO */
		.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
		.set_power	= wl12xx_set_power,
};

static int wl12xx_set_power(int power_on)
{
	static int power_state;

	pr_info("Powering %s wl12xx", power_on ? "on" : "off");

	if (power_on == power_state)
		return(power_state);
	power_state = power_on;

	if (power_on) {
		/* Power up sequence required for wl127x devices */
		gpio_set_value(ARDBEG_WLAN_PWR, 1);
		usleep_range(15000, 15000);
		gpio_set_value(ARDBEG_WLAN_PWR, 0);
		usleep_range(1000, 1000);
		gpio_set_value(ARDBEG_WLAN_PWR, 1);
		msleep(70);
		/* also power-on BT */
		gpio_set_value(ARDBEG_BT_PWR, 1);
	} else {
		gpio_set_value(ARDBEG_WLAN_PWR, 0);
		/* also power-off BT */
		gpio_set_value(ARDBEG_BT_PWR, 0);
	}
	return(power_state);
}
static struct resource wl1271_wifi_resource[] = {
	[0] = {
		.name   = "wl1271_wlan_irq",
		.flags  = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_SHAREABLE,
	},
};

static struct platform_device wl1271_wifi_device = {
	.name           = "wl1271_wlan",
	.id             = 1,
	.num_resources  = 1,
	.resource       = wl1271_wifi_resource,
	.dev            = {
		.platform_data = &wlan_data,
	},
};

static struct resource sdhci_resource0[] = {
	[0] = {
		.start  = INT_SDMMC1,
		.end    = INT_SDMMC1,
		.flags  = IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC1_BASE,
		.end	= TEGRA_SDMMC1_BASE + TEGRA_SDMMC1_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

static struct resource sdhci_resource1[] = {
	[0] = {
		.start  = INT_SDMMC2,
		.end    = INT_SDMMC2,
		.flags  = IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC2_BASE,
		.end	= TEGRA_SDMMC2_BASE + TEGRA_SDMMC2_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

static struct resource sdhci_resource3[] = {
	[0] = {
		.start  = INT_SDMMC4,
		.end    = INT_SDMMC4,
		.flags  = IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC4_BASE,
		.end	= TEGRA_SDMMC4_BASE + TEGRA_SDMMC4_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

#ifdef CONFIG_MMC_EMBEDDED_SDIO
static struct embedded_sdio_data embedded_sdio_data0 = {
	.cccr   = {
		.sdio_vsn       = 2,
		.multi_block    = 1,
		.low_speed      = 0,
		.wide_bus       = 0,
		.high_power     = 1,
		.high_speed     = 1,
	},
	.cis  = {
		.vendor	 = 0x02d0,
		.device	 = 0x4329,
	},
};
#endif

static u64 tegra_sdhci_dmamask = DMA_BIT_MASK(64);

static struct tegra_sdhci_platform_data tegra_sdhci_platform_data0 = {
	.mmc_data = {
		.register_status_notify	= ardbeg_wifi_status_register,
#ifdef CONFIG_MMC_EMBEDDED_SDIO
		.embedded_sdio = &embedded_sdio_data0,
#endif
		.built_in = 0,
		.ocr_mask = MMC_OCR_1V8_MASK,
	},
	.cd_gpio = -1,
	.wp_gpio = -1,
	.power_gpio = -1,
	.tap_delay = 0,
	.trim_delay = 0x2,
	.ddr_clk_limit = 41000000,
	.uhs_mask = MMC_UHS_MASK_DDR50,
	.calib_3v3_offsets = 0x7676,
	.calib_1v8_offsets = 0x7676,
	.max_clk_limit = 136000000,
};

static struct tegra_sdhci_platform_data tegra_sdhci_platform_data1= {
	.mmc_data = {
		.register_status_notify	= ardbeg_wifi_status_register,
#ifdef CONFIG_MMC_EMBEDDED_SDIO
		.embedded_sdio = &embedded_sdio_data0,
#endif
		.built_in = 0,
		.ocr_mask = MMC_OCR_1V8_MASK,
	},
	.cd_gpio = -1,
	.wp_gpio = -1,
	.power_gpio = -1,
	.tap_delay = 0,
	.trim_delay = 0x2,
	.ddr_clk_limit = 41000000,
	.uhs_mask = MMC_UHS_MASK_DDR50,
	.calib_3v3_offsets = 0x7676,
	.calib_1v8_offsets = 0x7676,
	.max_clk_limit = 136000000,
};

static struct tegra_sdhci_platform_data tegra_sdhci_platform_data3 = {
	.cd_gpio = -1,
	.wp_gpio = -1,
	.power_gpio = -1,
	.is_8bit = 1,
	.tap_delay = 0x4,
	.trim_delay = 0x4,
	.ddr_trim_delay = 0x0,
	.mmc_data = {
		.built_in = 1,
		.ocr_mask = MMC_OCR_1V8_MASK,
	},
	.ddr_clk_limit = 51000000,
	.max_clk_limit = 200000000,
	.calib_3v3_offsets = 0x0202,
	.calib_1v8_offsets = 0x0202,
};

static struct platform_device tegra_sdhci_device0 = {
	.name		= "sdhci-tegra",
	.id		= 0,
	.resource	= sdhci_resource0,
	.num_resources	= ARRAY_SIZE(sdhci_resource0),
	.dev = {
		.dma_mask = &tegra_sdhci_dmamask,
		.coherent_dma_mask = DMA_BIT_MASK(64),
		.platform_data = &tegra_sdhci_platform_data0,
	},
};

static struct platform_device tegra_sdhci_device1 = {
	.name		= "sdhci-tegra",
	.id		= 1,
	.resource	= sdhci_resource1,
	.num_resources	= ARRAY_SIZE(sdhci_resource1),
	.dev = {
		.dma_mask = &tegra_sdhci_dmamask,
		.coherent_dma_mask = DMA_BIT_MASK(64),
		.platform_data = &tegra_sdhci_platform_data1,
	},
};

static struct platform_device tegra_sdhci_device3 = {
	.name		= "sdhci-tegra",
	.id		= 3,
	.resource	= sdhci_resource3,
	.num_resources	= ARRAY_SIZE(sdhci_resource3),
	.dev = {
		.dma_mask = &tegra_sdhci_dmamask,
		.coherent_dma_mask = DMA_BIT_MASK(64),
		.platform_data = &tegra_sdhci_platform_data3,
	},
};

static int ardbeg_wifi_status_register(
		void (*callback)(int card_present, void *dev_id),
		void *dev_id)
{
	if (wifi_status_cb)
		return -EAGAIN;
	wifi_status_cb = callback;
	wifi_status_cb_devid = dev_id;
	return 0;
}

static int __init wl12xx_wlan_init(void)
{
	int rc;

	/* Pass the wl12xx platform data information to the wl12xx driver */
	wlan_data.irq = gpio_to_irq(ARDBEG_WLAN_PWR);
	if (wl12xx_set_platform_data(&wlan_data)) {
		pr_err("Error setting wl12xx data\n");
		return -1;
	}
	pr_info("=== wl1271 wl12xx_set_platform_data\n");

	rc = gpio_request(ARDBEG_WLAN_PWR, "wlan_power");
	if (rc)
		pr_err("WLAN_PWR gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_WLAN_RST, "wlan_rst");
	if (rc)
		pr_err("WLAN_RST gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_WLAN_WOW, "bcmsdh_sdmmc");
	if (rc)
		pr_err("WLAN_WOW gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_BT_PWR, "bt_power");
	if (rc)
		pr_err("BT_PWR gpio request failed:%d\n", rc);

	rc = gpio_direction_output(ARDBEG_WLAN_PWR, 0);
	if (rc)
		pr_err("WLAN_PWR gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_output(ARDBEG_WLAN_RST, 0);
	if (rc)
		pr_err("WLAN_RST gpio direction configuration failed:%d\n", rc);

	rc = gpio_direction_input(ARDBEG_WLAN_WOW);
	if (rc)
		pr_err("WLAN_WOW gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_input(ARDBEG_BT_PWR);
	if (rc)
		pr_err("BT_PWR gpio direction configuration failed:%d\n", rc);

	pr_info("==== gpio_to_irq(ARDBEG_WLAN_PWR)=%d\n", wlan_data.irq);

	platform_device_register(&wl1271_wifi_device);
	return 0;
}

#ifdef CONFIG_TEGRA_PREPOWER_WIFI
static int __init ardbeg_wifi_prepower(void)
{
	if (!of_machine_is_compatible("nvidia,ardbeg") &&
		!of_machine_is_compatible("nvidia,laguna") &&
		!of_machine_is_compatible("nvidia,ardbeg_sata") &&
		!of_machine_is_compatible("nvidia,tn8") &&
		!of_machine_is_compatible("nvidia,norrin") &&
		!of_machine_is_compatible("nvidia,bowmore") &&
		!of_machine_is_compatible("nvidia,jetson-tk1"))
		return 0;
	wl12xx_set_power(1);

	return 0;
}

subsys_initcall_sync(ardbeg_wifi_prepower);
#endif

int __init ardbeg_sdhci_init(void)
{
	int nominal_core_mv;
	int min_vcore_override_mv;
	int boot_vcore_mv;
	u32 speedo;
	struct board_info board_info;

	nominal_core_mv =
		tegra_dvfs_rail_get_nominal_millivolts(tegra_core_rail);
	if (nominal_core_mv) {
		tegra_sdhci_platform_data0.nominal_vcore_mv = nominal_core_mv;
		tegra_sdhci_platform_data1.nominal_vcore_mv = nominal_core_mv;
		tegra_sdhci_platform_data3.nominal_vcore_mv = nominal_core_mv;
	}
	min_vcore_override_mv =
		tegra_dvfs_rail_get_override_floor(tegra_core_rail);
	if (min_vcore_override_mv) {
		tegra_sdhci_platform_data0.min_vcore_override_mv =
			min_vcore_override_mv;
		tegra_sdhci_platform_data1.min_vcore_override_mv =
			min_vcore_override_mv;
		tegra_sdhci_platform_data3.min_vcore_override_mv =
			min_vcore_override_mv;
	}
	boot_vcore_mv = tegra_dvfs_rail_get_boot_level(tegra_core_rail);
	if (boot_vcore_mv) {
		tegra_sdhci_platform_data0.boot_vcore_mv = boot_vcore_mv;
		tegra_sdhci_platform_data1.boot_vcore_mv = boot_vcore_mv;
		tegra_sdhci_platform_data3.boot_vcore_mv = boot_vcore_mv;
	}

	tegra_get_board_info(&board_info);

	/* E1780 and E1784 are using interposer E1816, Due to this the
	 * SDIO trace length got increased. So hard coding the drive
	 * strength to type A for these boards to support 204 Mhz */
	if ((board_info.board_id == BOARD_E1780) ||
		(board_info.board_id == BOARD_E1784)) {
		tegra_sdhci_platform_data0.default_drv_type =
			MMC_SET_DRIVER_TYPE_A;
	}

	if (board_info.board_id == BOARD_P1761)
		tegra_sdhci_platform_data0.max_clk_limit = 204000000;

	if (board_info.board_id == BOARD_E1781)
		tegra_sdhci_platform_data3.uhs_mask = MMC_MASK_HS200;

	if (board_info.board_id == BOARD_PM374 ||
		board_info.board_id == BOARD_PM358 ||
		board_info.board_id == BOARD_PM363 ||
		board_info.board_id == BOARD_PM359)
			tegra_sdhci_platform_data0.disable_clock_gate = 1;

	/*
	 * FIXME: Set max clk limit to 200MHz for SDMMC3 for PM375.
	 * Requesting 208MHz results in getting 204MHz from PLL_P
	 * and CRC errors are seen with same.
	 */
	speedo = tegra_fuse_readl(FUSE_SOC_SPEEDO_0);
	tegra_sdhci_platform_data0.cpu_speedo = speedo;
	tegra_sdhci_platform_data1.cpu_speedo = speedo;
	tegra_sdhci_platform_data3.cpu_speedo = speedo;

	if (board_info.board_id == BOARD_E1991 ||
		board_info.board_id == BOARD_E1971) {
			tegra_sdhci_platform_data0.uhs_mask =
				MMC_UHS_MASK_SDR50 | MMC_UHS_MASK_DDR50;
	}

	if (board_info.board_id == BOARD_E1991)
		tegra_sdhci_platform_data0.max_clk_limit = 204000000;

	if (board_info.board_id == BOARD_PM374 ||
		board_info.board_id == BOARD_PM359) {
			tegra_sdhci_platform_data0.uhs_mask =
				MMC_UHS_MASK_SDR50;
			tegra_sdhci_platform_data3.max_clk_limit = 200000000;
	}

	platform_device_register(&tegra_sdhci_device3);	// Enable sdmmc3 for emmc

	platform_device_register(&tegra_sdhci_device0); // Enable sdmmc0 for SD card reader
	platform_device_register(&tegra_sdhci_device1); // Enable WiFi
	wl12xx_wlan_init();

	return 0;
}

In all other examples I’ve seen there’s a point that the wifi platform data can be assigned somehow to the wanted mmc, but I can’t find a way to do that on tegra. All I’ve managed is to have a /sys/devices/platform/wl1271_wlan.1 device but I can’t do anything with that.

Does anybody managed to do this?

Thanks.

I’ve forgot to say that I’ve already enabled in the kernel all the necessary config flags for wl1271.

I still haven’t managed to make this work.
I’m stuck in the point that I have to connect these interfaces together (sdmmc and wl127).

The tegra_sdhci_platform_data struct doesn’t seem to have any entry point to pass a struct for an sdio wifi interface and also the same goes for. wl12xx_platform_data.

struct wl12xx_platform_data {
	int (*set_power)(int power_on);
	int (*set_carddetect)(int val);
	/* SDIO only: IRQ number if WLAN_IRQ line is used, 0 for SDIO IRQs */
	int irq;
	bool use_eeprom;
	int board_ref_clock;
	int board_tcxo_clock;
	unsigned long platform_quirks;
	bool pwr_in_suspend;
};
struct tegra_sdhci_platform_data {
	int cd_gpio;
	int wp_gpio;
	int power_gpio;
	int is_8bit;
	int pm_flags;
	int pm_caps;
	int nominal_vcore_mv;
	int min_vcore_override_mv;
	int boot_vcore_mv;
	unsigned int max_clk_limit;
	unsigned int ddr_clk_limit;
	unsigned int tap_delay;
	unsigned int trim_delay;
	unsigned int ddr_trim_delay;
	unsigned int uhs_mask;
	struct mmc_platform_data mmc_data;
	bool power_off_rail;
	bool en_freq_scaling;
	bool cd_wakeup_incapable;
	bool en_nominal_vcore_tuning;
	unsigned int calib_3v3_offsets;	/* Format to be filled: 0xXXXXPDPU */
	unsigned int calib_1v8_offsets;	/* Format to be filled: 0xXXXXPDPU */
	bool disable_clock_gate; /* no clock gate when true */
	u32 cpu_speedo;
	unsigned char default_drv_type;
};

The only hope in the tegra_sdhci_platform_data struct seems to be the mmc_platform_data struct

struct mmc_platform_data {
	unsigned int ocr_mask;			/* available voltages */
	int built_in;				/* built-in device flag */
	int card_present;			/* card detect state */
	u32 (*translate_vdd)(struct device *, unsigned int);
	unsigned int (*status)(struct device *);
	struct embedded_sdio_data *embedded_sdio;
	int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id);
};

But that it seems that only has the register_status_notify that in tegra_sdhci_platform_data0 by default the ardbeg_wifi_status_register is assigned. So I did the same for tegra_sdhci_platform_data1 which I’m using. That didn’t help either, as I also don’t have any “sd card detection”.

So now I’m stuck with a “wl1271_wlan” in my /sys/… that literally does nothing.

Any ideas?

Hi dimtass,

I do not see set_carddetect callback being initialized for the wl12xx_platform_data (in code from first post). I only see the set_power callback initialized. Can you confirm if I am missing something?

Is CONFIG_MMC_EMBEDDED_SDIO enabled for your platform? In case this is enabled you may want to double check if initialization for embedded_sdio_data0 is fine your sdio chip.

Can you enable debug prints and check if ardbeg_wifi_status_register is getting called? I am assuming you are not hitting any of the error scenarios that you already enabled check in your implementation. Please confirm if the review logs are showing you any errors. If you can share your complete kernel bootup log it may be helpful to debug the problem.

Regards.

Hi b2,

thanks for your response. I’ve made some minor progress but I get kernel Oops when I try to load the wl12xx module. I’m not using the CONFIG_MMC_EMBEDDED_SDIO flag, but I’ve also tried that without any result. Anyway, I believe that the problem is that the sdhci interface it doesn’t work in a first place.

For example, let’s say that I don’t use the wl1271 module and I just want to enable the sdhci.1 (sdmmc2) interface. That doesn’t work. I can’t get any clock from the sdmmc2 sdio interface in Linux, although I’ve set all the needed structures and registered the interface as a platform device. The same happens for the sdhci.0 (sdmmc1) interface. On the other hand sdmm3 & 4 which are enabled by default they working fine. On the other hand, in u-boot if I just enable the sdmmc1 and sdmmc2 interface in the device tree I get clocks from the sdio interfaces. In Linux, no.

Therefore, I believe that first I have to find a way to enable the sdmmc2 interface in the kernel and see a clock in the output and then I believe that also the wl12xx driver will work.

Do you know which is the right way to enable the sdmmc1 and sdmmc2 interfaces?

Anyway, the error I get now when I’m loading the wl12xx driver is the following:

root@mghd271-tk1:~# modprobe wlcore_sdio         
root@mghd271-tk1:~# modprobe wl12xx
[  146.813995] cfg80211: Calling CRDA to update world regulatory domain
root@mghd271-tk1:~# [  146.944926] Unable to handle kernel NULL pointer dereference at virtual address 0000000f
[  146.953206] pgd = c0004000
[  146.956049] [0000000f] *pgd=00000000
[  146.959633] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[  146.964929] Modules linked in: wl12xx wlcore mac80211 cfg80211 rfkill wlcore_sdio
[  146.972440] CPU: 2 PID: 31 Comm: kworker/2:1 Not tainted 3.10.40+ #7
[  146.978781] Workqueue: events request_firmware_work_func
[  146.984084] task: edb7eac0 ti: edb9e000 task.ti: edb9e000
[  146.989469] PC is at wl12xx_setup+0x320/0x35c [wl12xx]
[  146.994591] LR is at 0xec1ce220
[  146.997720] pc : [<bf13bd28>]    lr : [<ec1ce220>]    psr: 600b0013
[  146.997720] sp : edb9fe98  ip : bf141310  fp : 00000000
[  147.009170] r10: 00000008  r9 : ffffffff  r8 : ec1ce200
[  147.014378] r7 : 00000000  r6 : bf145850  r5 : 00000000  r4 : eca9ae40
[  147.020887] r3 : 0000001b  r2 : 46010100  r1 : 00000000  r0 : 00000000
[  147.027396] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[  147.034685] Control: 10c5387d  Table: ac4ac06a  DAC: 00000015
[  147.040413] 
[  147.040413] LR: 0xec1ce1a0:
[  147.044667] e1a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.052881] e1c0  00000000 0000000f 00000000 00000000 00000000 00000000 00000000 00000000
[  147.061093] e1e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.069305] e200  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[  147.077516] e220  0000001b 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.085726] e240  30796870 f60c4000 00000002 ec1ce24c ec1cfe4c ec718ccc ec1ce218 00200200
[  147.093935] e260  ec1ce220 ec1ce2a0 00000000 ec1ce22c 0000002c 00000000 00000000 00000000
[  147.102148] e280  ec43fb80 ee00160c 00000000 eca9a000 00000001 ffffffff ec1c0000 ffffffff
[  147.110360] 
[  147.110360] SP: 0xedb9fe18:
[  147.114615] fe18  ecbe8780 c01ab66c ed48e708 00000000 ec0f0b1c 00000000 ec0f0b1c c01abaa4
[  147.122826] fe38  bf13bd28 600b0013 ffffffff edb9fe84 ec1ce200 c000eb58 00000000 00000000
[  147.131035] fe58  46010100 0000001b eca9ae40 00000000 bf145850 00000000 ec1ce200 ffffffff
[  147.139246] fe78  00000008 00000000 bf141310 edb9fe98 ec1ce220 bf13bd28 600b0013 ffffffff
[  147.147456] fe98  bf13ba08 eca9ae40 edb11840 00000000 c0c173b8 c0c16fa8 ffffffff c1e06e05
[  147.155667] feb8  edb9e008 bf109344 bf11dcc4 c0d6ed30 c0ce469c ec1ceb40 edb11840 c0ce4638
[  147.163879] fed8  c1e03040 c1e06e00 00000000 c1e06e05 edb9e008 c041c428 00000001 c00835e8
[  147.172089] fef8  ec1ceb40 00000000 ec1ceb40 c008360c ed814000 c0074500 00000003 00000000
[  147.180301] 
[  147.180301] R4: 0xeca9adc0:
[  147.184555] adc0  eca9adc0 eca9adc0 ffffffe0 eca9adcc eca9adcc bf094710 ffffffe0 eca9addc
[  147.192767] ade0 [  147.192948] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[  147.192978] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[  147.193156] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
 eca9addc bf094ea4 00000000 00000000 00000000 00000000 00000000 00000000
[  147.224919] ae00  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.233129] ae20  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.241340] ae40  00000000 eca9a3e0 00000000 c0c173c8 c0c173b8 00000000 00000000 00000000
[  147.249551] ae60  00000000 00000000 00000000 00000000 00000000 00000000 00000001 00000000
[  147.257762] ae80  eca9ae80 eca9ae80 00000000 00000000 00000000 00000000 00000000 00000000
[  147.265972] aea0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.274183] 
[  147.274183] R8: 0xec1ce180:
[  147.278439] e180  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.286650] e1a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.294859] e1c0  00000000 0000000f 00000000 00000000 00000000 00000000 00000000 00000000
[  147.303071] e1e0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.311282] e200  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[  147.319494] e220  0000001b 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.327703] e240  30796870 f60c4000 00000002 ec1ce24c ec1cfe4c ec718ccc ec1ce218 00200200
[  147.335915] e260  ec1ce220 ec1ce2a0 00000000 ec1ce22c 0000002c 00000000 00000000 00000000
[  147.344127] Process kworker/2:1 (pid: 31, stack limit = 0xedb9e238)
[  147.350376] Stack: (0xedb9fe98 to 0xedba0000)
[  147.354718] fe80:                                                       bf13ba08 eca9ae40
[  147.362874] fea0: edb11840 00000000 c0c173b8 c0c16fa8 ffffffff c1e06e05 edb9e008 bf109344
[  147.371031] fec0: bf11dcc4 c0d6ed30 c0ce469c ec1ceb40 edb11840 c0ce4638 c1e03040 c1e06e00
[  147.379186] fee0: 00000000 c1e06e05 edb9e008 c041c428 00000001 c00835e8 ec1ceb40 00000000
[  147.387342] ff00: ec1ceb40 c008360c ed814000 c0074500 00000003 00000000 edb9ff44 edb11840
[  147.395499] ff20: c1e03040 edb11858 c1e03054 edb9e000 c0ce4030 00000009 c1e03040 c0084350
[  147.403654] ff40: edb7eac0 edb9e000 ed811ea8 edb11840 c008421c 00000000 00000000 00000000
[  147.411810] ff60: 00000000 c008a88c c0c73a30 00000000 ee26ca80 edb11840 00000000 00000000
[  147.419965] ff80: edb9ff80 edb9ff80 00000000 00000000 edb9ff90 edb9ff90 ed811ea8 c008a7b8
[  147.428120] ffa0: 00000000 00000000 00000000 c000f098 00000000 00000000 00000000 00000000
[  147.436276] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  147.444431] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[  147.452599] [<bf13bd28>] (wl12xx_setup+0x320/0x35c [wl12xx]) from [<bf109344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore])
[  147.462929] [<bf109344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore]) from [<c041c428>] (request_firmware_work_func+0x40/0x60)
[  147.473517] [<c041c428>] (request_firmware_work_func+0x40/0x60) from [<c008360c>] (process_one_work+0x114/0x440)
[  147.483670] [<c008360c>] (process_one_work+0x114/0x440) from [<c0084350>] (worker_thread+0x134/0x3bc)
[  147.492868] [<c0084350>] (worker_thread+0x134/0x3bc) from [<c008a88c>] (kthread+0xd4/0xd8)
[  147.501115] [<c008a88c>] (kthread+0xd4/0xd8) from [<c000f098>] (ret_from_fork+0x14/0x20)
[  147.509185] Code: 1a00000a e3a03003 e5883024 eaffff97 (e5993010) 
[  147.515464] ---[ end trace e4cd3dfa3ed1c710 ]---

Hi dimtass,

  1. I am assuming that you have not disconnected the SDMMC1 lines going to the BCM WIFI SDIO chip on Jetson-TK1 board. In such a case SDMMC1 should be working fine. Did you try this on the board before making hardware changes? Is it possible to share a picture of the hardware to help see how you have connected SDMMC2?

  2. Based on the kernel crash log driver wl12xx is not loading properly. If you can share the complete kernel boot log for the system there may be some clue to the problem.

  3. Do you know which is the right way to enable the sdmmc1 and sdmmc2 interfaces?
    I believe the enumeration of both the SDIO interfaces(SDMMC1 and SDMMC2) at sdhci level should have completed since the board files are statically linked and are not dependent on the dynamic loading of wl12xx driver. The complete kernel boot log should confirm this expectation.

  4. I do not see set_carddetect callback being initialized for the wl12xx_platform_data (in code from first post).
    Please confirm if the set_carddetect is defined now. You may refer the code to support TI Wifi SDIO chip at -
    nv-tegra.nvidia Code Review - linux-2.6.git/blob - arch/arm/mach-tegra/board-tegratab-sdhci.c

  5. I’ve managed to bring-up the sdio interface
    Is it possible share the SDIO interface aspects that you think are fine?

  1. Actually it’s a custom board where the sdmmc1 is the SD card, sdmmc2 is the sdio-wifi (wl1271). Unfortunately, it’s not possible to post any images but the hardware layout it’s correct and double/triple checked. Other than that, as I’ve wrote before the key point is that while in u-boot I can probe the sdio clk and that the clock is there, when the kernel loads the clock disappears.

  2. Yes, it seems it crashes and I believe that has to do with the fact it doesn’t have access to the sdio

This is the kernel log.

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.40+ (gcc version 4.9.3 20141119 (release) [ARM/embedded-4_9-branch revision 218278] (GNU Tools for ARM Embedded Processors) ) #7 SMP PREEMPT Tue Aug 16 10:40:14 BST 2016
[    0.000000] CPU: ARMv7 Processor [413fc0f3] revision 3 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] Machine: jetson-tk1, model: NVIDIA Tegra124 PM375, serial: 0
[    0.000000] Truncating memory at 0x80000000 to fit in 32-bit physical address space
[    0.000000] Found tsec, start=0xf4900000 size=2000000
[    0.000000] Tegra reserved memory:
[    0.000000] LP0:                    f46ff000 - f46ff80f
[    0.000000] Bootloader framebuffer: 00000000 - 00000000
[    0.000000] Bootloader framebuffer2: 00000000 - 00000000
[    0.000000] Framebuffer:            f8500000 - f96fffff
[    0.000000] 2nd Framebuffer:        f9700000 - fdefffff
[    0.000000] Carveout:               00000000 - 00000000
[    0.000000] Vpr:                    00000000 - 00000000
[    0.000000] Tsec:                   f4900000 - f68fffff
[    0.000000] cma: CMA: reserved 16 MiB at ae800000
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] DTS File Name: arch/arm/boot/dts/tegra124-hd271.dts
[    0.000000] Tegra12: CPU Speedo value 2311, Soc Speedo value 2259, Gpu Speedo value 2118
[    0.000000] Tegra12: CPU Speedo ID 5, Soc Speedo ID 0, Gpu Speedo ID 1
[    0.000000] Tegra12: CPU Process ID 0,Soc Process ID 1,Gpu Process ID 0
[    0.000000] Tegra Revision: A01 SKU: 0x87 CPU Process: 0 Core Process: 1
[    0.000000] tegra: PLLP fixed rate: 408000000
[    0.000000] tegra_clk_shared_bus_user_init: c2bus client se left ON
[    0.000000] tegra_clk_shared_bus_user_init: c4bus client vi left ON
[    0.000000] Lowering cpu_lp maximum rate from 1350000000 to 1044000000
[    0.000000] Lowering sbus maximum rate from 420000000 to 372000000
[    0.000000] Lowering vic03 maximum rate from 900000000 to 756000000
[    0.000000] Lowering tsec maximum rate from 900000000 to 756000000
[    0.000000] Lowering msenc maximum rate from 600000000 to 480000000
[    0.000000] Lowering se maximum rate from 600000000 to 480000000
[    0.000000] Lowering vde maximum rate from 600000000 to 480000000
[    0.000000] Lowering host1x maximum rate from 500000000 to 408000000
[    0.000000] Lowering vi maximum rate from 700000000 to 600000000
[    0.000000] Lowering isp maximum rate from 700000000 to 600000000
[    0.000000] Lowering c4bus maximum rate from 700000000 to 600000000
[    0.000000] Lowering pll_c maximum rate from 1400000000 to 1066000000
[    0.000000] Lowering pll_c2 maximum rate from 1200000000 to 1066000000
[    0.000000] Lowering pll_c3 maximum rate from 1200000000 to 1066000000
[    0.000000] Lowering hdmi maximum rate from 594000000 to 297000000
[    0.000000] Lowering sdmmc1 maximum rate from 208000000 to 204000000
[    0.000000] Lowering sdmmc3 maximum rate from 208000000 to 204000000
[    0.000000] Lowering gbus maximum rate from 1032000000 to 852000000
[    0.000000] Lowering cpu_g maximum rate from 3000000000 to 2065500000
[    0.000000] tegra dvfs: VDD_CPU nominal 1260mV, scaling enabled
[    0.000000] tegra dvfs: VDD_CORE nominal 1150mV, scaling enabled
[    0.000000] tegra dvfs: VDD_GPU nominal 1200mV, scaling enabled
[    0.000000] Switching to timer-based delay loop
[    0.000000] tegra_powergate_init: DONE
[    0.000000] tegra12_plle_clk_enable: pll_e is already enabled
[    0.000000] PERCPU: Embedded 9 pages/cpu @c1dee000 s15360 r8192 d13312 u36864
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 490768
[    0.000000] Kernel command line: console=ttyS0,115200n8 no_console_suspend=1 lp0_vec=2064@0xf46ff000 mem=2015M@2048M memtype=255 ddr_die=2048M@2048M section=256M pmuboard=0x0177:0x0000:0x42:0x44:0x00 tsec=32M@3913M otf_key=c75e5bb91eb3bd947560357b64422f85 usbcore.old_scheme_first=1 usbcore.autosuspend=-1 core_edp_mv=1150 core_edp_ma=4000 tegraid=40.1.1.0.0 debug_uartport=lsport,3 power_supply=Adapter audio_codec=rt5640 modem_id=0 android.kerneltype=normal commchip_id=0 usb_port_owner_info=0 lane_owner_info=6 emc_max_dvfs=0 touch_id=0@0 board_info=0x0177:0x0000:0x42:0x44:0x00 root=/dev/mmcblk0p4 rootwait rw gpt
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 1923MB = 1923MB total
[    0.000000] Memory: 1921024k/1921024k available, 142336k reserved, 1190908K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0b18f88   (11332 kB)
[    0.000000]       .init : 0xc0b19000 - 0xc0b98c00   ( 511 kB)
[    0.000000]       .data : 0xc0b9a000 - 0xc0cf9260   (1405 kB)
[    0.000000]        .bss : 0xc0cf9260 - 0xc0d940cc   ( 620 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:960
[    0.000000] the number of interrupt controllers found is 5
[    0.000000] Architected local timer running at 12.00MHz (phys).
[    0.000000] sched_clock: 56 bits at 12MHz, resolution 83ns, wraps every 2863311536128ns
[    0.000000] Ignoring duplicate/late registration of read_current_timer delay
[    0.000000] Console: colour dummy device 80x30
[    0.000431] Calibrating delay loop (skipped), value calculated using timer frequency.. lpj=12000
[    0.000446] pid_max: default: 32768 minimum: 301
[    0.000702] Mount-cache hash table entries: 512
[    0.020147] Initializing cgroup subsys debug
[    0.020161] Initializing cgroup subsys freezer
[    0.020217] CPU: Testing write buffer coherency: ok
[    0.020254] ftrace: allocating 30602 entries in 60 pages
[    0.059943] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.059969] Setting up static identity map for 0xc0800e60 - 0xc0800ef4
[    0.063976] ftrace: Allocated trace_printk buffers
[    0.071623] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.074634] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.077679] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.077878] Brought up 4 CPUs
[    0.077898] SMP: Total of 4 processors activated.
[    0.077904] CPU: All CPU(s) started in SVC mode.
[    0.078803] devtmpfs: initialized
[    0.087257] pinctrl core: initialized pinctrl subsystem
[    0.087561] regulator-dummy: no parameters
[    0.088246] NET: Registered protocol family 16
[    0.090548] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.091755] tegra_smmu tegra_smmu: Loaded Tegra IOMMU driver
[    0.093412] console [pstore-1] enabled
[    0.093439] ramoops: attached 0x200000@0xf8300000, ecc: 0/0
[    0.093789] cpuidle: using governor ladder
[    0.093802] cpuidle: using governor menu
[    0.097503] ardbeg_camera_auxdata: update camera lookup table.
[    0.106325] tegra-gpio 6000d000.gpio: Initialising GPIO state 0: name default
[    0.106741] gpiochip_add: registered GPIOs 0 to 255 on device: tegra-gpio
[    0.112976] Wake16 for irq=34
[    0.115234] Wake58 for irq=81
[    0.115269] Wake41 for irq=129
[    0.115279] Wake43 for irq=129
[    0.115312] Wake40 for irq=53
[    0.115322] Wake42 for irq=53
[    0.119085] board_info: id:sku:fab:major:minor = 0x0177:0x0000:0x42:0x44:0x00
[    0.119147] board_info: id:sku:fab:major:minor = 0x0177:0x0000:0x42:0x44:0x00
[    0.119199] (NULL device *): DSI: clk: 432000000
[    0.119227] Selecting UARTD as the debug console
[    0.119262] The debug console clock name is uartd
[    0.119663] ardbeg_modem_init: modem_id = 0
[    0.121375] === wl1271 wl12xx_set_platform_data
[    0.121435] ==== gpio_to_irq(ARDBEG_WLAN_PWR)=257
[    0.122380] Clear bootloader IO dpd settings
[    0.122572] Loading jetson TK1 EMC tables.
[    0.122820] tegra: pll_m is selected as scalable EMC clock source
[    0.122852] Lowering emc maximum rate from 1200000000 to 924000000
[    0.122867] tegra: validated EMC DFS table
[    0.122978] ardbeg_edp_init: CPU regulator 12500 mA
[    0.372989] ardbeg_edp_init: GPU regulator 11400 mA
[    0.373922] swapper/0 isomgr_init(): iso emc max clk=924000KHz
[    0.373933] swapper/0 isomgr_init(): max_iso_bw=7392000KB[    0.374271] ardbeg_touch_init init raydium touch
[    0.374420] Raydium - touch platform_id :  8
[    0.374515] (NULL device *): DSI: clk: 432000000
[    0.457194] platform tegradc.0: IOVA linear map 0xf8500000(1200000)
[    0.460486] platform tegradc.0: IOVA linear map 0xf9700000(4800000)
[    0.465462] platform tegradc.1: IOVA linear map 0xf8500000(1200000)
[    0.468742] platform tegradc.1: IOVA linear map 0xf9700000(4800000)
[    0.469145] FUSE: cp_rev 0 ft_rev 0
[    0.469310] tegra11_soctherem_oc_int_init(): OC interrupts are not enabled
[    0.469676] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.469689] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.469949] mc-err: Started MC error interface!
[    0.480313] bio: create slab <bio-0> at 0
[    0.482126] reg-fixed-voltage 0.regulator: Consumer c1 does not have device name
[    0.482145] reg-fixed-voltage 0.regulator: Consumer c2 does not have device name
[    0.482278] vdd-ac-bat: 8400 mV 
[    0.482402] reg-fixed-voltage 1.regulator: Consumer c1 does not have device name
[    0.482418] reg-fixed-voltage 1.regulator: Consumer c2 does not have device name
[    0.482524] vdd-3v3-aon: 3300 mV 
[    0.482661] reg-fixed-voltage 8.regulator: Consumer c1 does not have device name
[    0.482677] reg-fixed-voltage 8.regulator: Consumer c2 does not have device name
[    0.482691] reg-fixed-voltage 8.regulator: Consumer c3 does not have device name
[    0.482711] reg-fixed-voltage 8.regulator: Consumer c6 does not have device name
[    0.482725] reg-fixed-voltage 8.regulator: Consumer c7 does not have device name
[    0.482738] reg-fixed-voltage 8.regulator: Consumer c8 does not have device name
[    0.482752] reg-fixed-voltage 8.regulator: Consumer c9 does not have device name
[    0.482766] reg-fixed-voltage 8.regulator: Consumer c10 does not have device name
[    0.482780] reg-fixed-voltage 8.regulator: Consumer c11 does not have device name
[    0.482794] reg-fixed-voltage 8.regulator: Consumer c12 does not have device name
[    0.482905] reg-3v3-supply: 3300 mV 
[    0.484500] vgaarb: loaded
[    0.485109] SCSI subsystem initialized
[    0.485475] usbcore: registered new interface driver usbfs
[    0.485528] usbcore: registered new interface driver hub
[    0.485623] usbcore: registered new device driver usb
[    0.488337] as3722 4-0040: AS3722 ID: ID1:ID2:ID3 = 0x0c:0x01:0x15
[    0.488352] as3722 4-0040: Final OTP version 1V21
[    0.493253] gpiochip_add: registered GPIOs 1016 to 1023 on device: as3722-gpio
[    0.493455] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493498] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493533] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493547] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493561] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493575] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493615] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493629] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493642] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493656] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493670] as3722-regulator as3722-regulator.0: Consumer c5 does not have device name
[    0.493683] as3722-regulator as3722-regulator.0: Consumer c6 does not have device name
[    0.493696] as3722-regulator as3722-regulator.0: Consumer c7 does not have device name
[    0.493743] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493757] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493770] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493784] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493797] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.493811] as3722-regulator as3722-regulator.0: Consumer c10 does not have device name
[    0.493825] as3722-regulator as3722-regulator.0: Consumer c11 does not have device name
[    0.493838] as3722-regulator as3722-regulator.0: Consumer c12 does not have device name
[    0.493852] as3722-regulator as3722-regulator.0: Consumer c13 does not have device name
[    0.493866] as3722-regulator as3722-regulator.0: Consumer c14 does not have device name
[    0.493879] as3722-regulator as3722-regulator.0: Consumer c15 does not have device name
[    0.493916] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493930] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493966] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493980] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493994] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.494007] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.494021] as3722-regulator as3722-regulator.0: Consumer c5 does not have device name
[    0.494034] as3722-regulator as3722-regulator.0: Consumer c6 does not have device name
[    0.494048] as3722-regulator as3722-regulator.0: Consumer c7 does not have device name
[    0.494061] as3722-regulator as3722-regulator.0: Consumer c8 does not have device name
[    0.494075] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.494128] as3722-regulator as3722-regulator.0: Consumer c8 does not have device name
[    0.494141] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.494154] as3722-regulator as3722-regulator.0: Consumer c10 does not have device name
[    0.494192] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.495065] vdd-cpu: 650 <--> 1300 mV at 1000 mV 3500 mA 
[    0.495808] vdd-core: applied init 1000000uV constraint
[    0.496392] vdd-core: 700 <--> 1350 mV at 1000 mV 3500 mA 
[    0.497563] vddio-ddr: at 1350 mV 
[    0.497882] as3722-sd3: no parameters
[    0.498445] avdd-pll-pex: 1050 mV 
[    0.499621] vdd-1v8: at 1800 mV 
[    0.499927] vdd-gpu: applied init 1000000uV constraint
[    0.500787] vdd-gpu: 650 <--> 1200 mV at 1000 mV 3500 mA 
[    0.501268] avdd-pll: at 1050 mV at 300 mA 
[    0.502066] as3722-ldo1: at 150 mA 
[    0.502703] avdd-dsi-csi: at 1200 mV at 150 mA 
[    0.503889] vdd-rtc: 800 mV at 150 mA 
[    0.504202] vin-ldo3-4: at 150 mA 
[    0.504515] as3722-ldo5: at 150 mA 
[    0.504839] as3722-ldo6: at 150 mA 
[    0.505158] as3722-ldo7: at 150 mA 
[    0.505485] as3722-ldo9: at 150 mA 
[    0.505817] as3722-ldo10: at 1800 mV at 150 mA 
[    0.506442] vpp-fuse: 1800 mV at 150 mA 
[    0.507483] Linux video capture interface: v2.00
[    0.508566] Advanced Linux Sound Architecture Driver Initialized.
[    0.508998] Powering on wl12xx
[    0.598346] usb0-vbus: 5000 mV 
[    0.598596] usb1-usb2-vbus: 5000 mV 
[    0.598864] vdd-hdmi: 5000 mV 
[    0.599148] avdd-hdmi-pll: 3300 mV 
[    0.599189] avdd-hdmi-pll: supplied by avdd-pll-pex
[    0.599341] reg-fixed-sync-voltage 6.regulator: Consumer c1 does not have device name
[    0.599468] vdd-lcd-bl: 3300 mV 
[    0.599607] reg-fixed-sync-voltage 7.regulator: Consumer c1 does not have device name
[    0.599737] vdd-lcd-bl-en: 5000 mV 
[    0.599873] reg-fixed-sync-voltage 9.regulator: Consumer c3 does not have device name
[    0.599976] reg-5v0-supply: 5000 mV 
[    0.600140] reg-fixed-sync-voltage a.regulator: Consumer c1 does not have device name
[    0.600156] reg-fixed-sync-voltage a.regulator: Consumer c2 does not have device name
[    0.600171] reg-fixed-sync-voltage a.regulator: Consumer c3 does not have device name
[    0.600202] reg-fixed-sync-voltage a.regulator: Consumer c10 does not have device name
[    0.600216] reg-fixed-sync-voltage a.regulator: Consumer c11 does not have device name
[    0.600230] reg-fixed-sync-voltage a.regulator: Consumer c12 does not have device name
[    0.600244] reg-fixed-sync-voltage a.regulator: Consumer c13 does not have device name
[    0.600258] reg-fixed-sync-voltage a.regulator: Consumer c14 does not have device name
[    0.600271] reg-fixed-sync-voltage a.regulator: Consumer c15 does not have device name
[    0.600395] reg-1v8-supply: 1800 mV 
[    0.600644] reg-fixed-sync-voltage b.regulator: Consumer c1 does not have device name
[    0.600775] reg-dcdc-1v2: 1200 mV 
[    0.600949] reg-fixed-sync-voltage c.regulator: Consumer c7 does not have device name
[    0.600965] reg-fixed-sync-voltage c.regulator: Consumer c8 does not have device name
[    0.601511] as3722-gpio2-supply: 3300 mV 
[    0.601702] reg-fixed-sync-voltage d.regulator: Consumer c1 does not have device name
[    0.602225] as3722-gpio4-supply: 3300 mV 
[    0.602477] vdd-cdc-1v2-aud: 1200 mV 
[    0.602615] reg-fixed-sync-voltage 10.regulator: Consumer c1 does not have device name
[    0.602631] reg-fixed-sync-voltage 10.regulator: Consumer c2 does not have device name
[    0.602646] reg-fixed-sync-voltage 10.regulator: Consumer c3 does not have device name
[    0.602755] reg-aon-1v8: 1800 mV 
[    0.602900] reg-fixed-sync-voltage 11.regulator: Consumer c1 does not have device name
[    0.602997] reg-aon-1v2: 1200 mV 
[    0.605992] as3722-adc-extcon as3722-adc-extcon.2: USB-Host is disconnected
[    0.608874] tegra: failed to map regulator to power detect cell pwrdet_cam(-517)
[    0.608968] tegra: failed to map regulator to power detect cell pwrdet_sdmmc1(-517)
[    0.608987] tegra: failed to map regulator to power detect cell pwrdet_sdmmc3(-517)
[    0.609004] tegra: failed to map regulator to power detect cell pwrdet_sdmmc4(-517)
[    0.609086] tegra: failed regulators mapping - io power detection is left always on
[    0.609103] Switching to clocksource arch_sys_counter
[    0.630203] nvmap_heap_init: nvmap_heap_init: created heap block cache
[    0.630379] nvmap_page_pool_init: Total MB RAM: 1892
[    0.630391] nvmap_page_pool_init: nvmap page pool size: 60544 pages (236 MB)
[    0.630535] nvmap_background_zero_thread: PP zeroing thread starting.
[    0.630707]  iram: dma coherent mem declare 0x40001000,258048
[    0.631547] misc nvmap: created heap iram base 0x40001000 size (252KiB)
[    0.631680] nvmap:inner cache maint threshold=2097152
[    0.640730] Wake39 for irq=52
[    0.640812] tegra-otg tegra-otg: otg transceiver registered
[    0.641140] NET: Registered protocol family 2
[    0.641801] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[    0.641989] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.642186] TCP: Hash tables configured (established 8192 bind 8192)
[    0.642235] TCP: reno registered
[    0.642251] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.642293] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.642589] NET: Registered protocol family 1
[    0.642957] RPC: Registered named UNIX socket transport module.
[    0.642970] RPC: Registered udp transport module.
[    0.642979] RPC: Registered tcp transport module.
[    0.642988] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.643277] tegra-fuse tegra-fuse: Fuse driver initialized succesfully
[    0.648589] host1x host1x: initialized
[    0.649833] CPU PMU: probing PMU on CPU 0
[    0.649857] hw perfevents: enabled with ARMv7 Cortex-A15 PMU driver, 7 counters available
[    0.650455] tegra_throttle : init passed
[    0.650554] Tegra cpuquiet initialized: disabled
[    0.650682] cpu-tegra: init EDP limit: 2065 MHz
[    0.651623] thermal thermal_zone0: Registering thermal zone thermal_zone0 for type CPU-therm
[    0.651968] thermal thermal_zone1: Registering thermal zone thermal_zone1 for type GPU-therm
[    0.652196] thermal thermal_zone2: Registering thermal zone thermal_zone2 for type MEM-therm
[    0.652403] thermal thermal_zone3: Registering thermal zone thermal_zone3 for type PLL-therm
[    0.653861] bounce pool size: 64 pages
[    0.655308] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    0.655591] NTFS driver 2.1.30 [Flags: R/O].
[    0.655722] fuse init (API version 7.22)
[    0.655945] msgmni has been set to 1458
[    0.657281] io scheduler noop registered (default)
[    0.858619] PCIE: port 0: link down, retrying
[    1.058740] PCIE: port 0: link down, retrying
[    1.258860] PCIE: port 0: link down, retrying
[    1.258871] PCIE: port 0: link down, ignoring
[    1.273023] PCI host bridge to bus 0000:00
[    1.273042] pci_bus 0000:00: root bus resource [mem 0x32100000-0x3fffffff]
[    1.273057] pci_bus 0000:00: root bus resource [mem 0x12100000-0x320fffff pref]
[    1.273071] pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
[    1.273084] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    1.273449] PCI: bus0: Fast back to back transfers disabled
[    1.273465] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.275205] PCI: bus1: Fast back to back transfers disabled
[    1.275523] pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt
[    1.275538] pci 0000:01:00.0: Signaling PME through PCIe PME interrupt
[    1.275764] pcieport 0000:00:00.0: BAR 8: assigned [mem 0x32100000-0x321fffff]
[    1.275780] pcieport 0000:00:00.0: BAR 7: assigned [io  0x1000-0x1fff]
[    1.275797] pci 0000:01:00.0: BAR 0: assigned [mem 0x32100000-0x32103fff 64bit]
[    1.275827] pci 0000:01:00.0: BAR 2: assigned [io  0x1000-0x10ff]
[    1.275845] pcieport 0000:00:00.0: PCI bridge to [bus 01]
[    1.275860] pcieport 0000:00:00.0:   bridge window [io  0x1000-0x1fff]
[    1.275875] pcieport 0000:00:00.0:   bridge window [mem 0x32100000-0x321fffff]
[    1.275901] PCIE: No Link speed change happened
[    1.276449] pwm-backlight pwm-backlight: unable to request PWM, trying legacy API
[    1.276544] sysedp_create_consumer: unable to create pwm-backlight, no consumer_data for pwm-backlight found
[    1.277399] tsec tsec: initialized
[    1.278833] isp isp.0: initialized
[    1.279790] isp isp.1: initialized
[    1.281312] falcon vic03.0: initialized
[    1.282472] falcon msenc: initialized
[    1.283465] tegradc tegradc.0: DSI: HS clock rate is 407500
[    1.284455] tegradc tegradc.0: DSI: initializing panel p_wuxga_10_1
[    1.284777] p,wuxga-10-1 panel dt support not available
[    1.387091] tegradc tegradc.0: nominal-pclk:432000000 parent:432000000 div:1.0 pclk:432000000 427680000~470880000 type:2
[    1.476325] tegradc tegradc.0: DSI pad calibration done
[    1.480280] tegradc tegradc.0: DSI: Enabling...
[    2.086185] tegradc tegradc.0: DSI: Enabled
[    2.089398] tegradc tegradc.0: dc.c probed
[    2.090129] tegradc tegradc.0: nominal-pclk:135666000 parent:406500000 div:3.0 pclk:135500000 134309340~147875940 type:2
[    2.111458] Console: switching to colour frame buffer device 240x67
[    2.131637] tegradc tegradc.0: fb registered
[    2.137446] gpio wake4 for gpio=111
[    2.165347] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[    2.166631] tegradc tegradc.1: dc.c probed
[    2.168014] tegradc tegradc.1: fb registered
[    2.168054] hdmi_state_machine_worker (tid edaf5580): state 7 (Takeover from bootloader), hpd 1, pending_hpd_evt 1
[    2.168068] hdmi_state_machine_set_state_l: switching from state 7 (Takeover from bootloader) to state 1 (Check Plug)
[    2.171056] tegra-apbdma tegra-apbdma: Tegra20 APB DMA driver register 32 channels
[    2.171745] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    2.172958] serial8250.0: ttyS0 at MMIO 0x70006300 (irq = 122) is a Tegra
[    2.213481] hdmi_state_machine_worker (tid edaf5580): state 1 (Check Plug), hpd 1, pending_hpd_evt 0
[    2.213487] hdmi_state_machine_set_state_l: switching from state 1 (Check Plug) to state 2 (Check EDID)
[    2.285015] hdmi_state_machine_worker (tid edaf5580): state 2 (Check EDID), hpd 1, pending_hpd_evt 0
[    2.334164] panel size 51 by 29
[    2.694843] tegra_dc_hdmi_irq: start
[    2.694853] tegra_dc_hdmi_irq: end
[    3.192198] tegra_dc_hdmi_irq: start
[    3.192209] tegra_dc_hdmi_irq: end
[    4.417314] console [ttyS0] enabled
[    4.417840] serial-tegra.0: ttyTHS0 at MMIO 0x70006000 (irq = 68) is a SERIAL_TEGRA
[    4.418114] serial-tegra.1: ttyTHS1 at MMIO 0x70006040 (irq = 69) is a SERIAL_TEGRA
[    4.418398] serial-tegra.2: ttyTHS2 at MMIO 0x70006200 (irq = 78) is a SERIAL_TEGRA
[    4.423696] loop: module loaded
[    4.423987] nct1008_nct72 0-004c: success in enabling rail vdd_nct72
[    4.428534] tegra-i2c tegra12-i2c.0: no acknowledge from address 0x4c
[    4.428642] nct1008_nct72 0-004c: nct1008_read_reg: err -121
[    4.428647] NCT72: ERR: remote sensor circuit is open (0xffffff87)
[    4.436194] tegra-i2c tegra12-i2c.0: no acknowledge from address 0x4c
[    4.436295] nct1008_nct72 0-004c: nct1008_write_reg: err -121
[    4.436302] nct1008_nct72 0-004c: 
[    4.436302]  exit nct1008_configure_sensor, err=-121 
[    4.436310] nct1008_nct72 0-004c: 
[    4.436310]  error file: drivers/misc/nct1008.c : nct1008_probe(), line=1453 
[    4.436316] nct1008_nct72 0-004c: 
[    4.436316]  exit nct1008_probe, err=-121 
[    4.436324] nct1008_nct72 0-004c: success in disabling rail vdd_nct72
[    4.436394] nct1008_nct72: probe of 0-004c failed with error -121
[    4.436956] tegra_profiler: Branch: Dev
[    4.436958] tegra_profiler: Version: 1.103
[    4.436962] tegra_profiler: Samples version: 34
[    4.436965] tegra_profiler: IO version: 18
[    4.436971] armv7_pmu: arch: Cortex A15, type: 4, ver: 0
[    4.437122] tegra_profiler: auth: init
[    4.437475] GPS: mt3332_gps_mod_init: platform_driver_register ret = 0
[    4.444743] tegra-sata tegra-sata.0: AHCI 0001.0301 32 slots 2 ports 3 Gbps 0x1 impl TEGRA-SATA mode
[    4.444755] tegra-sata tegra-sata.0: flags: 64bit ncq sntf pm led pmp pio slum part sadm apst 
[    4.445879] scsi0 : tegra-sata
[    4.447344] scsi1 : tegra-sata
[    4.447554] ata1: SATA max UDMA/133 irq 55
[    4.447558] ata2: DUMMY
[    4.449653] tun: Universal TUN/TAP device driver, 1.6
[    4.449656] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    4.449808] sky2: driver version 1.30
[    4.449900] sky2 0000:01:00.0: Yukon-2 Optima chip revision 1
[    4.449969] sky2 0000:01:00.0 (unregistered net_device): Invalid MAC address, defaulting to random
[    4.453895] sky2 0000:01:00.0 eth0: addr 3a:7d:82:01:ab:dc
[    4.454071] usbcore: registered new interface driver asix
[    4.454113] usbcore: registered new interface driver ax88179_178a
[    4.454193] usbcore: registered new interface driver cdc_ether
[    4.454244] usbcore: registered new interface driver smsc95xx
[    4.454281] usbcore: registered new interface driver cdc_subset
[    4.454348] usbcore: registered new interface driver cdc_ncm
[    4.454364] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    4.454566] tegra USB phy - inst[1] platform info:
[    4.454570] port_otg: no
[    4.454572] has_hostpc: yes
[    4.454575] phy_interface: USB_PHY_INTF_UTMI
[    4.454578] op_mode: TEGRA_USB_OPMODE_HOST
[    4.454580] qc2_voltage: 0
[    4.454583] vbus_gpio: -1
[    4.454586] hot_plug: disabled
[    4.454589] remote_wakeup: enabled
[    4.454884] usb_phy: can't enable usb gpio: -1
[    4.456087] tegra-ehci tegra-ehci.1: Tegra EHCI Host Controller
[    4.456118] tegra-ehci tegra-ehci.1: new USB bus registered, assigned bus number 1
[    4.456231] Wake40 for irq=53
[    4.456234] Wake42 for irq=53
[    4.456255] tegra-ehci tegra-ehci.1: irq 53, io mem 0x7d004000
[    4.461187] tegra-ehci tegra-ehci.1: USB 2.0 started, EHCI 1.10
[    4.461281] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    4.461289] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    4.461295] usb usb1: Product: Tegra EHCI Host Controller
[    4.461301] usb usb1: Manufacturer: Linux 3.10.40+ ehci_hcd
[    4.461306] usb usb1: SerialNumber: tegra-ehci.1
[    4.461792] hub 1-0:1.0: USB hub found
[    4.461811] hub 1-0:1.0: 1 port detected
[    4.462141] tegra USB phy - inst[2] platform info:
[    4.462166] port_otg: no
[    4.462169] has_hostpc: yes
[    4.462172] phy_interface: USB_PHY_INTF_UTMI
[    4.462174] op_mode: TEGRA_USB_OPMODE_HOST
[    4.462176] qc2_voltage: 0
[    4.462179] vbus_gpio: -1
[    4.462181] hot_plug: disabled
[    4.462184] remote_wakeup: enabled
[    4.462457] usb_phy: can't enable usb gpio: -1
[    4.463635] tegra-ehci tegra-ehci.2: Tegra EHCI Host Controller
[    4.463659] tegra-ehci tegra-ehci.2: new USB bus registered, assigned bus number 2
[    4.463772] Wake41 for irq=129
[    4.463775] Wake43 for irq=129
[    4.463795] tegra-ehci tegra-ehci.2: irq 129, io mem 0x7d008000
[    4.472192] tegra-ehci tegra-ehci.2: USB 2.0 started, EHCI 1.10
[    4.472270] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    4.472278] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    4.472284] usb usb2: Product: Tegra EHCI Host Controller
[    4.472289] usb usb2: Manufacturer: Linux 3.10.40+ ehci_hcd
[    4.472294] usb usb2: SerialNumber: tegra-ehci.2
[    4.472745] hub 2-0:1.0: USB hub found
[    4.472762] hub 2-0:1.0: 1 port detected
[    4.473120] ehci-pci: EHCI PCI platform driver
[    4.473411] tegra_xusb_read_usb_calib: usb_calib0 = 0x0285838a
[    4.473651] usbcore: registered new interface driver usb-storage
[    4.473750] usbcore: registered new interface driver usbserial
[    4.473788] usbcore: registered new interface driver option
[    4.473820] usbserial: USB Serial support registered for GSM modem (1-port)
[    4.473924] usbcore: registered new interface driver pl2303
[    4.473953] usbserial: USB Serial support registered for pl2303
[    4.473967] Nvidia Tegra High-Speed USB Device Controller driver (Apr 30, 2012)
[    4.474117] tegra USB phy - inst[0] platform info:
[    4.474119] port_otg: yes
[    4.474121] has_hostpc: yes
[    4.474124] phy_interface: USB_PHY_INTF_UTMI
[    4.474127] op_mode: TEGRA_USB_OPMODE_DEVICE
[    4.474129] qc2_voltage: 0
[    4.474131] vbus_pmu_irq: 0
[    4.474133] vbus_gpio: -1
[    4.474135] charging: enabled
[    4.474138] remote_wakeup: disabled
[    4.476959] tegra-udc tegra-udc.0: usb_bat_chg regulator not registered: USB charging will not be enabled
[    4.517058] as3722-rtc as3722-rtc.1: rtc core: registered as3722 as rtc0
[    4.517065] as3722-rtc as3722-rtc.1: RTC interrupt 449
[    4.573840] i2c /dev entries driver
[    4.574852] virtual_init
[    4.576923] nvavp nvavp: allocated IOVA at 8ff00000 for AVP os
[    4.577672] tegra_dtv_probe: probing dtv.
[    4.577981] setup_stream: bufsize = 4096, bufnum = 4
[    4.577982] ar0832_init: ++
[    4.578351] i2c-core: driver [max77387] using legacy suspend method
[    4.578354] i2c-core: driver [max77387] using legacy resume method
[    4.578402] i2c-core: driver [as364x] using legacy suspend method
[    4.578405] i2c-core: driver [as364x] using legacy resume method
[    4.578551] [IMX135] sensor driver loading
[    4.578596] [IMX179] sensor driver loading
[    4.578646] [IMX185] sensor driver loading
[    4.578694] [imx132] sensor driver loading
[    4.578740] [AR0330] sensor driver loading
[    4.578785] [ar0261] sensor driver loading
[    4.578831] [AR1335] sensor driver loading
[    4.578878] [ov4689] sensor driver loading
[    4.579128] usbcore: registered new interface driver uvcvideo
[    4.579131] USB Video Class driver (1.1.1)
[    4.579994] zram: Created 1 device(s) ...
[    4.581186] tegra_wdt tegra_wdt.0: last reset is due to software reset
[    4.581317] tegra_wdt_probe done
[    4.581625] sdhci: Secure Digital Host Controller Interface driver
[    4.581627] sdhci: Copyright(c) Pierre Ossman
[    4.581630] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.581916] sdhci-tegra sdhci-tegra.3: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    4.581937] sdhci-tegra sdhci-tegra.3: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    4.582098] sdhci-tegra sdhci-tegra.3: Speedo value 2259
[    4.582106] sdhci-tegra sdhci-tegra.3: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    4.625187] otg state changed: SUSPEND --> PERIPHERAL
[    4.758203] ata1: SATA link down (SStatus 0 SControl 300)
[    4.764282] usb 1-1: new high-speed USB device number 2 using tegra-ehci
[    4.792247] usb 1-1: New USB device found, idVendor=0424, idProduct=2517
[    4.792255] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    4.795822] hub 1-1:1.0: USB hub found
[    4.800178] hub 1-1:1.0: 7 ports detected
[    4.960206] usb 2-1: new high-speed USB device number 2 using tegra-ehci
[    5.027006] usb 2-1: New USB device found, idVendor=0424, idProduct=2137
[    5.027013] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    5.027019] usb 2-1: Product: USB2137B
[    5.027025] usb 2-1: Manufacturer: SMSC
[    5.035687] hub 2-1:1.0: USB hub found
[    5.039898] hub 2-1:1.0: 7 ports detected
[    5.211836] handle_check_edid_l: audio_switch 1
[    5.216438] Display connected, hpd_switch 1
[    5.220683] handle_check_edid_l: setting audio and infoframes
[    5.226484] hdmi_state_machine_set_state_l: switching from state 2 (Check EDID) to state 4 (Enabled)
[    5.235652] hdmi_state_machine_worker (tid edaf5580): state 4 (Enabled), hpd 1, pending_hpd_evt 1
[    5.244523] hdmi_state_machine_handle_hpd_l: ignoring bouncing hpd
[    5.251110] mmc0: no vqmmc regulator found
[    5.255236] mmc0: no vmmc regulator found
[    5.259258] mmc0: Invalid maximum block size, assuming 512 bytes
[    5.265291] sysedp_create_consumer: unable to create sdhci-tegra.3, no consumer_data for sdhci-tegra.3 found
[    5.299189] mmc0: SDHCI controller on sdhci-tegra.3 [sdhci-tegra.3] using ADMA
[    5.306824] sdhci-tegra sdhci-tegra.0: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    5.317193] sdhci-tegra sdhci-tegra.0: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    5.328238] sdhci-tegra sdhci-tegra.0: Speedo value 2259
[    5.333613] sdhci-tegra sdhci-tegra.0: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    5.343101] mmc1: no vqmmc regulator found
[    5.347224] mmc1: no vmmc regulator found
[    5.351243] mmc1: Invalid maximum block size, assuming 512 bytes
[    5.357272] sysedp_create_consumer: unable to create sdhci-tegra.0, no consumer_data for sdhci-tegra.0 found[    5.371410] mmc0: BKOPS_EN bit is not set
[    5.380751] sdhci-tegra sdhci-tegra.3: Found T2T coeffs data
[    5.386467] sdhci-tegra sdhci-tegra.3: 200MHz tap hole coeffs found
[    5.391189] mmc1: SDHCI controller on sdhci-tegra.0 [sdhci-tegra.0] using ADMA
[    5.394840] tegra-se tegra12-se: tegra_se_probe: complete
[    5.397414] usbcore: registered new interface driver usbhid
[    5.397416] usbhid: USB HID core driver
[    5.397850] tegra-hier-ictlr tegra-hier-ictlr: probed

[    5.425191] usb 2-1.1: new low-speed USB device number 3 using tegra-ehci
[    5.448457] usb 2-1.1: New USB device found, idVendor=17ef, idProduct=6019
[    5.455344] usb 2-1.1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[    5.462657] usb 2-1.1: Product: Lenovo Optical USB Mouse
[    5.472260] input: Lenovo Optical USB Mouse as /devices/platform/tegra-ehci.2/usb2/2-1/2-1.1/2-1.1:1.0/input/input0
[    5.482941] hid-generic 0003:17EF:6019.0001: input: USB HID v1.11 Mouse [Lenovo Optical USB Mouse] on usb-tegra-ehci.2-1.1/input0
[    5.801785] usbcore: registered new interface driver snd-usb-audio
[    5.808514] MAX98090 driver built on Aug 12 2016 at 11:24:59
[    5.814822] tegra_offload_platform probe successfull.
[    5.822615] succefully registered offload opstegra30_avp_audio_platform_probe successful.[    5.967436] **********Auto tuning windows*************
[    5.967439] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    5.967445] win[0]: 0(0) - 61(1)
[    5.967450] win[1]: 67(0) - 131(1)
[    5.967459] win[2]: 137(0) - 199(1)
[    5.967463] win[3]: 205(0) - 255(1)
[    5.967466] ***************************************
[    5.967496] ********tuning windows after inserting holes*****
[    5.967498] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    5.967502] win[0]:-2(0) - 31(2)
[    5.967506] win[1]:33(2) - 61(1)
[    5.967510] win[2]:67(0) - 100(2)
[    5.967513] win[3]:102(2) - 131(1)
[    5.967517] win[4]:137(0) - 169(2)
[    5.967520] win[5]:171(2) - 199(1)
[    5.967523] win[6]:205(0) - 238(2)
[    5.967527] win[7]:240(2) - 255(1)
[    5.967529] ***********************************************
[    5.967533] **********Tuning values*********
[    5.967536] **estimated values**
[    5.967540] T2T_Vmax 57, T2T_Vmin 79, 1'st_hole_Vmax 47, UI_Vmax 87
[    5.967542] **Calculated values**
[    5.967546] T2T_Vmax 72, 1'st_hole_Vmax 32, UI_Vmax 69
[    5.967549] T2T_Vmin 72, 1'st_hole_Vmin 32, UI_Vmin 69
[    5.967552] ***********************************
[    5.967558] ***********final tuning windows**********
[    5.967561] win[0]: 11 - 24
[    5.967564] win[1]: 41 - 48
[    5.967567] win[2]: 80 - 88
[    5.967570] win[3]: 115 - 118
[    5.967574] win[4]: 150 - 153
[    5.967577] win[5]: 188 - 186
[    5.967580] win[6]: 218 - 217
[    5.967582] win[7]: 255 - 242
[    5.967585] ********************************
[    5.967589] best tap win - (11-24), best tap value 18 prev_best_tap 0
[    6.081668] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    6.081708] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    6.082049] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    6.082818] oprofile: using timer interrupt.
[    6.085604] GACT probability NOT on
[    6.085612] Mirror/redirect action on
[    6.085617] u32 classifier
[    6.085620]     Actions configured
[    6.085626] Netfilter messages via NETLINK v0.30.
[    6.085689] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[    6.091854] NF_TPROXY: Transparent proxy support initialized, version 4.1.0
[    6.091857] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
[    6.094689] xt_time: kernel timezone is -0000
[    6.094988] ip_tables: (C) 2000-2006 Netfilter Core Team
[    6.095160] arp_tables: (C) 2002 David S. Miller
[    6.095201] TCP: cubic registered
[    6.135174] NET: Registered protocol family 10
[    6.146627] mip6: Mobile IPv6
[    6.146665] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    6.146810] sit: IPv6 over IPv4 tunneling driver
[    6.147750] NET: Registered protocol family 17
[    6.147780] NET: Registered protocol family 15
[    6.147868] NET: Registered protocol family 35
[    6.152784] NET: Registered protocol family 37
[    6.152789] NET: Registered protocol family 41
[    6.170524] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[    6.198615] Registering SWP/SWPB emulation handler
[    6.198621] last reset is due to software reset
[    6.198621] 
[    6.198637] Disabling clocks left on by bootloader:
[    6.198640]    audio_2x
[    6.198651]    audio
[    6.198654]    audio4
[    6.198658]    audio3
[    6.198661]    audio2
[    6.198664]    audio1
[    6.198668]    audio0
[    6.198763]    hdmi_audio
[    6.198769]    entropy
[    6.198782]    dsi2-fixed
[    6.198784]    dsi1-fixed
[    6.198806]    nor
[    6.198812]    trace
[    6.198823]    sdmmc4_ddr
[    6.198828]    sdmmc1_ddr
[    6.198833]    sdmmc2
[    6.198880]    cclk_lp
[    6.198889]    pll_x_out0
[    6.198906]    pll_m_out1
[    6.199023] tegra_dvfs: vdd_cpu connected to regulator
[    6.199082] tegra_dvfs: vdd_core connected to regulator
[    6.199135] tegra_dvfs: vdd_gpu connected to regulator
[    6.207824] cpu_cold cooling device is registered
[    6.207949] cpu_hot cooling device is registered
[    6.208165] Tegra CPU DFLL is initialized with use_dfll = 1
[    6.208224] CPU rate: 696 MHz

[    6.370371] tegra dvfs: tegra sysfs cap interface is initialized
[    6.376464] tegra dvfs: tegra sysfs gpu & emc interface is initialized
[    6.383652] tegra_actmon.emc: Completed initialization (0)
[    6.389337] tegra_actmon.avp: Completed initialization (0)
[    6.394951] tegra_mon.cpu_emc: Completed initialization (0)
[    6.402977] reg-aon-1v2: incomplete constraints, leaving on
[    6.408593] reg-aon-1v8: incomplete constraints, leaving on
[    6.414167] vdd-cdc-1v2-aud: incomplete constraints, leaving on
[    6.420123] reg-dcdc-1v2: incomplete constraints, leaving on
[    6.425890] reg-5v0-supply: incomplete constraints, leaving on
[    6.431761] usb1-usb2-vbus: incomplete constraints, leaving on
[    6.437594] usb0-vbus: incomplete constraints, leaving on
[    6.443031] vpp-fuse: incomplete constraints, leaving on
[    6.448345] as3722-ldo10: incomplete constraints, leaving on
[    6.454038] as3722-ldo9: incomplete constraints, leaving on
[    6.459612] as3722-ldo7: incomplete constraints, leaving on
[    6.465187] as3722-ldo6: incomplete constraints, leaving on
[    6.470901] as3722-ldo5: incomplete constraints, leaving on
[    6.476475] vin-ldo3-4: incomplete constraints, leaving on
[    6.481998] as3722-ldo1: incomplete constraints, leaving on
[    6.487574] as3722-sd3: incomplete constraints, leaving on
[    6.493094] reg-3v3-supply: incomplete constraints, leaving on
[    6.498928] vdd-3v3-aon: incomplete constraints, leaving on
[    6.504533] vdd-ac-bat: incomplete constraints, leaving on
[    6.510020] regulator-dummy: incomplete constraints, leaving on
[    6.519302] **********Auto tuning windows*************
[    6.524555] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    6.530047] win[0]: 0(0) - 61(1)
[    6.533281] win[1]: 68(0) - 164(1)
[    6.536731] win[2]: 171(0) - 251(1)
[    6.540224] ***************************************
[    6.545108] ********tuning windows after inserting holes*****
[    6.550887] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    6.556385] win[0]:-35(0) - 56(2)
[    6.559708] win[1]:58(2) - 61(1)
[    6.562942] win[2]:68(0) - 159(2)
[    6.566262] win[3]:161(2) - 164(1)
[    6.569668] win[4]:171(0) - 251(1)
[    6.573072] ***********************************************
[    6.578645] **********Tuning values*********
[    6.582915] **estimated values**
[    6.586154] T2T_Vmax 57, T2T_Vmin 79, 1'st_hole_Vmax 47, UI_Vmax 87
[    6.592418] **Calculated values**
[    6.595736] T2T_Vmax 48, 1'st_hole_Vmax 57, UI_Vmax 103
[    6.600961] T2T_Vmin 48, 1'st_hole_Vmin 57, UI_Vmin 104
[    6.606185] ***********************************
[    6.610718] ***********final tuning windows**********
[    6.615777] win[0]: -15 - 45
[    6.618663] win[1]: 70 - 41
[    6.621461] win[2]: 88 - 141
[    6.624345] win[3]: 181 - 144
[    6.627317] win[4]: 191 - 231
[    6.630286] ********************************
[    6.634560] best tap win - (-15-45), best tap value 15 prev_best_tap 18
[    6.641178] sdhci-tegra sdhci-tegra.3: sdhci_tegra_verify_best_tap: tuning freq 200000000hz, best tap 15
[    6.652938] mmc0: new HS200 MMC card at address 0001
[    6.658104] mmcblk mmc0:0001: Card claimed for testing.
[    6.663497] mmcblk0: mmc0:0001 SEM16G 14.6 GiB 
[    6.668181] mmcblk0boot0: mmc0:0001 SEM16G partition 1 4.00 MiB
[    6.674364] mmcblk0boot1: mmc0:0001 SEM16G partition 2 4.00 MiB
[    6.680487] mmcblk0rpmb: mmc0:0001 SEM16G partition 3 4.00 MiB
[    6.688640]  mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9
[    6.696056]  mmcblk0boot1: unknown partition table
[    6.702022]  mmcblk0boot0: unknown partition table
[    6.766856] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    6.775287] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    6.783503] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    6.792254] gpio wake51 for gpio=128
[    6.796102] input: gpio-keys.4 as /devices/platform/gpio-keys.4/input/input1
[    6.803911] as3722-rtc as3722-rtc.1: setting system clock to 2000-01-01 00:13:01 UTC (946685581)
[    6.813454] ALSA device list:
[    6.816516]   #0: HDA NVIDIA Tegra at 0x70038000 irq 113
[    7.055027] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    7.063263] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    7.071230] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    7.080250] EXT4-fs (mmcblk0p4): couldn't mount as ext3 due to feature incompatibilities
[    7.088863] EXT4-fs (mmcblk0p4): couldn't mount as ext2 due to feature incompatibilities
[    7.102449] EXT4-fs (mmcblk0p4): mounted filesystem with ordered data mode. Opts: (null)
[    7.110603] VFS: Mounted root (ext4 filesystem) on device 179:4.
[    7.119206] devtmpfs: mounted
[    7.122462] Freeing unused kernel memory: 508K (c0b19000 - c0b98000)
[    7.195283] systemd[1]: Failed to insert module 'autofs4'
[    7.211430] systemd[1]: systemd 219 running in system mode. (-PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT +GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    7.229688] systemd[1]: Detected architecture arm.

Welcome to hd271 distribution 1.0.0 (hd271)!

[    7.241838] systemd[1]: Set hostname to <mghd271-tk1>.
[    7.251497] systemd[1]: Initializing machine ID from random generator.
[    7.406583] systemd[1]: Cannot add dependency job for unit org.freedesktop.resolve1.busname, ignoring: Unit org.freedesktop.resolve1.busname failed to load: No such file or directory.
[  OK  ] Reached target Remote File Systems.
[    7.431315] systemd[1]: Reached target Remote File Systems.
[    7.436956] systemd[1]: Starting Remote File Systems.
[  OK  ] Reached target Swap.
[    7.446246] systemd[1]: Reached target Swap.
[    7.450614] systemd[1]: Starting Swap.
[    7.454635] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    7.462651] systemd[1]: Starting Dispatch Password Requests to Console Directory Watch.
[  OK  ] Created slice Root Slice.
[    7.475261] systemd[1]: Created slice Root Slice.
[    7.480026] systemd[1]: Starting Root Slice.
[  OK  ] Listening on Journal Socket (/dev/log).
[    7.491251] systemd[1]: Listening on Journal Socket (/dev/log).
[    7.497280] systemd[1]: Starting Journal Socket (/dev/log).
[  OK  ] Created slice User and Session Slice.
[    7.510256] systemd[1]: Created slice User and Session Slice.
[    7.516071] systemd[1]: Starting User and Session Slice.
[  OK  ] Listening on Journal Socket.
[    7.526246] systemd[1]: Listening on Journal Socket.
[    7.531279] systemd[1]: Starting Journal Socket.
[  OK  ] Listening on /dev/initctl Compatibility Named Pipe.
[    7.543260] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    7.550336] systemd[1]: Starting /dev/initctl Compatibility Named Pipe.
[  OK  ] Listening on networkd rtnetlink socket.
[    7.563255] systemd[1]: Listening on networkd rtnetlink socket.
[    7.569272] systemd[1]: Starting networkd rtnetlink socket.
[  OK  ] Listening on Syslog Socket.
[    7.580257] systemd[1]: Listening on Syslog Socket.
[    7.585202] systemd[1]: Starting Syslog Socket.
[  OK  ] Listening on Delayed Shutdown Socket.
[    7.595252] systemd[1]: Listening on Delayed Shutdown Socket.
[    7.601056] systemd[1]: Starting Delayed Shutdown Socket.
[  OK  ] Listening on udev Kernel Socket.
[    7.612265] systemd[1]: Listening on udev Kernel Socket.
[    7.617688] systemd[1]: Starting udev Kernel Socket.
[    7.629042] systemd[1]: Listening on Journal Audit Socket.
[  OK  ] Listening on udev Control Socket.
[    7.640256] systemd[1]: Listening on udev Control Socket.
[    7.645721] systemd[1]: Starting udev Control Socket.
[    7.651377] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    7.659038] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[  OK  ] Reached target Paths.
[    7.671260] systemd[1]: Reached target Paths.
[    7.675698] systemd[1]: Starting Paths.
[  OK  ] Created slice System Slice.
[    7.685278] systemd[1]: Created slice System Slice.
[    7.690261] systemd[1]: Starting System Slice.
[  OK  ] Created slice system-serial\x2dgetty.slice.
[    7.701255] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    7.707616] systemd[1]: Starting system-serial\x2dgetty.slice.
[    7.715518] systemd[1]: Starting Journal Service...
         Starting Journal Service...
[    7.726895] systemd[1]: Mounting Debug File System...
         Mounting Debug File System...
[    7.740625] systemd[1]: Starting Create list of required static device nodes for the current kernel...
         Starting Create list of required st... nodes for the current kernel...
[  OK  ] Created slice system-getty.slice.
[    7.764309] systemd[1]: Created slice system-getty.slice.
[    7.769940] systemd[1]: Starting system-getty.slice.
[  OK  ] Reached target Slices.
[    7.779308] systemd[1]: Reached target Slices.
[    7.783876] systemd[1]: Starting Slices.
[    7.789944] systemd[1]: Started Load Kernel Modules.
[    7.796985] systemd[1]: Mounting FUSE Control File System...
         Mounting FUSE Control File System...
[    7.810752] systemd[1]: Starting Apply Kernel Variables...
         Starting Apply Kernel Variables...
[    7.822608] systemd[1]: Mounted Configuration File System.
[    7.828289] systemd[1]: Mounted POSIX Message Queue File System.
[    7.834420] systemd[1]: Started File System Check on Root Device.
[    7.842711] systemd[1]: Starting Remount Root and Kernel File Systems...
         Starting Remount Root and Kernel File Systems...
[    7.859603] systemd[1]: Mounting Temporary Directory...
         Mounting Temporary Directory...
[    7.872744] systemd[1]: Starting udev Coldplug all Devices...
         Starting udev Coldplug all Devices...
[    7.886285] systemd[1]: Starting Setup Virtual Console...
         Starting Setup Virtual Console...
[    7.896623] systemd[1]: Mounted Huge Pages File System.
[  OK  ] Mounted Debug File System.
[    7.909384] systemd[1]: Mounted Debug File System.
[    7.912426] EXT4-fs (mmcblk0p4): re-mounted. Opts: (null)
[  OK  ] Mounted FUSE Control File System.
[    7.927378] systemd[1]: Mounted FUSE Control File System.
[  OK  ] Mounted Temporary Directory.
[    7.940311] systemd[1]: Mounted Temporary Directory.
[  OK  ] Started Create list of required sta...ce nodes for the current kernel.
[    7.956301] systemd[1]: Started Create list of required static device nodes for the current kernel.
[  OK  ] Started Apply Kernel Variables.
[    7.972380] systemd[1]: Started Apply Kernel Variables.
[  OK  ] Started Remount Root and Kernel File Systems.
[    7.985324] systemd[1]: Started Remount Root and Kernel File Systems.
[  OK  ] Started Setup Virtual Console.
[    8.000437] systemd[1]: Started Setup Virtual Console.
[  OK  ] Started Journal Service.
[    8.014341] systemd[1]: Started Journal Service.
[  OK  ] Started udev Coldplug all Devices.
         Starting Rebuild Dynamic Linker Cache...
         Starting Rebuild Hardware Database...
         Starting Flush Journal to Persistent Storage...
         Starting Create System Users...
[    8.191031] systemd-journald[127]: Received request to flush runtime journal from PID 1
[  OK  ] Started Flush Journal to Persistent Storage.
[  OK  ] Started Create System Users.
         Starting Create Static Device Nodes in /dev...
[  OK  ] Started Create Static Device Nodes in /dev.
[  OK  ] Reached target Local File Systems (Pre).
         Mounting /var/volatile...
         Mounting /media...
[  OK  ] Mounted /var/volatile.
[  OK  ] Mounted /media.
[  OK  ] Reached target Local File Systems.
         Starting Rebuild Journal Catalog...
         Starting Create Volatile Files and Directories...
         Starting Load/Save Random Seed...
[  OK  ] Started Rebuild Journal Catalog.
[ TIME ] Timed out waiting for device dev-mmcblk1p1.device.
[DEPEND] Dependency failed for /opt/midas/userdata.
[  OK  ] Started Create Volatile Files and Directories.
[  OK  ] Started Load/Save Random Seed.
         Starting Update UTMP about System Boot/Shutdown...
         Starting dpkg first boot configure...
         Starting Network Time Synchronization...
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Time Synchronized.
[  OK  ] Started Rebuild Dynamic Linker Cache.
[  OK  ] Started dpkg first boot configure.
[  OK  ] Started Rebuild Hardware Database.
         Starting Update is Completed...
         Starting udev Kernel Device Manager...
[  OK  ] Started Update is Completed.
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Reached target System Initialization.
[  OK  ] Listening on dropbear.socket.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Listening on RPCbind Server Activation Socket.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
[  OK  ] Started System Logging Service.
         Starting System Logging Service...
[  OK  ] Started Xserver startup without a display manager.
         Starting Xserver startup without a display manager...
         Starting Avahi mDNS/DNS-SD Stack...
         Starting Setup TK1 for max performance via sysfs...
         Starting Permit User Sessions...
[  OK  ] Started Kernel Logging Service.
         Starting Kernel Logging Service...
         Starting Login Service...
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
         Starting D-Bus System Message Bus...
         Starting Network Service...
[  OK  ] Reached target Timers.
[  OK  ] Started Setup TK1 for max performance via sysfs.
[  OK  ] Started Permit User Sessions.
[  OK  ] Found device /dev/ttyS0.
[   10.078190] systemd[1]: Cannot add dependency job for unit org.freedesktop.resolve1.busname, ignoring: Unit org.freedesktop.resolve1.busname failed to load: No such file or directory.
[  OK  ] Started Login Service.
         Starting Setup TK1 for max performance via sysfs...
[  OK  ] Stopped Setup TK1 for HDMI 1080p.
[  OK  ] Reached target Sound Card.
[  OK  ] Created slice system-systemd\x2dbacklight.slice.
         Starting Load/Save Screen Backlight...ss of backlight:pw[   10.197008] sky2 0000:01:00.0 enp1s0: enabling interface
m-backlight...
[   10.205456] IPv6: ADDRCONF(NETDEV_UP): enp1s0: link is not ready
[  OK  ] Started Serial Getty on ttyS0.
         Starting Serial Getty on ttyS0...
[  OK  ] Started Getty on tty1.
         Starting Getty on tty1...
[  OK  ] Reached target Login Prompts.
[  OK  ] Started Network Service.
[  OK  ] Started Setup TK1 for max performance via sysfs.
[  OK  ] Started Load/Save Screen Backlight ...ness of backlight:pwm-backlight.
[  OK  ] Reached target Network.
         Starting Network Name Resolution...
[  OK  ] Started Network Name Resolution.
[  OK  ] Reached target Multi-User System.
[  OK  ] Reached target Graphical Interface.
         Starting Update UTMP about System Runlevel Changes...
         Starting Setup TK1 for HDMI 1080p...
[  OK  ] Started Update UTMP about System Runlevel Changes.
[   10.465367] tegradc tegradc.0: DSI: initializing panel p_wuxga_10_1
[   10.465448] p,wuxga-10-1 panel dt support not available
[   10.567649] tegradc tegradc.0: nominal-pclk:135666000 parent:406500000 div:3.0 pclk:135500000 134309340~147875940 type:2
[   10.657530] tegradc tegradc.0: DSI pad calibration done
[   10.747125] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   10.747297] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
[   11.073350] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   11.073675] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
[   11.187355] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   11.187678] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
[ TIME ] Timed out waiting for device dev-mmcblk1p1.device.
[DEPEND] Dependency failed for /opt/midas/userdata.
[  OK  ] Started Setup TK1 for HDMI 1080p.
[   11.287007] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   11.287051] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.

…continue from previous log as it didn’t fit in the code container:

test distribution 1.0.0 test ttyS0

test login: root

root@test:~# modprobe wlcore_sdio
root@test:~# modprobe wl12xx
[  550.772461] cfg80211: Calling CRDA to update world regulatory domain
root@mghd271-tk1:~# [  550.905653] Unable to handle kernel NULL pointer dereference at virtual address 0000000f
[  550.913742] pgd = c0004000
[  550.916492] [0000000f] *pgd=00000000
[  550.920072] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
[  550.925454] Modules linked in: wl12xx wlcore mac80211 cfg80211 rfkill
[  550.931918] CPU: 1 PID: 30 Comm: kworker/1:1 Not tainted 3.10.40+ #7
[  550.938260] Workqueue: events request_firmware_work_func
[  550.943562] task: edaf5080 ti: edb9e000 task.ti: edb9e000
[  550.948948] PC is at wl12xx_setup+0x320/0x35c [wl12xx]
[  550.954070] LR is at 0xec060360
[  550.957199] pc : [<bf135d28>]    lr : [<ec060360>]    psr: 60010113
[  550.957199] sp : edb9fe98  ip : bf13b310  fp : 00000000
[  550.968648] r10: 00000008  r9 : ffffffff  r8 : ec060340
[  550.973856] r7 : 00000000  r6 : bf13f850  r5 : 00000000  r4 : ec1a8e40
[  550.980365] r3 : 0000001b  r2 : 46010100  r1 : 00000000  r0 : 00000000
[  550.986874] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[  550.994162] Control: 10c5387d  Table: acb8006a  DAC: 00000015
[  550.999890] 
[  550.999890] LR: 0xec0602e0:
[  551.004145] 02e0  c139f1a0 c139f1c0 00000000 c1392000 c1392020 c1392040 00000000 00000000
[  551.012359] 0300  bf126000 bf135000 00000001 ec98abcc ec440f4c ec06044c ec440a98 ec060458
[  551.020571] 0320  ecb2ccc0 ed3f57c0 00000000 ed3f5640 ec6bf140 00000000 00000000 00000000
[  551.028783] 0340  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[  551.036994] 0360  0000001b 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.045206] 0380  7274732e 00626174 00000000 0000005f 00000004 00000003 0000000b 1174240f
[  551.053418] 03a0  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[  551.061628] 03c0  00000000 bf0fc000 0002a000 00000002 ed3902c0 00000029 00000000 c00c6054
[  551.069840] 
[  551.069840] SP: 0xedb9fe18:
[  551.074094] fe18  ec13a800 c01ab66c ed4a0708 00000000 ec13a7dc 00000000 ec13a7dc c01abaa4
[  551.082307] fe38  bf135d28 60010113 ffffffff edb9fe84 ec060340 c000eb58 00000000 00000000
[  551.090519] fe58  46010100 0000001b ec1a8e40 00000000 bf13f850 00000000 ec060340 ffffffff
[  551.098729] fe78  00000008 00000000 bf13b310 edb9fe98 ec060360 bf135d28 60010113 ffffffff
[  551.106940] fe98  bf135a08 ec1a8e40 edb137c0 00000000 c0c173b8 c0c16fa8 ffffffff c1dfde05
[  551.115152] feb8  edb9e008 bf103344 bf117cc4 c0d6ed30 c0ce469c ec060600 edb137c0 c0ce4638
[  551.123365] fed8  c1dfa040 c1dfde00 00000000 c1dfde05 edb9e008 c041c428 00000001 c00835e8
[  551.131576] fef8  ec060600 00000000 ec060600 c008360c 00000000 c008415c 00000003 00000000
[  551.139788] 
[  551.139788] R4: 0xec1a8dc0:
[  551.144042] 8dc0  ec1a8dc0 ec1a8dc0 ffffffe0 ec1a8dcc ec1a8dcc bf08e710 ffffffe0 ec1a8ddc[  551.151762] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[  551.151784] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[  551.151988] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral

[  551.176192] 8de0  ec1a8ddc bf08eea4 00000000 00000000 00000000 00000000 00000000 00000000
[  551.184404] 8e00  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.192614] 8e20  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.200826] 8e40  00000000 ec1a83e0 00000000 c0c173c8 c0c173b8 00000000 00000000 00000000
[  551.209037] 8e60  00000000 00000000 00000000 00000000 00000000 00000000 00000001 00000000
[  551.217247] 8e80  ec1a8e80 ec1a8e80 00000000 00000000 00000000 00000000 00000000 00000000
[  551.225458] 8ea0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.233668] 
[  551.233668] R8: 0xec0602c0:
[  551.237923] 02c0  f76a4000 f77ce000 00000001 ec06040c 00000000 00000000 ec51a598 ec060418
[  551.246134] 02e0  c139f1a0 c139f1c0 00000000 c1392000 c1392020 c1392040 00000000 00000000
[  551.254346] 0300  bf126000 bf135000 00000001 ec98abcc ec440f4c ec06044c ec440a98 ec060458
[  551.262557] 0320  ecb2ccc0 ed3f57c0 00000000 ed3f5640 ec6bf140 00000000 00000000 00000000
[  551.270770] 0340  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[  551.278980] 0360  0000001b 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.287192] 0380  7274732e 00626174 00000000 0000005f 00000004 00000003 0000000b 1174240f
[  551.295402] 03a0  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[  551.303613] Process kworker/1:1 (pid: 30, stack limit = 0xedb9e238)
[  551.309862] Stack: (0xedb9fe98 to 0xedba0000)
[  551.314204] fe80:                                                       bf135a08 ec1a8e40
[  551.322360] fea0: edb137c0 00000000 c0c173b8 c0c16fa8 ffffffff c1dfde05 edb9e008 bf103344
[  551.330516] fec0: bf117cc4 c0d6ed30 c0ce469c ec060600 edb137c0 c0ce4638 c1dfa040 c1dfde00
[  551.338671] fee0: 00000000 c1dfde05 edb9e008 c041c428 00000001 c00835e8 ec060600 00000000
[  551.346827] ff00: ec060600 c008360c 00000000 c008415c 00000003 00000000 edb9ff44 edb137c0
[  551.354982] ff20: c1dfa040 edb137d8 c1dfa054 edb9e000 c0ce4030 00000009 c1dfa040 c0084350
[  551.363138] ff40: edaf5080 edb9e000 ee291ea8 edb137c0 c008421c 00000000 00000000 00000000
[  551.371293] ff60: 00000000 c008a88c c0c73a30 00000000 ee0e4040 edb137c0 00000000 00000000
[  551.379449] ff80: edb9ff80 edb9ff80 00000000 00000000 edb9ff90 edb9ff90 ee291ea8 c008a7b8
[  551.387604] ffa0: 00000000 00000000 00000000 c000f098 00000000 00000000 00000000 00000000
[  551.395761] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  551.403916] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[  551.412084] [<bf135d28>] (wl12xx_setup+0x320/0x35c [wl12xx]) from [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore])
[  551.422414] [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore]) from [<c041c428>] (request_firmware_work_func+0x40/0x60)
[  551.433002] [<c041c428>] (request_firmware_work_func+0x40/0x60) from [<c008360c>] (process_one_work+0x114/0x440)
[  551.443155] [<c008360c>] (process_one_work+0x114/0x440) from [<c0084350>] (worker_thread+0x134/0x3bc)
[  551.452353] [<c0084350>] (worker_thread+0x134/0x3bc) from [<c008a88c>] (kthread+0xd4/0xd8)
[  551.460599] [<c008a88c>] (kthread+0xd4/0xd8) from [<c000f098>] (ret_from_fork+0x14/0x20)
[  551.468669] Code: 1a00000a e3a03003 e5883024 eaffff97 (e5993010) 
[  551.474790] ---[ end trace e78aacdda57ffdc2 ]---

Broadcast message from systemd-journald@mghd271-tk1 (Tue 2016-08-09 21:57:58 UTC):

[  551.484433] Unable to handle kernel paging request at virtual address ffffffec
kernel[211]: [  550.92007[2] I nte 551.494597] pgd = c0004000
rnal error: Oops[  551.500060] [ffffffec] *pgd=ae7f6821: 17 [#1] PREEMPT SMP AR, *pte=00000000M

, *ppte=00000000

Broadcast message 
fr
om systemd-journald@mghd2[  551.512558] Internal error: Oops: 17 [#2] PREEMPT SMP ARM
71-tk1 (Tue 2016[-0 8- 09 5251.520015] Modules linked in:1:57:58 UTC):
 
wl12xx

kernel[21 1]:w lcore[  551.3 mac8021103613] Process kwo rkecr/f1g80211:1 (pid: rfkill 30, stack limit = 0xed
b
9e238)

Broadcas[  551.536864] CPU: 1 PID: 30 Comm: kworker/1:1 Tainted: G      D      3.10.40+ #7
t message from systemd-journald@[  551.546234] task: edaf5080 ti: edb9e000 task.ti: edb9e000
mghd271-tk1 (Tue 2016-08-09 21:5[  551.554382] PC is at kthread_data+0xc/0x14
7:58 UTC):

kernel[21[1] :  [  551.561232] LR is at wq_worker_sleeping+0x14/0xc8
551.309862] Stack: (0xed[  551.568690] pc : [<c008aeec>]    lr : [<c00848d4>]    psr: 00010193
[  551.568690] sp : edb9fb58  ip : 00000000  fp : edb9fc14
b9fe98 to 0xedba0000)

B[  551.582217] r10: c0b984c0  r9 : c0bd04e8  r8 : edaf5360
roadcast message[  551.590192] r7 : c0bd04e8  r6 : 00000001  r5 : edaf5080  r4 : 00000001
 from systemd-journald@mghd271-t[  551.598085] r3 : 00000000  r2 : 00000000  r1 : 00000001  r0 : edaf5080
k1 (Tue 2016-08-09 21:57[  551.607361] Flags: nzcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
:58 UTC):

k[  551.616639] Control: 10c5387d  Table: acb8006a  DAC: 00000015
ernel[211]: [  551.314204] fe80:[  551.623753] 
[  551.623753] PC: 0xc008ae6c:
          [        551.630773] ae6c          e5934010         e3540000                 0a000006       bf13 5ae08 5943000ec1a8e40 e5940004

Broadcast  meess1a01005age from e12fff33 systemd-journald@m ghde275b430081-tk1 (T
ue 2016-08-09 21:57:58 U[  551.650754] ae8c TC):

e3530000
kernel[211]: [  551. 321afffff92360] fe e3c6603fa0: edb137c0 000000 00 ec05963004c173b8 c e24330010c16fa8  e5863004ffffffff e5963000 c1dfde05 edb9e008  bfe1033130002344

Broadcast message f[  551.671425] aeac rom syst 0affffcaemd-journald@mghd271 -tek1b1dd27f (Tue 20 eaffffc816-08-09 21: 57e:552de0049 UTC):
 e8bd4000

kernel[211]: [   e5511a0300d.338671] e3c33d7f fee0: 00000000 c1d fede035c3303f edb9e00
8 c041c428 0[00 00 551.692788] aecc 001 c008 e593300c35e8 ec0 e59332b460600 00000000

e
513001cBroadcas e7e00150t message from syst emde-j12fff1eournald@ e52de004mghd271-tk1 (Tue 20 16-e088bd4000-09 21:5 e59032b47:59 UTC):

kern
el
[211]: [  551[.3 468 551.714153] aeec 27] ff00 e5130014: ec060600 c008360c  00e0102fff1e0000 c00 e52de0048415c 00 e24dd00c000003 0 e52de0040000000 edb9ff44 ed b13e7c8bd40000

e59012b4

Broad e28d0008cast message from 
syst
emd-journald@mghd2[  551.734132] af0c 71-tk1 (Tue  20e163a03000-08-09 21:57 :5e9 3a02004UTC):

k erene2411014l[211]:  e5203004[  551.354982] ff20:  ec1db01f500fa040 ed e59d0004b137d8 c1dfa054  e28dd00cedb9e000 e49df004 c0ce4030 00000009
 c1
dfa040 c0084350

[
  551.755496] af2c 

Br e52de004oadcast message from  seys8bd4000temd-jou e1a0300drnald@mg e3c33d7fhd271-tk1 (Tue 2016- 0e8-03c3303f9 21:57: e593300c59 UTC):

kerne l[2e1159302b4]: [  55 e240001c1.363138] ff40: eda
f5
080 edb9e000 ee29[1e  551.776860] af4c a8 edb13 eafffdbb7c0 c008 e52de004421c 00000000 00000 00e0 80bd40000000000
 e3a00000

Broadcast  meessa12fff1ege from  e52de004systemd- e8bd4000journald@mghd271-tk1  (eT5u9012b4e 2016-0
8-09 21:57:59 UTC):

kernel[[  551.796842] 
[  551.796842] LR: 0xc0084854:
211]: [  551.[37 1 551.803864] 4854 293] ff60:  000e001a04000000 c008 e3130f72a88c c0c73a30 00 18bd8038000000 ee0e4 04e0 5903024edb137c0 e5932004 00000000 00000000

e
1520005

Broa 1a000006dcast message from  sysete2832c02md-journ
ald@mghd271-tk1 (Tue 201[  551.824538] 4874 6-08-09  e1921f9f21:57:59 UTC):

keern2811001el[211]: e1820f91 [  551.379449] ff80 : eed3300000b9ff80 e 1afffffadb9ff80 00000000 e8bd8038 00000000 ed be9ff304503090 edb9f e34c50cef90 ee29
1ea8 c008a7b8

B[  551.845209] 4894 roadcast e5d52023 message from system d-ejo3520000urnald@m 1afffff3ghd271-tk1 (Tue 201 6-0e8-30a093809 21:57 e3001326:59 UTC):

kern el[e2134c009d1]: [  5 ebff7c9251.387604] ffa0: 000 00e003a020010 000000
00 00000000 c000[  551.867264] 48b4 f098 000000 00 e005943024000000 0 e5c520230000000  eaffffeb00000000

B roead9c2d4038ast mess e52de004age from sys temed8bd4000-journal e1a04001d@mghd271-tk1 (Tue  2e016b-00198208-09 21:57
:59
 UTC):

kern[el  551.887935] 48d4 [211]: [ e590302c  551.395761] ffc0:  00e003130f720000 000 1a00001f00000 00000000 0 e1a0300d0000000  e3c32d7f00000000 00000000 00 00e003c2203f00 00000 e5903024000

e5922014

Broadcast message 
f
rom systemd-jour[  551.908605] 48f4 nald@mgh e1540002d271-tk1 (Tue 2016-0 8-109a000013 21:57:5 e2832c029 UTC):

kernel [21f1]57ff05f: [  551 e1921f9f.403916] ffe0: 0 e24110010000000 0000 0e0001820f91 00000000 00 0e000330000000 00000013 000
0
0000 00000000 00[  551.929972] 4914 000000

 1afffffa

Broadcast  messfag57ff05fe from s e3510000ystemd-journald@mgh d2171-a00000etk1 (Tue e5931014 2016-08-09 21:57:5 9 UeTC2832014):

e1510002kernel[211]: [   0a00000a551.468669] Code
: 1a00000a e3a03003 e5[88  551.951337] 4934 3024 eaf e5b32024fff97 (e5993010) e1520003

Broadc 13520000ast message from 0a000006 systemd-journal e5920020d@mghd271-tk1 (T e8bd8038ue 2016-08-09 21 e3045030:57:59 UTC):

k erneel34c50ce[211]: [
  551.512558] Internal error: Oo[  551.973390] 
[  551.973390] SP: 0xedb9fad8:
ps: 17 [#2] PREE[  551.980411] fad8 MPT SMP  edaf50b8ARM

c009e59c 00000009 c00a04c8 0000bb61 c00a030c 00000002 c00a09bc
[  551.991475] faf8  c008aeec 00010193 ffffffff edb9fb44 edaf5360 c000eb58 edaf5080 00000001
[  551.999686] fb18  00000000 00000000 00000001 edaf5080 00000001 c0bd04e8 edaf5360 c0bd04e8
[  552.007899] fb38  c0b984c0 edb9fc14 00000000 edb9fb58 c00848d4 c008aeec 00010193 ffffffff
[  552.016110] fb58  0420806c c1dfa4c0 edaf5080 c07ff280 00000000 c0c9aa6c 00000004 60010193
[  552.024322] fb78  c03bcfbc c0ce4064 c0b95700 edb9fbb4 c0068920 c03bc0e4 c0bcf488 c0bcf448
[  552.032532] fb98  edaf52dc c008c5d8 c0ce469c edb9e028 00000000 c00da044 00000000 c0086488
[  552.040744] fbb8  00000001 c00da044 edaf5080 c0068184 edaf5080 edb7da84 00000000 c00681a0
[  552.048955] 
[  552.048955] FP: 0xedb9fb94:
[  552.053209] fb94  c0bcf448 edaf52dc c008c5d8 c0ce469c edb9e028 00000000 c00da044 00000000
[  552.061420] fbb4  c0086488 00000001 c00da044 edaf5080 c0068184 edaf5080 edb7da84 00000000
[  552.069631] fbd4  c00681a0 edaf5080 c00681d8 edaf5510 c00da044 edaf5080 c0068634 edb9fbf0
[  552.077844] fbf4  edb9f9c4 edaf5080 edaf52dc edaf5078 edb9e000 ee08da40 edaf52dc edaf5078
[  552.086054] fc14  c0068920 00000000 00000001 027e027e edaf5324 027f027f edb9fc28 00000001
[  552.094264] fc34  edb9e000 c0bd99dc 0000000b bf135d2c 00000001 bf135d2a c09c7a30 c0cf9584
[  552.102475] fc54  c001311c edb9e238 0000000b 00000000 60010113 c0bd99dc 00000000 00000000
[  552.110688] fc74  00000008 30306131 61303030 61336520 30303330 35652033 30333838 65203432
[  552.118900] 
[  552.118900] R0: 0xedaf5000:
[  552.123155] 5000  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.131366] 5020  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.139579] 5040  ed973000 ed4e1000 00000080 edaf5080 00000003 ffffffff 00000000 00000001
[  552.147791] 5060  00000002 ffffffff 00000000 00000000 00000000 00000000 00000000 00000000
[  552.156003] 5080  00000040 edb9e000 00000002 0420806c 00000000 00000000 00000000 00000001
[  552.164213] 50a0  00000000 00000078 00000078 00000078 00000000 c0813918 00000400 00400000
[  552.172424] 50c0  00000001 00000000 00000000 edaf50cc edaf50cc 00000000 6708968f 00000080
[  552.180635] 50e0  23716b9c 00000000 fe4dfbe1 00000002 23712b28 00000000 00000001 00000000
[  552.188846] 
[  552.188846] R5: 0xedaf5000:
[  552.193101] 5000  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.201312] 5020  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.209522] 5040  ed973000 ed4e1000 00000080 edaf5080 00000003 ffffffff 00000000 00000001
[  552.217734] 5060  00000002 ffffffff 00000000 00000000 00000000 00000000 00000000 00000000
[  552.225945] 5080  00000040 edb9e000 00000002 0420806c 00000000 00000000 00000000 00000001
[  552.234156] 50a0  00000000 00000078 00000078 00000078 00000000 c0813918 00000400 00400000
[  552.242369] 50c0  00000001 00000000 00000000 edaf50cc edaf50cc 00000000 6708968f 00000080
[  552.250579] 50e0  23716b9c 00000000 fe4dfbe1 00000002 23712b28 00000000 00000001 00000000
[  552.258789] 
[  552.258789] R7: 0xc0bd0468:
[  552.263043] 0468  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.271254] 0488  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.279466] 04a8  000003e8 00009000 0000000f c1e12100 0000002c c1e120c0 c1e12080 00000009
[  552.287677] 04c8  c1dee000 00000004 c1e12000 c1e12040 00000001 00001000 00000000 00000003
[  552.295888] 04e8  01259000 01262000 0126b000 01274000 00048aff 00000001 000ae7e1 000fdeff
[  552.304100] 0508  0000eae1 00002000 00000000 00000032 0000fffa 00000001 00000000 00000000
[  552.312311] 0528  ee016c40 ee01d690 00000001 00000001 ed6ecdc0 00000011 c1e16200 0001ffff
[  552.320523] 0548  ee016d40 ee016dc0 00000064 ee016cc0 00000010 c1e96200 0000ffff 00100000
[  552.328735] 
[  552.328735] R8: 0xedaf52e0:
[  552.332989] 52e0  edaf52dc edaf52e4 edaf52e4 edaf5080 edaf52f0 edaf52f0 edaf52f8 edaf52f8
[  552.341201] 5300  00000000 00200200 00000000 edaf580c 00200200 00000000 edaf5818 00200200
[  552.349412] 5320  00000000 edaf5324 00200200 ed9754cc 00200200 00000000 00000000 00000000
[  552.357622] 5340  00000000 00000009 00000000 00000009 00000000 00000000 00000000 000001ca
[  552.365833] 5360  00000002 00000000 042c1d80 00000000 042c1d80 00000000 00000000 00000000
[  552.374044] 5380  00000000 00000000 00000000 00000000 edaf5390 edaf5390 edaf5398 edaf5398
[  552.382255] 53a0  edaf53a0 edaf53a0 edaf6e40 edaf6e40 726f776b 2f72656b 00313a31 00000000
[  552.390465] 53c0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.398677] 
[  552.398677] R9: 0xc0bd0468:
[  552.402931] 0468  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.411142] 0488  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.419353] 04a8  000003e8 00009000 0000000f c1e12100 0000002c c1e120c0 c1e12080 00000009
[  552.427565] 04c8  c1dee000 00000004 c1e12000 c1e12040 00000001 00001000 00000000 00000003
[  552.435776] 04e8  01259000 01262000 0126b000 01274000 00048aff 00000001 000ae7e1 000fdeff
[  552.443988] 0508  0000eae1 00002000 00000000 00000032 0000fffa 00000001 00000000 00000000
[  552.452198] 0528  ee016c40 ee01d690 00000001 00000001 ed6ecdc0 00000011 c1e16200 0001ffff
[  552.460409] 0548  ee016d40 ee016dc0 00000064 ee016cc0 00000010 c1e96200 0000ffff 00100000
[  552.468619] 
[  552.468619] R10: 0xc0b98440:
[  552.472961] 8440  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.481172] 8460  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.489384] 8480  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.497595] 84a0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.505805] 84c0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.514017] 84e0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.522228] 8500  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.530439] 8520  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[  552.538650] Process kworker/1:1 (pid: 30, stack limit = 0xedb9e238)
[  552.544898] Stack: (0xedb9fb58 to 0xedba0000)
[  552.549240] fb40:                                                       0420806c c1dfa4c0
[  552.557395] fb60: edaf5080 c07ff280 00000000 c0c9aa6c 00000004 60010193 c03bcfbc c0ce4064
[  552.565552] fb80: c0b95700 edb9fbb4 c0068920 c03bc0e4 c0bcf488 c0bcf448 edaf52dc c008c5d8
[  552.573708] fba0: c0ce469c edb9e028 00000000 c00da044 00000000 c0086488 00000001 c00da044
[  552.581865] fbc0: edaf5080 c0068184 edaf5080 edb7da84 00000000 c00681a0 edaf5080 c00681d8
[  552.590020] fbe0: edaf5510 c00da044 edaf5080 c0068634 edb9fbf0 edb9f9c4 edaf5080 edaf52dc
[  552.598176] fc00: edaf5078 edb9e000 ee08da40 edaf52dc edaf5078 c0068920 00000000 00000001
[  552.606333] fc20: 027e027e edaf5324 027f027f edb9fc28 00000001 edb9e000 c0bd99dc 0000000b
[  552.614489] fc40: bf135d2c 00000001 bf135d2a c09c7a30 c0cf9584 c001311c edb9e238 0000000b
[  552.622645] fc60: 00000000 60010113 c0bd99dc 00000000 00000000 00000008 30306131 61303030
[  552.630802] fc80: 61336520 30303330 35652033 30333838 65203432 66666661 20373966 39356528
[  552.638957] fca0: 31303339 00202930 00000000 c07fb110 c0a1be68 0000000f 00000017 edb9fe50
[  552.647113] fcc0: 00000000 00000017 0000000f 00000008 00000000 c07f9764 edaf5080 c001ea3c
[  552.655268] fce0: 00000001 c0b984c0 edb9fd1c c009b194 ffffffff c0bd04e8 00000000 ecaf3ed4
[  552.663424] fd00: 00000001 ecaf3ee0 00000000 00000000 00000003 00000001 edb9fd44 c009348c
[  552.671580] fd20: 00000000 ecaf3ec0 ed3b43c0 000000c3 40010193 00000001 00000001 00000001
[  552.679735] fd40: edb9fd54 c00934e0 00000000 c018d014 edb9fd94 c018cfdc 000000c3 ed3f3ab8
[  552.687892] fd60: 00000000 ed3f3ac4 000000c3 c009348c 00000001 ed3f3ac0 00000001 00000001
[  552.696047] fd80: 000000c3 c0095654 00000000 c0bda67c 00000017 0000000f edb9fe50 ec060340
[  552.704204] fda0: ffffffff 00000008 00000000 c000839c 00000000 00000000 00000001 ed7c4230
[  552.712359] fdc0: 00000000 c06e2834 ed7c4230 c01ab4d8 c0d86e98 c06e2834 ff0a0004 00000000
[  552.720515] fde0: 00000000 ecb43888 edb9fe00 00000000 edb9fe20 c01ab4d8 00000000 00000000
[  552.728671] fe00: edb9fe00 edb9fe00 00000000 ecb43888 ed4a0708 ecb43888 ec13a800 c01ab66c
[  552.736828] fe20: ed4a0708 00000000 ec13a7dc 00000000 ec13a7dc c01abaa4 bf135d28 60010113
[  552.744983] fe40: ffffffff edb9fe84 ec060340 c000eb58 00000000 00000000 46010100 0000001b
[  552.753138] fe60: ec1a8e40 00000000 bf13f850 00000000 ec060340 ffffffff 00000008 00000000
[  552.761294] fe80: bf13b310 edb9fe98 ec060360 bf135d28 60010113 ffffffff bf135a08 ec1a8e40
[  552.769449] fea0: edb137c0 00000000 c0c173b8 c0c16fa8 ffffffff c1dfde05 edb9e008 bf103344
[  552.777604] fec0: bf117cc4 c0d6ed30 c0ce469c ec060600 edb137c0 c0ce4638 c1dfa040 c1dfde00
[  552.785761] fee0: 00000000 c1dfde05 edb9e008 c041c428 00000001 c00835e8 ec060600 00000000
[  552.793916] ff00: ec060600 c008360c 00000000 c008415c 00000003 00000000 edb9ff44 edb137c0
[  552.802071] ff20: c1dfa040 edb137d8 c1dfa054 edb9e000 c0ce4030 00000009 c1dfa040 c0084350
[  552.810228] ff40: edaf5080 edb9e000 ee291ea8 edb137c0 c008421c 00000000 00000000 00000000
[  552.818383] ff60: 00000000 c008a88c c0c73a30 00000000 ee0e4040 edb137c0 00000000 00000000
[  552.826539] ff80: edb9ff80 edb9ff80 00000001 00010001 edb9ff90 edb9ff90 ee291ea8 c008a7b8
[  552.834695] ffa0: 00000000 00000000 00000000 c000f098 00000000 00000000 00000000 00000000
[  552.842850] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  552.851006] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[  552.859167] [<c008aeec>] (kthread_data+0xc/0x14) from [<c00848d4>] (wq_worker_sleeping+0x14/0xc8)
[  552.868020] [<c00848d4>] (wq_worker_sleeping+0x14/0xc8) from [<c07ff280>] (__schedule+0x5e4/0x8e0)
[  552.876959] [<c07ff280>] (__schedule+0x5e4/0x8e0) from [<c0068920>] (do_exit+0x608/0x93c)
[  552.885119] [<c0068920>] (do_exit+0x608/0x93c) from [<c001311c>] (die+0x228/0x3f0)
[  552.892671] [<c001311c>] (die+0x228/0x3f0) from [<c07f9764>] (__do_kernel_fault.part.11+0x6c/0x7c)
[  552.901610] [<c07f9764>] (__do_kernel_fault.part.11+0x6c/0x7c) from [<c001ea3c>] (do_page_fault+0x40c/0x418)
[  552.911414] [<c001ea3c>] (do_page_fault+0x40c/0x418) from [<c000839c>] (do_DataAbort+0x40/0xa0)
[  552.920091] [<c000839c>] (do_DataAbort+0x40/0xa0) from [<c000eb58>] (__dabt_svc+0x38/0x60)
[  552.928333] Exception stack(0xedb9fe50 to 0xedb9fe98)
[  552.933368] fe40:                                     00000000 00000000 46010100 0000001b
[  552.941524] fe60: ec1a8e40 00000000 bf13f850 00000000 ec060340 ffffffff 00000008 00000000
[  552.949680] fe80: bf13b310 edb9fe98 ec060360 bf135d28 60010113 ffffffff
  1. Exactly, that’s my point. The problem doesn’t have to do -only- with the wl12xx, the root of the problem is that the sdmmc2 doesn’t work when the kernel starts. Also, the problem is that in the board-ardbeg-sdhci.c file the sdmmc2 (sdhci-tegra.1) is completely absent, so I had to add it manually. Therefore, I’ve added the following things:
  • static struct platform_device tegra_sdhci_device1
  • sdhci_resource1
  • tegra_sdhci_platform_data1
  • platform_device_register(&tegra_sdhci_device1);

Generally, sdmmc2 seems like it’s completely missing from the kernel.

  1. I haven’t implemented any card detect function, as I’m not using any sd detect pin, but I will try it. The kernel seems to recognize that there’s a wl12xx instance and tries to load the driver automatically during start-up though. Below is my code regarding only the sdmmc2 that enabled the kernel to load the driver.
static struct wl12xx_platform_data wlan_data = {
		.irq = 257,
		/* COM6 (127x) uses FREF */
		.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
		/* COM7 (128x) uses TCXO */
		.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
		.set_power	= wl12xx_set_power,
};

static int wl12xx_set_power(int power_on)
{
	static int power_state;

	pr_info("Powering %s wl12xx", power_on ? "on" : "off");

	if (power_on == power_state)
		return(power_state);
	power_state = power_on;

	if (power_on) {
		/* Power up sequence required for wl127x devices */
		gpio_set_value(ARDBEG_WLAN_PWR, 1);
		usleep_range(15000, 15000);
		gpio_set_value(ARDBEG_WLAN_PWR, 0);
		usleep_range(1000, 1000);
		gpio_set_value(ARDBEG_WLAN_PWR, 1);
		msleep(70);
		/* also power-on BT */
		gpio_set_value(ARDBEG_BT_PWR, 1);
	} else {
		gpio_set_value(ARDBEG_WLAN_PWR, 0);
		/* also power-off BT */
		gpio_set_value(ARDBEG_BT_PWR, 0);
	}
	return(power_state);
}

static struct resource wl1271_wifi_resource[] = {
	[0] = {
		.name   = "wl1271_wlan_irq",
		.flags  = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_SHAREABLE,
	},
};

static struct platform_device wl1271_wifi_device = {
	.name           = "wl1271_wlan",
	.id             = 0,
	.num_resources  = 1,
	.resource       = wl1271_wifi_resource,
	.dev            = {
		.platform_data = &wlan_data,
	},
};

static struct resource sdhci_resource1[] = {
	[0] = {
		.start  = INT_SDMMC2,
		.end    = INT_SDMMC2,
		.flags  = IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC2_BASE,
		.end	= TEGRA_SDMMC2_BASE + TEGRA_SDMMC2_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

static struct tegra_sdhci_platform_data tegra_sdhci_platform_data1= {
	.mmc_data = {
		.register_status_notify	= ardbeg_wifi_status_register,
#ifdef CONFIG_MMC_EMBEDDED_SDIO
		.embedded_sdio = &embedded_sdio_data0,
#endif
		.built_in = 0,
		.ocr_mask = MMC_OCR_1V8_MASK,
	},
	.cd_gpio = -1,
	.wp_gpio = -1,
	.power_gpio = -1,
	.tap_delay = 0,
	.trim_delay = 0x2,
	.ddr_clk_limit = 41000000,
	.uhs_mask = MMC_UHS_MASK_DDR50,
	.calib_3v3_offsets = 0x7676,
	.calib_1v8_offsets = 0x7676,
	.max_clk_limit = 136000000,
};

static struct platform_device tegra_sdhci_device1 = {
	.name		= "wl12xx",
	.id		= 0,
	.resource	= sdhci_resource1,
	.num_resources	= ARRAY_SIZE(sdhci_resource1),
	.dev = {
		.dma_mask = &tegra_sdhci_dmamask,
		.coherent_dma_mask = DMA_BIT_MASK(64),
		.platform_data = &tegra_sdhci_platform_data1,
	},
};

static int __init wl12xx_wlan_init(void)
{
	int rc;

	/* Pass the wl12xx platform data information to the wl12xx driver */
	wlan_data.irq = gpio_to_irq(ARDBEG_WLAN_PWR);
	if (wl12xx_set_platform_data(&wlan_data)) {
		pr_err("Error setting wl12xx data\n");
		return -1;
	}
	pr_info("=== wl1271 wl12xx_set_platform_data\n");

	rc = gpio_request(ARDBEG_WLAN_PWR, "wlan_power");
	if (rc)
		pr_err("WLAN_PWR gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_WLAN_RST, "wlan_rst");
	if (rc)
		pr_err("WLAN_RST gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_WLAN_WOW, "bcmsdh_sdmmc");
	if (rc)
		pr_err("WLAN_WOW gpio request failed:%d\n", rc);
	rc = gpio_request(ARDBEG_BT_PWR, "bt_power");
	if (rc)
		pr_err("BT_PWR gpio request failed:%d\n", rc);

	rc = gpio_direction_output(ARDBEG_WLAN_PWR, 0);
	if (rc)
		pr_err("WLAN_PWR gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_output(ARDBEG_WLAN_RST, 0);
	if (rc)
		pr_err("WLAN_RST gpio direction configuration failed:%d\n", rc);

	rc = gpio_direction_input(ARDBEG_WLAN_WOW);
	if (rc)
		pr_err("WLAN_WOW gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_input(ARDBEG_BT_PWR);
	if (rc)
		pr_err("BT_PWR gpio direction configuration failed:%d\n", rc);

	pr_info("==== gpio_to_irq(ARDBEG_WLAN_PWR)=%d\n", wlan_data.irq);

	platform_device_register(&wl1271_wifi_device);
	return 0;
}

int __init ardbeg_sdhci_init(void)
{
...
...
	platform_device_register(&tegra_sdhci_device0); // Enable sdmmc0 for SD card reader
	platform_device_register(&tegra_sdhci_device1); // Enable WiFi
	wl12xx_wlan_init();
...
}
  1. It’s true that I wasn’t clear on my first post. I’ve did the bring-up in the u-boot. It work’s in u-boot it doens’t work on linux.

Regardless, the wifi and wl1271, I would appreciate if someone can verify that the sdmmc1/sdmmc2 interfaces are working in linux and how to do that. What needs to be done to use any other sdmmc interface except the hardcoded sdmmc3 and sdmmc4?

Hi dimtass,

  1. Thank you for sharing the boot log. I see only SDMMC4 and SDMMC1 prints in the log (though the SD card is not detected).

  2. I shall review the portion about the code you shared with respect to SD card not working later. I think the default code in the file should need changes to support SD card instead of SDIO.

  3. I reviewed the code for SDMMC2 portion and do not see problems other than missing set_carddetect. The set_carddetect triggers the code to enumerate the instance hence you need to add it. Can you access the shared link to code for TI WIFI SDIO from my comment? Please refer the code and add the set_carddetect code for SDMMC2 instance instead of SDMMC1 instance.

  4. Can you update the devices.c file(in mach-tegra folder) and ensure that SDMMC2 instance is also enabled in the file? The default software implementation you received does not have SDMMC2 enabled. It may be the reason why the probe for SDMMC2 is not called.

Hi b2, thanks for your time and effort

  1. I’ve implemented the code for the set_carddetect with the following additions, but I still get the same Oops in the kernel. Other than that my code seems very similar to the one in the link.
static int wl12xx_set_carddetect(int val)
{
        pr_debug("%s: %d\n", __func__, val);
        if (wifi_status_cb)
                wifi_status_cb(val, wifi_status_cb_devid);
        else
                pr_warning("%s: Nobody to notify\n", __func__);
        return 0;
}

static struct wl12xx_platform_data wlan_data = {
		.irq = 257,
		/* COM6 (127x) uses FREF */
		.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
		/* COM7 (128x) uses TCXO */
		.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
		.set_power	= wl12xx_set_power,
		.set_carddetect = wl12xx_set_carddetect,
};
  1. In devices.c I’ve already added the following things:
static struct resource sdhci_resource2[] = {
	[0] = {
		.start	= INT_SDMMC2,
		.end	= INT_SDMMC2,
		.flags	= IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC2_BASE,
		.end	= TEGRA_SDMMC2_BASE + TEGRA_SDMMC2_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

Is there anything else I need to do there? I mean, what is the correct way to enable it there?

Thanks again.

Hi dimtass,

Can you confirm if the devices.c has the below lines unconditionally?

struct platform_device tegra_sdhci_device2 = {
190	.name		= "sdhci-tegra",
191	.id		= 1,
192	.resource	= sdhci_resource2,
193	.num_resources	= ARRAY_SIZE(sdhci_resource2),
194};

If above is there then can you please share the boot log you get with all the changes you made as per discussion above?

Regards

Hi b2,

I’ve already had done these changes as also I’ve had added another entry in devices.c

struct swgid_fixup tegra_swgid_fixup[] = {
...
	{ .name = "sdhci-tegra.1",	.swgids = SWGID(PPCS1) },
...

So, all the logs I’ve already posted are with these changes.

A thing that I’ve noticed is that in tegranote-r2 source the platform_device for tegra_sdhci_device1 is using the “sdhci-tegra” name instead of the “wl12xx” that I’m using.

static struct platform_device tegra_sdhci_device1 = {
	.name		= "wl12xx"
        // .name		= "sdhci-tegra", // <- tegranore-r2
	.id		= 1,
	.resource	= sdhci_resource1,
	.num_resources	= ARRAY_SIZE(sdhci_resource1),
	.dev = {
		.dma_mask = &tegra_sdhci_dmamask,
		.coherent_dma_mask = DMA_BIT_MASK(64),
		.platform_data = &tegra_sdhci_platform_data1,
	},
};

During my first tests I also had left the name as “sdhci-tegra” but the kernel couldn’t recognize any “wl12xx” device in order to load the driver. For example with the ‘.name=sdhci-tegra’, the log is the same as before, but when I’m loading the driver manually I’m getting the following.

root@mghd271-tk1:~# modprobe wlcore_sdio
root@mghd271-tk1:~# /s  modprobe wl12xx
[  145.073488] cfg80211: Calling CRDA to update world regulatory domain
root@mghd271-tk1:~# lsmod
Module                  Size  Used by
wlcore_sdio             4293  0 
wl12xx                 48426  0 
wlcore                164070  1 wl12xx
mac80211              351632  2 wl12xx,wlcore
cfg80211              348474  2 mac80211,wlcore
rfkill                  9649  1 cfg80211

So, the kernel doesn’t crush, but also when the driver is loaded it does nothing, there’s no device.
Also ‘iw dev’ doesn’t return anything. So, reading the porting guide from TI I thought that I had to change the .name of the device to “wl12xx” in order to trigger the driver. That did the trigger, but I got the kernel oops. I both cases though, I couldn’t get a clock from the sdmmc2 interface.

Below is the kernel log with all the changes we discussed in devices.c and board-ardbeg-sdhci.c and specifically I’ve made the exact changes in the board-ardbeg-sdhci.c, to meet exactly the rel-tegranote-r2 file (.name = “tegra-sdhci”).

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.40+ (gcc version 4.9.3 20141119 (release) [ARM/embedded-4_9-branch revision 218278] (GNU Tools for ARM Embedded Processors) ) #15 SMP PREEMPT Wed Aug 17 08:49:33 BST 2016
[    0.000000] CPU: ARMv7 Processor [413fc0f3] revision 3 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] Machine: jetson-tk1, model: NVIDIA Tegra124 PM375, serial: 0
[    0.000000] Truncating memory at 0x80000000 to fit in 32-bit physical address space
[    0.000000] Found tsec, start=0xf4900000 size=2000000
[    0.000000] Tegra reserved memory:
[    0.000000] LP0:                    f46ff000 - f46ff80f
[    0.000000] Bootloader framebuffer: 00000000 - 00000000
[    0.000000] Bootloader framebuffer2: 00000000 - 00000000
[    0.000000] Framebuffer:            f8500000 - f96fffff
[    0.000000] 2nd Framebuffer:        f9700000 - fdefffff
[    0.000000] Carveout:               00000000 - 00000000
[    0.000000] Vpr:                    00000000 - 00000000
[    0.000000] Tsec:                   f4900000 - f68fffff
[    0.000000] cma: CMA: reserved 16 MiB at ae800000
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] DTS File Name: arch/arm/boot/dts/tegra124-test.dts
[    0.000000] Tegra12: CPU Speedo value 2311, Soc Speedo value 2259, Gpu Speedo value 2118
[    0.000000] Tegra12: CPU Speedo ID 5, Soc Speedo ID 0, Gpu Speedo ID 1
[    0.000000] Tegra12: CPU Process ID 0,Soc Process ID 1,Gpu Process ID 0
[    0.000000] Tegra Revision: A01 SKU: 0x87 CPU Process: 0 Core Process: 1
[    0.000000] tegra: PLLP fixed rate: 408000000
[    0.000000] tegra_clk_shared_bus_user_init: c2bus client se left ON
[    0.000000] tegra_clk_shared_bus_user_init: c4bus client vi left ON
[    0.000000] Lowering cpu_lp maximum rate from 1350000000 to 1044000000
[    0.000000] Lowering sbus maximum rate from 420000000 to 372000000
[    0.000000] Lowering vic03 maximum rate from 900000000 to 756000000
[    0.000000] Lowering tsec maximum rate from 900000000 to 756000000
[    0.000000] Lowering msenc maximum rate from 600000000 to 480000000
[    0.000000] Lowering se maximum rate from 600000000 to 480000000
[    0.000000] Lowering vde maximum rate from 600000000 to 480000000
[    0.000000] Lowering host1x maximum rate from 500000000 to 408000000
[    0.000000] Lowering vi maximum rate from 700000000 to 600000000
[    0.000000] Lowering isp maximum rate from 700000000 to 600000000
[    0.000000] Lowering c4bus maximum rate from 700000000 to 600000000
[    0.000000] Lowering pll_c maximum rate from 1400000000 to 1066000000
[    0.000000] Lowering pll_c2 maximum rate from 1200000000 to 1066000000
[    0.000000] Lowering pll_c3 maximum rate from 1200000000 to 1066000000
[    0.000000] Lowering hdmi maximum rate from 594000000 to 297000000
[    0.000000] Lowering sdmmc1 maximum rate from 208000000 to 204000000
[    0.000000] Lowering sdmmc3 maximum rate from 208000000 to 204000000
[    0.000000] Lowering gbus maximum rate from 1032000000 to 852000000
[    0.000000] Lowering cpu_g maximum rate from 3000000000 to 2065500000
[    0.000000] tegra dvfs: VDD_CPU nominal 1260mV, scaling enabled
[    0.000000] tegra dvfs: VDD_CORE nominal 1150mV, scaling enabled
[    0.000000] tegra dvfs: VDD_GPU nominal 1200mV, scaling enabled
[    0.000000] Switching to timer-based delay loop
[    0.000000] tegra_powergate_init: DONE
[    0.000000] tegra12_plle_clk_enable: pll_e is already enabled
[    0.000000] PERCPU: Embedded 9 pages/cpu @c1dee000 s15360 r8192 d13312 u36864
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 490768
[    0.000000] Kernel command line: console=ttyS0,115200n8 no_console_suspend=1 lp0_vec=2064@0xf46ff000 mem=2015M@2048M memtype=255 ddr_die=2048M@2048M section=256M pmuboard=0x0177:0x0000:0x42:0x44:0x00 tsec=32M@3913M otf_key=c75e5bb91eb3bd947560357b64422f85 usbcore.old_scheme_first=1 usbcore.autosuspend=-1 core_edp_mv=1150 core_edp_ma=4000 tegraid=40.1.1.0.0 debug_uartport=lsport,3 power_supply=Adapter audio_codec=rt5640 modem_id=0 android.kerneltype=normal commchip_id=0 usb_port_owner_info=0 lane_owner_info=6 emc_max_dvfs=0 touch_id=0@0 board_info=0x0177:0x0000:0x42:0x44:0x00 root=/dev/mmcblk0p4 rootwait rw gpt
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 1923MB = 1923MB total
[    0.000000] Memory: 1921024k/1921024k available, 142336k reserved, 1190908K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0b18f90   (11332 kB)
[    0.000000]       .init : 0xc0b19000 - 0xc0b98c00   ( 511 kB)
[    0.000000]       .data : 0xc0b9a000 - 0xc0cf90b8   (1405 kB)
[    0.000000]        .bss : 0xc0cf90b8 - 0xc0d93f0c   ( 620 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:960
[    0.000000] the number of interrupt controllers found is 5
[    0.000000] Architected local timer running at 12.00MHz (phys).
[    0.000000] sched_clock: 56 bits at 12MHz, resolution 83ns, wraps every 2863311536128ns
[    0.000000] Ignoring duplicate/late registration of read_current_timer delay
[    0.000000] Console: colour dummy device 80x30
[    0.000435] Calibrating delay loop (skipped), value calculated using timer frequency.. lpj=12000
[    0.000451] pid_max: default: 32768 minimum: 301
[    0.000711] Mount-cache hash table entries: 512
[    0.020101] Initializing cgroup subsys debug
[    0.020117] Initializing cgroup subsys freezer
[    0.020172] CPU: Testing write buffer coherency: ok
[    0.020209] ftrace: allocating 30603 entries in 60 pages
[    0.059074] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.059101] Setting up static identity map for 0xc0800ee0 - 0xc0800f74
[    0.063105] ftrace: Allocated trace_printk buffers
[    0.070726] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.073732] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.076777] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.076962] Brought up 4 CPUs
[    0.076998] SMP: Total of 4 processors activated.
[    0.077005] CPU: All CPU(s) started in SVC mode.
[    0.077902] devtmpfs: initialized
[    0.086372] pinctrl core: initialized pinctrl subsystem
[    0.086679] regulator-dummy: no parameters
[    0.087363] NET: Registered protocol family 16
[    0.089676] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.090901] tegra_smmu tegra_smmu: Loaded Tegra IOMMU driver
[    0.092324] console [pstore-1] enabled
[    0.092351] ramoops: attached 0x200000@0xf8300000, ecc: 0/0
[    0.092705] cpuidle: using governor ladder
[    0.092718] cpuidle: using governor menu
[    0.096447] ardbeg_camera_auxdata: update camera lookup table.
[    0.105308] tegra-gpio 6000d000.gpio: Initialising GPIO state 0: name default
[    0.105720] gpiochip_add: registered GPIOs 0 to 255 on device: tegra-gpio
[    0.111890] Wake16 for irq=34
[    0.114147] Wake58 for irq=81
[    0.114184] Wake41 for irq=129
[    0.114194] Wake43 for irq=129
[    0.114228] Wake40 for irq=53
[    0.114237] Wake42 for irq=53
[    0.117967] board_info: id:sku:fab:major:minor = 0x0177:0x0000:0x42:0x44:0x00
[    0.118030] board_info: id:sku:fab:major:minor = 0x0177:0x0000:0x42:0x44:0x00
[    0.118082] (NULL device *): DSI: clk: 432000000
[    0.118110] Selecting UARTD as the debug console
[    0.118146] The debug console clock name is uartd
[    0.118541] ardbeg_modem_init: modem_id = 0
[    0.120246] === wl1271 wl12xx_set_platform_data
[    0.120308] ==== gpio_to_irq(ARDBEG_WLAN_PWR)=257
[    0.121199] Clear bootloader IO dpd settings
[    0.121390] Loading jetson TK1 EMC tables.
[    0.121639] tegra: pll_m is selected as scalable EMC clock source
[    0.121670] Lowering emc maximum rate from 1200000000 to 924000000
[    0.121685] tegra: validated EMC DFS table
[    0.121797] ardbeg_edp_init: CPU regulator 12500 mA
[    0.372634] ardbeg_edp_init: GPU regulator 11400 mA
[    0.373568] swapper/0 isomgr_init(): iso emc max clk=924000KHz
[    0.373579] swapper/0 isomgr_init(): max_iso_bw=7392000KB[    0.373918] ardbeg_touch_init init raydium touch
[    0.374056] Raydium - touch platform_id :  8
[    0.374150] (NULL device *): DSI: clk: 432000000
[    0.456875] platform tegradc.0: IOVA linear map 0xf8500000(1200000)
[    0.460167] platform tegradc.0: IOVA linear map 0xf9700000(4800000)
[    0.465148] platform tegradc.1: IOVA linear map 0xf8500000(1200000)
[    0.468430] platform tegradc.1: IOVA linear map 0xf9700000(4800000)
[    0.468814] FUSE: cp_rev 0 ft_rev 0
[    0.468994] tegra11_soctherem_oc_int_init(): OC interrupts are not enabled
[    0.469362] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.469375] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.469637] mc-err: Started MC error interface!
[    0.479946] bio: create slab <bio-0> at 0
[    0.481776] reg-fixed-voltage 0.regulator: Consumer c1 does not have device name
[    0.481795] reg-fixed-voltage 0.regulator: Consumer c2 does not have device name
[    0.481911] vdd-ac-bat: 8400 mV 
[    0.482034] reg-fixed-voltage 1.regulator: Consumer c1 does not have device name
[    0.482050] reg-fixed-voltage 1.regulator: Consumer c2 does not have device name
[    0.482176] vdd-3v3-aon: 3300 mV 
[    0.482318] reg-fixed-voltage 8.regulator: Consumer c1 does not have device name
[    0.482333] reg-fixed-voltage 8.regulator: Consumer c2 does not have device name
[    0.482347] reg-fixed-voltage 8.regulator: Consumer c3 does not have device name
[    0.482367] reg-fixed-voltage 8.regulator: Consumer c6 does not have device name
[    0.482381] reg-fixed-voltage 8.regulator: Consumer c7 does not have device name
[    0.482394] reg-fixed-voltage 8.regulator: Consumer c8 does not have device name
[    0.482407] reg-fixed-voltage 8.regulator: Consumer c9 does not have device name
[    0.482421] reg-fixed-voltage 8.regulator: Consumer c10 does not have device name
[    0.482435] reg-fixed-voltage 8.regulator: Consumer c11 does not have device name
[    0.482448] reg-fixed-voltage 8.regulator: Consumer c12 does not have device name
[    0.482561] reg-3v3-supply: 3300 mV 
[    0.484157] vgaarb: loaded
[    0.484778] SCSI subsystem initialized
[    0.485157] usbcore: registered new interface driver usbfs
[    0.485212] usbcore: registered new interface driver hub
[    0.485306] usbcore: registered new device driver usb
[    0.487995] as3722 4-0040: AS3722 ID: ID1:ID2:ID3 = 0x0c:0x01:0x15
[    0.488010] as3722 4-0040: Final OTP version 1V21
[    0.492963] gpiochip_add: registered GPIOs 1016 to 1023 on device: as3722-gpio
[    0.493153] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493194] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493247] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493262] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493276] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493290] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493331] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493345] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493358] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493372] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493385] as3722-regulator as3722-regulator.0: Consumer c5 does not have device name
[    0.493399] as3722-regulator as3722-regulator.0: Consumer c6 does not have device name
[    0.493413] as3722-regulator as3722-regulator.0: Consumer c7 does not have device name
[    0.493459] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493472] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493486] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493499] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493513] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.493527] as3722-regulator as3722-regulator.0: Consumer c10 does not have device name
[    0.493540] as3722-regulator as3722-regulator.0: Consumer c11 does not have device name
[    0.493554] as3722-regulator as3722-regulator.0: Consumer c12 does not have device name
[    0.493568] as3722-regulator as3722-regulator.0: Consumer c13 does not have device name
[    0.493581] as3722-regulator as3722-regulator.0: Consumer c14 does not have device name
[    0.493595] as3722-regulator as3722-regulator.0: Consumer c15 does not have device name
[    0.493633] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493646] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493682] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.493696] as3722-regulator as3722-regulator.0: Consumer c2 does not have device name
[    0.493709] as3722-regulator as3722-regulator.0: Consumer c3 does not have device name
[    0.493723] as3722-regulator as3722-regulator.0: Consumer c4 does not have device name
[    0.493736] as3722-regulator as3722-regulator.0: Consumer c5 does not have device name
[    0.493750] as3722-regulator as3722-regulator.0: Consumer c6 does not have device name
[    0.493764] as3722-regulator as3722-regulator.0: Consumer c7 does not have device name
[    0.493777] as3722-regulator as3722-regulator.0: Consumer c8 does not have device name
[    0.493790] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.493844] as3722-regulator as3722-regulator.0: Consumer c8 does not have device name
[    0.493857] as3722-regulator as3722-regulator.0: Consumer c9 does not have device name
[    0.493870] as3722-regulator as3722-regulator.0: Consumer c10 does not have device name
[    0.493909] as3722-regulator as3722-regulator.0: Consumer c1 does not have device name
[    0.494785] vdd-cpu: 650 <--> 1300 mV at 1000 mV 3500 mA 
[    0.495525] vdd-core: applied init 1000000uV constraint
[    0.496108] vdd-core: 700 <--> 1350 mV at 1000 mV 3500 mA 
[    0.497287] vddio-ddr: at 1350 mV 
[    0.497600] as3722-sd3: no parameters
[    0.498163] avdd-pll-pex: 1050 mV 
[    0.499361] vdd-1v8: at 1800 mV 
[    0.499668] vdd-gpu: applied init 1000000uV constraint
[    0.500526] vdd-gpu: 650 <--> 1200 mV at 1000 mV 3500 mA 
[    0.501005] avdd-pll: at 1050 mV at 300 mA 
[    0.501804] as3722-ldo1: at 150 mA 
[    0.502437] avdd-dsi-csi: at 1200 mV at 150 mA 
[    0.503630] vdd-rtc: 800 mV at 150 mA 
[    0.503943] vin-ldo3-4: at 150 mA 
[    0.504257] as3722-ldo5: at 150 mA 
[    0.504597] as3722-ldo6: at 150 mA 
[    0.504913] as3722-ldo7: at 150 mA 
[    0.505231] as3722-ldo9: at 150 mA 
[    0.505580] as3722-ldo10: at 1800 mV at 150 mA 
[    0.506210] vpp-fuse: 1800 mV at 150 mA 
[    0.507263] Linux video capture interface: v2.00
[    0.508326] Advanced Linux Sound Architecture Driver Initialized.
[    0.508781] Powering on wl12xx
[    0.598228] usb0-vbus: 5000 mV 
[    0.598476] usb1-usb2-vbus: 5000 mV 
[    0.598741] vdd-hdmi: 5000 mV 
[    0.599019] avdd-hdmi-pll: 3300 mV 
[    0.599058] avdd-hdmi-pll: supplied by avdd-pll-pex
[    0.599218] reg-fixed-sync-voltage 6.regulator: Consumer c1 does not have device name
[    0.599345] vdd-lcd-bl: 3300 mV 
[    0.599485] reg-fixed-sync-voltage 7.regulator: Consumer c1 does not have device name
[    0.599615] vdd-lcd-bl-en: 5000 mV 
[    0.599754] reg-fixed-sync-voltage 9.regulator: Consumer c3 does not have device name
[    0.599858] reg-5v0-supply: 5000 mV 
[    0.600024] reg-fixed-sync-voltage a.regulator: Consumer c1 does not have device name
[    0.600041] reg-fixed-sync-voltage a.regulator: Consumer c2 does not have device name
[    0.600056] reg-fixed-sync-voltage a.regulator: Consumer c3 does not have device name
[    0.600086] reg-fixed-sync-voltage a.regulator: Consumer c10 does not have device name
[    0.600101] reg-fixed-sync-voltage a.regulator: Consumer c11 does not have device name
[    0.600114] reg-fixed-sync-voltage a.regulator: Consumer c12 does not have device name
[    0.600128] reg-fixed-sync-voltage a.regulator: Consumer c13 does not have device name
[    0.600142] reg-fixed-sync-voltage a.regulator: Consumer c14 does not have device name
[    0.600155] reg-fixed-sync-voltage a.regulator: Consumer c15 does not have device name
[    0.600278] reg-1v8-supply: 1800 mV 
[    0.600528] reg-fixed-sync-voltage b.regulator: Consumer c1 does not have device name
[    0.600660] reg-dcdc-1v2: 1200 mV 
[    0.600820] reg-fixed-sync-voltage c.regulator: Consumer c7 does not have device name
[    0.600836] reg-fixed-sync-voltage c.regulator: Consumer c8 does not have device name
[    0.601399] as3722-gpio2-supply: 3300 mV 
[    0.601590] reg-fixed-sync-voltage d.regulator: Consumer c1 does not have device name
[    0.602112] as3722-gpio4-supply: 3300 mV 
[    0.602359] vdd-cdc-1v2-aud: 1200 mV 
[    0.602497] reg-fixed-sync-voltage 10.regulator: Consumer c1 does not have device name
[    0.602514] reg-fixed-sync-voltage 10.regulator: Consumer c2 does not have device name
[    0.602529] reg-fixed-sync-voltage 10.regulator: Consumer c3 does not have device name
[    0.602636] reg-aon-1v8: 1800 mV 
[    0.602787] reg-fixed-sync-voltage 11.regulator: Consumer c1 does not have device name
[    0.602889] reg-aon-1v2: 1200 mV 
[    0.605861] as3722-adc-extcon as3722-adc-extcon.2: USB-Host is disconnected
[    0.608737] tegra: failed to map regulator to power detect cell pwrdet_cam(-517)
[    0.608831] tegra: failed to map regulator to power detect cell pwrdet_sdmmc1(-517)
[    0.608849] tegra: failed to map regulator to power detect cell pwrdet_sdmmc3(-517)
[    0.608868] tegra: failed to map regulator to power detect cell pwrdet_sdmmc4(-517)
[    0.608951] tegra: failed regulators mapping - io power detection is left always on
[    0.608968] Switching to clocksource arch_sys_counter
[    0.630353] nvmap_heap_init: nvmap_heap_init: created heap block cache
[    0.630533] nvmap_page_pool_init: Total MB RAM: 1892
[    0.630546] nvmap_page_pool_init: nvmap page pool size: 60544 pages (236 MB)
[    0.630674] nvmap_background_zero_thread: PP zeroing thread starting.
[    0.630835]  iram: dma coherent mem declare 0x40001000,258048
[    0.631664] misc nvmap: created heap iram base 0x40001000 size (252KiB)
[    0.631798] nvmap:inner cache maint threshold=2097152
[    0.640939] Wake39 for irq=52
[    0.641041] tegra-otg tegra-otg: otg transceiver registered
[    0.641370] NET: Registered protocol family 2
[    0.642033] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[    0.642223] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.642402] TCP: Hash tables configured (established 8192 bind 8192)
[    0.642450] TCP: reno registered
[    0.642465] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.642508] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.642803] NET: Registered protocol family 1
[    0.643189] RPC: Registered named UNIX socket transport module.
[    0.643202] RPC: Registered udp transport module.
[    0.643211] RPC: Registered tcp transport module.
[    0.643221] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.643492] tegra-fuse tegra-fuse: Fuse driver initialized succesfully
[    0.648818] host1x host1x: initialized
[    0.650081] CPU PMU: probing PMU on CPU 0
[    0.650105] hw perfevents: enabled with ARMv7 Cortex-A15 PMU driver, 7 counters available
[    0.650683] tegra_throttle : init passed
[    0.650783] Tegra cpuquiet initialized: disabled
[    0.650907] cpu-tegra: init EDP limit: 2065 MHz
[    0.651840] thermal thermal_zone0: Registering thermal zone thermal_zone0 for type CPU-therm
[    0.652236] thermal thermal_zone1: Registering thermal zone thermal_zone1 for type GPU-therm
[    0.652437] thermal thermal_zone2: Registering thermal zone thermal_zone2 for type MEM-therm
[    0.652647] thermal thermal_zone3: Registering thermal zone thermal_zone3 for type PLL-therm
[    0.654109] bounce pool size: 64 pages
[    0.655535] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    0.655819] NTFS driver 2.1.30 [Flags: R/O].
[    0.655949] fuse init (API version 7.22)
[    0.656198] msgmni has been set to 1458
[    0.657520] io scheduler noop registered (default)
[    0.858857] PCIE: port 0: link down, retrying
[    1.058972] PCIE: port 0: link down, retrying
[    1.259114] PCIE: port 0: link down, retrying
[    1.259125] PCIE: port 0: link down, ignoring
[    1.273270] PCI host bridge to bus 0000:00
[    1.273289] pci_bus 0000:00: root bus resource [mem 0x32100000-0x3fffffff]
[    1.273304] pci_bus 0000:00: root bus resource [mem 0x12100000-0x320fffff pref]
[    1.273318] pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
[    1.273331] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    1.273682] PCI: bus0: Fast back to back transfers disabled
[    1.273698] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.276068] PCI: bus1: Fast back to back transfers disabled
[    1.276385] pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt
[    1.276399] pci 0000:01:00.0: Signaling PME through PCIe PME interrupt
[    1.276616] pcieport 0000:00:00.0: BAR 8: assigned [mem 0x32100000-0x321fffff]
[    1.276632] pcieport 0000:00:00.0: BAR 7: assigned [io  0x1000-0x1fff]
[    1.276648] pci 0000:01:00.0: BAR 0: assigned [mem 0x32100000-0x32103fff 64bit]
[    1.276677] pci 0000:01:00.0: BAR 2: assigned [io  0x1000-0x10ff]
[    1.276695] pcieport 0000:00:00.0: PCI bridge to [bus 01]
[    1.276708] pcieport 0000:00:00.0:   bridge window [io  0x1000-0x1fff]
[    1.276724] pcieport 0000:00:00.0:   bridge window [mem 0x32100000-0x321fffff]
[    1.276749] PCIE: No Link speed change happened
[    1.277302] pwm-backlight pwm-backlight: unable to request PWM, trying legacy API
[    1.277399] sysedp_create_consumer: unable to create pwm-backlight, no consumer_data for pwm-backlight found
[    1.278269] tsec tsec: initialized
[    1.279707] isp isp.0: initialized
[    1.280660] isp isp.1: initialized
[    1.282173] falcon vic03.0: initialized
[    1.283324] falcon msenc: initialized
[    1.284274] tegradc tegradc.0: DSI: HS clock rate is 407500
[    1.285258] tegradc tegradc.0: DSI: initializing panel p_wuxga_10_1
[    1.285580] p,wuxga-10-1 panel dt support not available
[    1.387947] tegradc tegradc.0: nominal-pclk:432000000 parent:432000000 div:1.0 pclk:432000000 427680000~470880000 type:2
[    1.477188] tegradc tegradc.0: DSI pad calibration done
[    1.481143] tegradc tegradc.0: DSI: Enabling...
[    1.481164] tegradc tegradc.0: dsi: gpio[114]=1.
[    1.481181] tegradc tegradc.0: dsi: gpio[115]=1.
[    1.481197] tegradc tegradc.0: dsi: gpio[152]=0.
[    2.087049] tegradc tegradc.0: DSI: Enabled
[    2.090241] tegradc tegradc.0: dc.c probed
[    2.090960] tegradc tegradc.0: nominal-pclk:135666000 parent:406500000 div:3.0 pclk:135500000 134309340~147875940 type:2
[    2.112707] Console: switching to colour frame buffer device 240x67
[    2.133301] tegradc tegradc.0: fb registered
[    2.139120] gpio wake4 for gpio=111
[    2.166939] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[    2.168247] tegradc tegradc.1: dc.c probed
[    2.169614] tegradc tegradc.1: fb registered
[    2.169655] hdmi_state_machine_worker (tid edaf5580): state 7 (Takeover from bootloader), hpd 1, pending_hpd_evt 1
[    2.169670] hdmi_state_machine_set_state_l: switching from state 7 (Takeover from bootloader) to state 1 (Check Plug)
[    2.172649] tegra-apbdma tegra-apbdma: Tegra20 APB DMA driver register 32 channels
[    2.173341] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    2.174565] serial8250.0: ttyS0 at MMIO 0x70006300 (irq = 122) is a Tegra
[    2.215169] hdmi_state_machine_worker (tid edaf5580): state 1 (Check Plug), hpd 1, pending_hpd_evt 0
[    2.215176] hdmi_state_machine_set_state_l: switching from state 1 (Check Plug) to state 2 (Check EDID)
[    2.286697] hdmi_state_machine_worker (tid edaf5580): state 2 (Check EDID), hpd 1, pending_hpd_evt 0
[    2.315945] panel size 51 by 29
[    2.678721] tegra_dc_hdmi_irq: start
[    2.678732] tegra_dc_hdmi_irq: end
[    3.176075] tegra_dc_hdmi_irq: start
[    3.176086] tegra_dc_hdmi_irq: end
[    4.418939] console [ttyS0] enabled
[    4.419487] serial-tegra.0: ttyTHS0 at MMIO 0x70006000 (irq = 68) is a SERIAL_TEGRA
[    4.419781] serial-tegra.1: ttyTHS1 at MMIO 0x70006040 (irq = 69) is a SERIAL_TEGRA
[    4.420091] serial-tegra.2: ttyTHS2 at MMIO 0x70006200 (irq = 78) is a SERIAL_TEGRA
[    4.434920] loop: module loaded
[    4.435231] nct1008_nct72 0-004c: success in enabling rail vdd_nct72
[    4.437888] tegra-i2c tegra12-i2c.0: no acknowledge from address 0x4c
[    4.437996] nct1008_nct72 0-004c: nct1008_read_reg: err -121
[    4.438001] NCT72: ERR: remote sensor circuit is open (0xffffff87)
[    4.445553] tegra-i2c tegra12-i2c.0: no acknowledge from address 0x4c
[    4.445655] nct1008_nct72 0-004c: nct1008_write_reg: err -121
[    4.445662] nct1008_nct72 0-004c: 
[    4.445662]  exit nct1008_configure_sensor, err=-121 
[    4.445670] nct1008_nct72 0-004c: 
[    4.445670]  error file: drivers/misc/nct1008.c : nct1008_probe(), line=1453 
[    4.445676] nct1008_nct72 0-004c: 
[    4.445676]  exit nct1008_probe, err=-121 
[    4.445685] nct1008_nct72 0-004c: success in disabling rail vdd_nct72
[    4.445756] nct1008_nct72: probe of 0-004c failed with error -121
[    4.446348] tegra_profiler: Branch: Dev
[    4.446351] tegra_profiler: Version: 1.103
[    4.446354] tegra_profiler: Samples version: 34
[    4.446357] tegra_profiler: IO version: 18
[    4.446363] armv7_pmu: arch: Cortex A15, type: 4, ver: 0
[    4.446534] tegra_profiler: auth: init
[    4.446870] GPS: mt3332_gps_mod_init: platform_driver_register ret = 0
[    4.449579] tegra-sata tegra-sata.0: AHCI 0001.0301 32 slots 2 ports 3 Gbps 0x1 impl TEGRA-SATA mode
[    4.449590] tegra-sata tegra-sata.0: flags: 64bit ncq sntf pm led pmp pio slum part sadm apst 
[    4.450682] scsi0 : tegra-sata
[    4.455344] scsi1 : tegra-sata
[    4.455548] ata1: SATA max UDMA/133 irq 55
[    4.455552] ata2: DUMMY
[    4.457561] tun: Universal TUN/TAP device driver, 1.6
[    4.457565] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    4.457739] sky2: driver version 1.30
[    4.457835] sky2 0000:01:00.0: Yukon-2 Optima chip revision 1
[    4.457904] sky2 0000:01:00.0 (unregistered net_device): Invalid MAC address, defaulting to random
[    4.461959] sky2 0000:01:00.0 eth0: addr 3e:82:30:4e:fa:88
[    4.462139] usbcore: registered new interface driver asix
[    4.462179] usbcore: registered new interface driver ax88179_178a
[    4.462214] usbcore: registered new interface driver cdc_ether
[    4.462261] usbcore: registered new interface driver smsc95xx
[    4.462295] usbcore: registered new interface driver cdc_subset
[    4.462363] usbcore: registered new interface driver cdc_ncm
[    4.462379] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    4.462586] tegra USB phy - inst[1] platform info:
[    4.462589] port_otg: no
[    4.462592] has_hostpc: yes
[    4.462594] phy_interface: USB_PHY_INTF_UTMI
[    4.462597] op_mode: TEGRA_USB_OPMODE_HOST
[    4.462599] qc2_voltage: 0
[    4.462602] vbus_gpio: -1
[    4.462604] hot_plug: disabled
[    4.462606] remote_wakeup: enabled
[    4.462897] usb_phy: can't enable usb gpio: -1
[    4.464120] tegra-ehci tegra-ehci.1: Tegra EHCI Host Controller
[    4.464149] tegra-ehci tegra-ehci.1: new USB bus registered, assigned bus number 1
[    4.464250] Wake40 for irq=53
[    4.464253] Wake42 for irq=53
[    4.464274] tegra-ehci tegra-ehci.1: irq 53, io mem 0x7d004000
[    4.468069] tegra-ehci tegra-ehci.1: USB 2.0 started, EHCI 1.10
[    4.468157] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    4.468164] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    4.468170] usb usb1: Product: Tegra EHCI Host Controller
[    4.468176] usb usb1: Manufacturer: Linux 3.10.40+ ehci_hcd
[    4.468181] usb usb1: SerialNumber: tegra-ehci.1
[    4.468686] hub 1-0:1.0: USB hub found
[    4.468704] hub 1-0:1.0: 1 port detected
[    4.469048] tegra USB phy - inst[2] platform info:
[    4.469052] port_otg: no
[    4.469054] has_hostpc: yes
[    4.469056] phy_interface: USB_PHY_INTF_UTMI
[    4.469059] op_mode: TEGRA_USB_OPMODE_HOST
[    4.469061] qc2_voltage: 0
[    4.469064] vbus_gpio: -1
[    4.469066] hot_plug: disabled
[    4.469069] remote_wakeup: enabled
[    4.469350] usb_phy: can't enable usb gpio: -1
[    4.470530] tegra-ehci tegra-ehci.2: Tegra EHCI Host Controller
[    4.470552] tegra-ehci tegra-ehci.2: new USB bus registered, assigned bus number 2
[    4.470643] Wake41 for irq=129
[    4.470647] Wake43 for irq=129
[    4.470667] tegra-ehci tegra-ehci.2: irq 129, io mem 0x7d008000
[    4.474064] tegra-ehci tegra-ehci.2: USB 2.0 started, EHCI 1.10
[    4.474142] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    4.474150] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    4.474156] usb usb2: Product: Tegra EHCI Host Controller
[    4.474161] usb usb2: Manufacturer: Linux 3.10.40+ ehci_hcd
[    4.474167] usb usb2: SerialNumber: tegra-ehci.2
[    4.474631] hub 2-0:1.0: USB hub found
[    4.474647] hub 2-0:1.0: 1 port detected
[    4.474993] ehci-pci: EHCI PCI platform driver
[    4.475290] tegra_xusb_read_usb_calib: usb_calib0 = 0x0285838a
[    4.475526] usbcore: registered new interface driver usb-storage
[    4.475623] usbcore: registered new interface driver usbserial
[    4.475661] usbcore: registered new interface driver option
[    4.475691] usbserial: USB Serial support registered for GSM modem (1-port)
[    4.475795] usbcore: registered new interface driver pl2303
[    4.475824] usbserial: USB Serial support registered for pl2303
[    4.475837] Nvidia Tegra High-Speed USB Device Controller driver (Apr 30, 2012)
[    4.475980] tegra USB phy - inst[0] platform info:
[    4.475983] port_otg: yes
[    4.475985] has_hostpc: yes
[    4.475988] phy_interface: USB_PHY_INTF_UTMI
[    4.475990] op_mode: TEGRA_USB_OPMODE_DEVICE
[    4.475993] qc2_voltage: 0
[    4.475995] vbus_pmu_irq: 0
[    4.475997] vbus_gpio: -1
[    4.475999] charging: enabled
[    4.476001] remote_wakeup: disabled
[    4.478780] tegra-udc tegra-udc.0: usb_bat_chg regulator not registered: USB charging will not be enabled
[    4.518785] as3722-rtc as3722-rtc.1: rtc core: registered as3722 as rtc0
[    4.518792] as3722-rtc as3722-rtc.1: RTC interrupt 449
[    4.575568] i2c /dev entries driver
[    4.576704] virtual_init
[    4.578738] nvavp nvavp: allocated IOVA at 8ff00000 for AVP os
[    4.579540] tegra_dtv_probe: probing dtv.
[    4.579874] setup_stream: bufsize = 4096, bufnum = 4
[    4.579875] ar0832_init: ++
[    4.580244] i2c-core: driver [max77387] using legacy suspend method
[    4.580247] i2c-core: driver [max77387] using legacy resume method
[    4.580301] i2c-core: driver [as364x] using legacy suspend method
[    4.580304] i2c-core: driver [as364x] using legacy resume method
[    4.580449] [IMX135] sensor driver loading
[    4.580495] [IMX179] sensor driver loading
[    4.580541] [IMX185] sensor driver loading
[    4.580589] [imx132] sensor driver loading
[    4.580635] [AR0330] sensor driver loading
[    4.580679] [ar0261] sensor driver loading
[    4.580725] [AR1335] sensor driver loading
[    4.580770] [ov4689] sensor driver loading
[    4.581041] usbcore: registered new interface driver uvcvideo
[    4.581043] USB Video Class driver (1.1.1)
[    4.581915] zram: Created 1 device(s) ...
[    4.583112] tegra_wdt tegra_wdt.0: last reset is due to software reset
[    4.583272] tegra_wdt_probe done
[    4.583576] sdhci: Secure Digital Host Controller Interface driver
[    4.583579] sdhci: Copyright(c) Pierre Ossman
[    4.583582] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.583872] sdhci-tegra sdhci-tegra.3: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    4.583892] sdhci-tegra sdhci-tegra.3: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    4.584070] sdhci-tegra sdhci-tegra.3: Speedo value 2259
[    4.584078] sdhci-tegra sdhci-tegra.3: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    4.625053] otg state changed: SUSPEND --> PERIPHERAL
[    4.771069] ata1: SATA link down (SStatus 0 SControl 300)
[    4.774062] usb 1-1: new high-speed USB device number 2 using tegra-ehci
[    4.807820] usb 1-1: New USB device found, idVendor=0424, idProduct=2517
[    4.807829] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    4.815555] hub 1-1:1.0: USB hub found
[    4.818522] hub 1-1:1.0: 7 ports detected
[    4.973056] usb 2-1: new high-speed USB device number 2 using tegra-ehci
[    5.032537] usb 2-1: New USB device found, idVendor=0424, idProduct=2137
[    5.032545] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    5.032551] usb 2-1: Product: USB2137B
[    5.032557] usb 2-1: Manufacturer: SMSC
[    5.036807] hub 2-1:1.0: USB hub found
[    5.040825] hub 2-1:1.0: 7 ports detected
[    5.212060] handle_check_edid_l: audio_switch 1
[    5.216662] Display connected, hpd_switch 1
[    5.220908] handle_check_edid_l: setting audio and infoframes
[    5.226714] hdmi_state_machine_set_state_l: switching from state 2 (Check EDID) to state 4 (Enabled)
[    5.235879] hdmi_state_machine_worker (tid edaf5580): state 4 (Enabled), hpd 1, pending_hpd_evt 1
[    5.244751] hdmi_state_machine_handle_hpd_l: ignoring bouncing hpd
[    5.251307] mmc0: no vqmmc regulator found
[    5.255431] mmc0: no vmmc regulator found
[    5.259452] mmc0: Invalid maximum block size, assuming 512 bytes
[    5.265485] sysedp_create_consumer: unable to create sdhci-tegra.3, no consumer_data for sdhci-tegra.3 found
[    5.299051] mmc0: SDHCI controller on sdhci-tegra.3 [sdhci-tegra.3] using ADMA
[    5.306732] sdhci-tegra sdhci-tegra.0: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    5.317101] sdhci-tegra sdhci-tegra.0: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    5.328043] sdhci-tegra sdhci-tegra.0: Speedo value 2259
[    5.333366] sdhci-tegra sdhci-tegra.0: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    5.342834] mmc1: no vqmmc regulator found
[    5.346957] mmc1: no vmmc regulator found
[    5.350974] mmc1: Invalid maximum block size, assuming 512 bytes
[    5.357005] sysedp_create_consumer: unable to create sdhci-tegra.0, no consumer_data for sdhci-tegra.0 found[    5.369245] mmc0: BKOPS_EN bit is not set
[    5.378588] sdhci-tegra sdhci-tegra.3: Found T2T coeffs data
[    5.384294] sdhci-tegra sdhci-tegra.3: 200MHz tap hole coeffs found
[    5.390054] mmc1: SDHCI controller on sdhci-tegra.0 [sdhci-tegra.0] using ADMA
[    5.390306] sdhci-tegra sdhci-tegra.1: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    5.390325] sdhci-tegra sdhci-tegra.1: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    5.390471] sdhci-tegra sdhci-tegra.1: Speedo value 2259
[    5.390478] sdhci-tegra sdhci-tegra.1: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100

[    5.433568] usb 2-1.1: new low-speed USB device number 3 using tegra-ehci
[    5.456319] usb 2-1.1: New USB device found, idVendor=17ef, idProduct=6019
[    5.463209] usb 2-1.1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[    5.470524] usb 2-1.1: Product: Lenovo Optical USB Mouse
[    5.980938] **********Auto tuning windows*************
[    5.986152] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    5.991674] win[0]: 0(0) - 61(1)
[    5.991731] mmc2: no vqmmc regulator found
[    5.991745] mmc2: no vmmc regulator found
[    5.991749] mmc2: Invalid maximum block size, assuming 512 bytes
[    6.008989] win[1]: 67(0) - 131(1)
[    6.012401] win[2]: 137(0) - 200(1)
[    6.013063] sysedp_create_consumer: unable to create sdhci-tegra.1, no consumer_data for sdhci-tegra.1 found
[    6.013064] mmc2: SDHCI controller on sdhci-tegra.1 [sdhci-tegra.1] using ADMA
[    6.016825] tegra-se tegra12-se: tegra_se_probe: complete
[    6.022079] input: Lenovo Optical USB Mouse as /devices/platform/tegra-ehci.2/usb2/2-1/2-1.1/2-1.1:1.0/input/input0
[    6.022368] hid-generic 0003:17EF:6019.0001: input: USB HID v1.11 Mouse [Lenovo Optical USB Mouse] on usb-tegra-ehci.2-1.1/input0
[    6.022436] usbcore: registered new interface driver usbhid
[    6.022438] usbhid: USB HID core driver
[    6.022879] tegra-hier-ictlr tegra-hier-ictlr: probed
[    6.074759] win[3]: 205(0) - 255(1)
[    6.078264] ***************************************
[    6.083155] ********tuning windows after inserting holes*****
[    6.088913] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    6.094406] win[0]:-2(0) - 31(2)
[    6.097650] win[1]:33(2) - 61(1)
[    6.100891] win[2]:67(0) - 100(2)
[    6.104221] win[3]:102(2) - 131(1)
[    6.107632] win[4]:137(0) - 169(2)
[    6.111042] win[5]:171(2) - 200(1)
[    6.114450] win[6]:205(0) - 238(2)
[    6.117860] win[7]:240(2) - 255(1)
[    6.121269] ***********************************************
[    6.126846] **********Tuning values*********
[    6.131138] **estimated values**
[    6.134375] T2T_Vmax 57, T2T_Vmin 79, 1'st_hole_Vmax 47, UI_Vmax 87
[    6.140644] **Calculated values**
[    6.143966] T2T_Vmax 72, 1'st_hole_Vmax 32, UI_Vmax 69
[    6.149108] T2T_Vmin 72, 1'st_hole_Vmin 32, UI_Vmin 69
[    6.154248] ***********************************
[    6.158785] ***********final tuning windows**********
[    6.163844] win[0]: 11 - 24
[    6.166647] win[1]: 41 - 48
[    6.169450] win[2]: 80 - 88
[    6.172252] win[3]: 115 - 118
[    6.175228] win[4]: 150 - 153
[    6.178205] win[5]: 188 - 187
[    6.181181] win[6]: 218 - 217
[    6.184156] win[7]: 255 - 242
[    6.187131] ********************************
[    6.191406] best tap win - (11-24), best tap value 18 prev_best_tap 0
[    6.449683] usbcore: registered new interface driver snd-usb-audio
[    6.456427] MAX98090 driver built on Aug 12 2016 at 11:24:59
[    6.462739] tegra_offload_platform probe successfull.
[    6.470531] succefully registered offload opstegra30_avp_audio_platform_probe successful.
[    6.729528] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    6.737923] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    6.745462] **********Auto tuning windows*************
[    6.745465] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    6.745470] win[0]: 0(0) - 61(1)
[    6.745476] win[1]: 67(0) - 130(1)
[    6.745480] win[2]: 136(0) - 200(1)
[    6.745485] win[3]: 205(0) - 255(1)
[    6.745488] ***************************************
[    6.745504] ********tuning windows after inserting holes*****
[    6.745507] WIN_ATTR legend: 0-BOUN_ST, 1-BOUN_END, 2-HOLE
[    6.745511] win[0]:-2(0) - 31(2)
[    6.745515] win[1]:33(2) - 61(1)
[    6.745518] win[2]:67(0) - 100(2)
[    6.745522] win[3]:102(2) - 130(1)
[    6.745526] win[4]:136(0) - 169(2)
[    6.745529] win[5]:171(2) - 200(1)
[    6.745533] win[6]:205(0) - 238(2)
[    6.745536] win[7]:240(2) - 255(1)
[    6.745539] ***********************************************
[    6.745543] **********Tuning values*********
[    6.745545] **estimated values**
[    6.745549] T2T_Vmax 57, T2T_Vmin 79, 1'st_hole_Vmax 47, UI_Vmax 87
[    6.745551] **Calculated values**
[    6.745555] T2T_Vmax 72, 1'st_hole_Vmax 32, UI_Vmax 69
[    6.745558] T2T_Vmin 72, 1'st_hole_Vmin 32, UI_Vmin 69
[    6.745560] ***********************************
[    6.745566] ***********final tuning windows**********
[    6.745569] win[0]: 11 - 24
[    6.745572] win[1]: 41 - 48
[    6.745575] win[2]: 80 - 88
[    6.745578] win[3]: 115 - 117
[    6.745581] win[4]: 149 - 153
[    6.745584] win[5]: 188 - 187
[    6.745586] win[6]: 218 - 217
[    6.745589] win[7]: 255 - 242
[    6.745592] ********************************
[    6.745596] best tap win - (11-24), best tap value 18 prev_best_tap 18
[    6.745606] sdhci-tegra sdhci-tegra.3: sdhci_tegra_verify_best_tap: tuning freq 200000000hz, best tap 18
[    6.747914] mmc0: new HS200 MMC card at address 0001
[    6.748166] mmcblk mmc0:0001: Card claimed for testing.
[    6.748361] mmcblk0: mmc0:0001 SEM16G 14.6 GiB 
[    6.748515] mmcblk0boot0: mmc0:0001 SEM16G partition 1 4.00 MiB
[    6.748665] mmcblk0boot1: mmc0:0001 SEM16G partition 2 4.00 MiB
[    6.748820] mmcblk0rpmb: mmc0:0001 SEM16G partition 3 4.00 MiB
[    6.750926]  mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9
[    6.753972]  mmcblk0boot1: unknown partition table
[    6.755213]  mmcblk0boot0: unknown partition table
[    6.945108] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    6.953868] oprofile: using timer interrupt.
[    6.958247] GACT probability NOT on
[    6.961788] Mirror/redirect action on
[    6.965470] u32 classifier
[    6.968192]     Actions configured
[    6.971610] Netfilter messages via NETLINK v0.30.
[    6.976390] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[    6.982877] NF_TPROXY: Transparent proxy support initialized, version 4.1.0
[    6.989850] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
[    6.996195] xt_time: kernel timezone is -0000
[    7.000844] ip_tables: (C) 2000-2006 Netfilter Core Team
[    7.006360] arp_tables: (C) 2002 David S. Miller
[    7.011038] TCP: cubic registered
[    7.014545] NET: Registered protocol family 10
[    7.019807] mip6: Mobile IPv6
[    7.022821] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    7.028402] sit: IPv6 over IPv4 tunneling driver
[    7.034036] NET: Registered protocol family 17
[    7.038530] NET: Registered protocol family 15
[    7.043079] NET: Registered protocol family 35
[    7.047617] NET: Registered protocol family 37
[    7.052081] NET: Registered protocol family 41
[    7.057878] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[    7.089540] Registering SWP/SWPB emulation handler
[    7.094355] last reset is due to software reset
[    7.094355] 
[    7.100380] Disabling clocks left on by bootloader:
[    7.105249]    audio_2x
[    7.107712]    audio
[    7.109909]    audio4
[    7.112193]    audio3
[    7.114475]    audio2
[    7.116756]    audio1
[    7.119039]    audio0
[    7.121394]    hdmi_audio
[    7.124028]    entropy
[    7.126406]    dsi2-fixed
[    7.129035]    dsi1-fixed
[    7.131678]    nor
[    7.133703]    trace
[    7.135904]    sdmmc4_ddr
[    7.138603]    sdmmc1_ddr
[    7.141270]    cclk_lp
[    7.143644]    pll_x_out0
[    7.146286]    pll_m_out1
[    7.149048] tegra_dvfs: vdd_cpu connected to regulator
[    7.154239] tegra_dvfs: vdd_core connected to regulator
[    7.159531] tegra_dvfs: vdd_gpu connected to regulator
[    7.166040] cpu_cold cooling device is registered
[    7.171027] cpu_hot cooling device is registered
[    7.171148] Tegra CPU DFLL is initialized with use_dfll = 1
[    7.171208] CPU rate: 696 MHz
[    7.334394] tegra dvfs: tegra sysfs cap interface is initialized
[    7.340603] tegra dvfs: tegra sysfs gpu & emc interface is initialized
[    7.347618] tegra_actmon.emc: Completed initialization (0)
[    7.353323] tegra_actmon.avp: Completed initialization (0)
[    7.358930] tegra_mon.cpu_emc: Completed initialization (0)
[    7.366922] reg-aon-1v2: incomplete constraints, leaving on
[    7.372543] reg-aon-1v8: incomplete constraints, leaving on
[    7.378120] vdd-cdc-1v2-aud: incomplete constraints, leaving on
[    7.384166] reg-dcdc-1v2: incomplete constraints, leaving on
[    7.389830] reg-5v0-supply: incomplete constraints, leaving on
[    7.395703] usb1-usb2-vbus: incomplete constraints, leaving on
[    7.401539] usb0-vbus: incomplete constraints, leaving on
[    7.406979] vpp-fuse: incomplete constraints, leaving on
[    7.412310] as3722-ldo10: incomplete constraints, leaving on
[    7.417972] as3722-ldo9: incomplete constraints, leaving on
[    7.423548] as3722-ldo7: incomplete constraints, leaving on
[    7.429123] as3722-ldo6: incomplete constraints, leaving on
[    7.434698] as3722-ldo5: incomplete constraints, leaving on
[    7.440272] vin-ldo3-4: incomplete constraints, leaving on
[    7.445761] as3722-ldo1: incomplete constraints, leaving on
[    7.451337] as3722-sd3: incomplete constraints, leaving on
[    7.456825] reg-3v3-supply: incomplete constraints, leaving on
[    7.462659] vdd-3v3-aon: incomplete constraints, leaving on
[    7.468233] vdd-ac-bat: incomplete constraints, leaving on
[    7.473726] regulator-dummy: incomplete constraints, leaving on
[    7.730362] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    7.738622] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    7.746688] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    7.755441] gpio wake51 for gpio=128
[    7.759242] input: gpio-keys.4 as /devices/platform/gpio-keys.4/input/input1
[    7.767033] as3722-rtc as3722-rtc.1: setting system clock to 2000-01-01 00:05:09 UTC (946685109)
[    7.776599] ALSA device list:
[    7.779571]   #0: HDA NVIDIA Tegra at 0x70038000 irq 113
[    8.016951] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[    8.025152] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[    8.033164] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[    8.042178] EXT4-fs (mmcblk0p4): couldn't mount as ext3 due to feature incompatibilities
[    8.050759] EXT4-fs (mmcblk0p4): couldn't mount as ext2 due to feature incompatibilities
[    8.064164] EXT4-fs (mmcblk0p4): mounted filesystem with ordered data mode. Opts: (null)
[    8.072276] VFS: Mounted root (ext4 filesystem) on device 179:4.
[    8.080874] devtmpfs: mounted
[    8.084154] Freeing unused kernel memory: 508K (c0b19000 - c0b98000)
[    8.157850] systemd[1]: Failed to insert module 'autofs4'
[    8.173680] systemd[1]: systemd 219 running in system mode. (-PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT +GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    8.191894] systemd[1]: Detected architecture arm.

Welcome to test distribution 1.0.0 (test)!

[    8.203639] systemd[1]: Set hostname to <test>.
[    8.213198] systemd[1]: Initializing machine ID from random generator.
[    8.360551] systemd[1]: Cannot add dependency job for unit org.freedesktop.resolve1.busname, ignoring: Unit org.freedesktop.resolve1.busname failed to load: No such file or directory.
[  OK  ] Reached target Swap.
[    8.383167] systemd[1]: Reached target Swap.
[    8.387502] systemd[1]: Starting Swap.
[  OK  ] Created slice Root Slice.
[    8.396108] systemd[1]: Created slice Root Slice.
[    8.400864] systemd[1]: Starting Root Slice.
[  OK  ] Listening on Journal Socket.
[    8.411118] systemd[1]: Listening on Journal Socket.
[    8.416179] systemd[1]: Starting Journal Socket.
[  OK  ] Listening on Journal Socket (/dev/log).
[    8.427108] systemd[1]: Listening on Journal Socket (/dev/log).
[    8.433076] systemd[1]: Starting Journal Socket (/dev/log).
[  OK  ] Listening on Delayed Shutdown Socket.
[    8.444107] systemd[1]: Listening on Delayed Shutdown Socket.
[    8.449945] systemd[1]: Starting Delayed Shutdown Socket.
[    8.455605] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    8.463263] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[  OK  ] Listening on Syslog Socket.
[    8.476102] systemd[1]: Listening on Syslog Socket.
[    8.481068] systemd[1]: Starting Syslog Socket.
[  OK  ] Listening on networkd rtnetlink socket.
[    8.492105] systemd[1]: Listening on networkd rtnetlink socket.
[    8.498132] systemd[1]: Starting networkd rtnetlink socket.
[  OK  ] Listening on /dev/initctl Compatibility Named Pipe.
[    8.511101] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    8.518110] systemd[1]: Starting /dev/initctl Compatibility Named Pipe.
[    8.530721] systemd[1]: Listening on Journal Audit Socket.
[  OK  ] Listening on udev Control Socket.
[    8.542109] systemd[1]: Listening on udev Control Socket.
[    8.547650] systemd[1]: Starting udev Control Socket.
[  OK  ] Reached target Remote File Systems.
[    8.558109] systemd[1]: Reached target Remote File Systems.
[    8.563734] systemd[1]: Starting Remote File Systems.
[  OK  ] Created slice System Slice.
[    8.574119] systemd[1]: Created slice System Slice.
[    8.579133] systemd[1]: Starting System Slice.
[    8.585355] systemd[1]: Starting Journal Service...
         Starting Journal Service...
[  OK  ] Created slice system-getty.slice.
[    8.601160] systemd[1]: Created slice system-getty.slice.
[    8.606729] systemd[1]: Starting system-getty.slice.
[    8.613538] systemd[1]: Starting Setup Virtual Console...
         Starting Setup Virtual Console...
[    8.624444] systemd[1]: Mounted Huge Pages File System.
[    8.632789] systemd[1]: Started Load Kernel Modules.
[  OK  ] Created slice system-serial\x2dgetty.slice.
[    8.645156] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    8.651574] systemd[1]: Starting system-serial\x2dgetty.slice.
[    8.659312] systemd[1]: Mounting Debug File System...
         Mounting Debug File System...
[    8.669294] systemd[1]: Started File System Check on Root Device.
[  OK  ] Listening on udev Kernel Socket.
[    8.681144] systemd[1]: Listening on udev Kernel Socket.
[    8.686851] systemd[1]: Starting udev Kernel Socket.
[    8.693971] systemd[1]: Starting Remount Root and Kernel File Systems...
         Starting Remount Root and Kernel File Systems...
[  OK  ] Created slice User and Session Slice.
[    8.713201] systemd[1]: Created slice User and Session Slice.
[    8.719286] systemd[1]: Starting User and Session Slice.
[  OK  ] Reached target Slices.
[    8.729159] systemd[1]: Reached target Slices.
[    8.733761] systemd[1]: Starting Slices.
[    8.738910] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    8.747112] systemd[1]: Starting Dispatch Password Requests to Console Directory Watch.
[  OK  ] Reached target Paths.
[    8.759457] systemd[1]: Reached target Paths.
[    8.764258] systemd[1]: Starting Paths.
[    8.768859] systemd[1]: Mounted Configuration File System.
[    8.777955] systemd[1]: Mounting Temporary Directory...
         Mounting Temporary Directory...
[    8.790308] systemd[1]: Starting Apply Kernel Variables...
         Starting Apply Kernel Variables...
[    8.801375] systemd[1]: Mounted POSIX Message Queue File System.
[    8.810604] EXT4-fs (mmcblk0p4): re-mounted. Opts: (null)
[    8.811433] systemd[1]: Mounting FUSE Control File System...
         Mounting FUSE Control File System...
[    8.829690] systemd[1]: Starting Create list of required static device nodes for the current kernel...
         Starting Create list of required st... nodes for the current kernel...
[    8.849094] systemd[1]: Starting udev Coldplug all Devices...
         Starting udev Coldplug all Devices...
[  OK  ] Mounted FUSE Control File System.
[    8.869154] systemd[1]: Mounted FUSE Control File System.
[  OK  ] Mounted Debug File System.
[    8.880159] systemd[1]: Mounted Debug File System.
[  OK  ] Mounted Temporary Directory.
[    8.890165] systemd[1]: Mounted Temporary Directory.
[  OK  ] Started Journal Service.
[    8.901174] systemd[1]: Started Journal Service.
[  OK  ] Started Setup Virtual Console.
[  OK  ] Started Remount Root and Kernel File Systems.
[  OK  ] Started Apply Kernel Variables.
[  OK  ] Started Create list of required sta...ce nodes for the current kernel.
[  OK  ] Started udev Coldplug all Devices.
         Starting Rebuild Hardware Database...
         Starting Rebuild Dynamic Linker Cache...
         Starting Create System Users...
         Starting Flush Journal to Persistent Storage...
[    9.118994] systemd-journald[126]: Received request to flush runtime journal from PID 1
[  OK  ] Started Flush Journal to Persistent Storage.
[  OK  ] Started Create System Users.
         Starting Create Static Device Nodes in /dev...
[  OK  ] Started Create Static Device Nodes in /dev.
[  OK  ] Reached target Local File Systems (Pre).
         Mounting /var/volatile...
         Mounting /media...
[  OK  ] Mounted /var/volatile.
[  OK  ] Mounted /media.
[  OK  ] Reached target Local File Systems.
         Starting Rebuild Journal Catalog...
         Starting Create Volatile Files and Directories...
         Starting Load/Save Random Seed...
[  OK  ] Started Load/Save Random Seed.
[  OK  ] Started Create Volatile Files and Directories.
[  OK  ] Started Rebuild Journal Catalog.
[ TIME ] Timed out waiting for device dev-mmcblk1p1.device.
[DEPEND] Dependency failed for /opt/midas/userdata.
         Starting dpkg first boot configure...
         Starting Network Time Synchronization...
         Starting Update UTMP about System Boot/Shutdown...
[  OK  ] Started Network Time Synchronization.
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Reached target System Time Synchronized.
[  OK  ] Started Rebuild Dynamic Linker Cache.
[  OK  ] Started dpkg first boot configure.
[  OK  ] Started Rebuild Hardware Database.
         Starting Update is Completed...
         Starting udev Kernel Device Manager...
[  OK  ] Started Update is Completed.
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Reached target System Initialization.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Listening on dropbear.socket.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Reached target Timers.
[  OK  ] Listening on RPCbind Server Activation Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
[  OK  ] Started Xserver startup without a display manager.
         Starting Xserver startup without a display manager...
         Starting Avahi mDNS/DNS-SD Stack...
         Starting Login Service...
[  OK  ] Started System Logging Service.
         Starting System Logging Service...
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
         Starting D-Bus System Message Bus...
         Starting Network Service...
         Starting Setup TK1 for max performance via sysfs...
[  OK  ] Started Kernel Logging Service.
         Starting Kernel Logging Service...
         Starting Permit User Sessions...
[  OK  ] Started Setup TK1 for max performance via sysfs.
[  OK  ] Started Permit User Sessions.
[  OK  ] Found device /dev/ttyS0.
[  OK  ] Started Login Service.
[  OK  ] Started Network Service.
[   11.097527] sky2 0000:01:00.0 enp1s0: enabling interface
[   11.105465] IPv6: ADDRCONF(NETDEV_UP): enp1s0: link is not ready
[   11.142105] systemd[1]: Device dev-disk-by\x2duuid-7d64ed39\x2dff7f\x2d4300\x2d96d9\x2df11234c3fa0c.device appeared twice with different sysfs paths /sys/devices/platform/sdhci-tegra.3/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0p3 and /sys/devices/platform/sdhci-tegra.3/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0p2
[   11.196047] systemd[1]: Cannot add dependency job for unit org.freedesktop.resolve1.busname, ignoring: Unit org.freedesktop.resolve1.busname failed to load: No such file or directory.
         Starting Setup TK1 for max performance via sysfs...
[  OK  ] Stopped Setup TK1 for HDMI 1080p.
[  OK  ] Reached target Sound Card.
         Starting Network Name Resolution...
[  OK  ] Reached target Network.
[  OK  ] Started Getty on tty1.
         Starting Getty on tty1...
[  OK  ] Started Serial Getty on ttyS0.
         Starting Serial Getty on ttyS0...
[  OK  ] Reached target Login Prompts.
[  OK  ] Created slice system-systemd\x2dbacklight.slice.
         Starting Load/Save Screen Backlight...ss of backlight:pwm-backlight...
[  OK  ] Started Network Name Resolution.
[  OK  ] Started Setup TK1 for max performance via sysfs.
[  OK  ] Started Load/Save Screen Backlight ...ness of backlight:pwm-backlight.
[  OK  ] Reached target Multi-User System.
[   11.472023] tegradc tegradc.0: DSI: initializing panel p_wuxga_10_1
[   11.472128] p,wuxga-10-1 panel dt support not available
[   11.574517] tegradc tegradc.0: nominal-pclk:135666000 parent:406500000 div:3.0 pclk:135500000 134309340~147875940 type:2
[   11.664395] tegradc tegradc.0: DSI pad calibration done
[  OK  ] Reached target Graphical Interface.
[   11.754057] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   11.754091] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
         Starting Update UTMP about System Runlevel Changes...
         Starting Setup TK1 for HDMI 1080p...
[  OK  ] Started Update UTMP about System Runlevel Changes.
[   12.096871] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   12.096918] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
[   12.207886] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   12.207933] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.
[  OK  ] Started Setup TK1 for HDMI 1080p.
[ TIME ] Timed out waiting for device dev-mmcblk1p1.device.
[DEPEND] Dependency failed for /opt/midas/userdata.
[   12.291877] tegradc tegradc.1: nominal-pclk:148500000 parent:594000000 div:4.0 pclk:148500000 147015000~161865000 type:1
[   12.291917] tegra_dc_hdmi_enable: HDMI clock already configured to target frequency, skipping clk setup.


test distribution 1.0.0 test ttyS0

test login: [   13.819078] sky2 0000:01:00.0 enp1s0: Link is up at 1000 Mbps, full duplex, flow control both
[   13.827613] IPv6: ADDRCONF(NETDEV_CHANGE): enp1s0: link becomes ready


test distribution 1.0.0 test ttyS0

test login: root

root@test:~# modprobe wl12xx
[   34.126312] cfg80211: Calling CRDA to update world regulatory domain
root@test:~# iw dev
root@test:~# ls mo   mod
Module                  Size  Used by
wl12xx                 48426  0 
wlcore                164070  1 wl12xx
mac80211              351632  2 wl12xx,wlcore
cfg80211              348474  2 mac80211,wlcore
rfkill                  9649  1 cfg80211
root@test:~#

I’ve found why sdmmc1 didn’t work. The problem was in the devicetree it should be like that

sdmmc1_clk_pz0 {
				nvidia,pins = "sdmmc1_clk_pz0";
				nvidia,function = "sdmmc1";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};

But I’ve set the enable-input=<TEGRA_PIN_DISABLE>, as I believed that way it would be an output.

So, sdmmc1 seems like working now. Therefore, I’ve seen also the sdmmc2 pins and these seem to be correct but I’m posting theme here to be sure.

pk1 {
				nvidia,pins = "pk1";
				nvidia,function = "sdmmc2";
				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};

			ph7 {
				nvidia,pins = "ph7",
								"ph4",
								"ph5",
								"ph6",
								"pi5";
				nvidia,function = "sdmmc2";
				nvidia,pull = <TEGRA_PIN_PULL_UP>;
				nvidia,tristate = <TEGRA_PIN_DISABLE>;
				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			};

Hi dimtass,
For sdmmc pins, the following can be considered as the general guidelines w.r.t pinmux settings. All data lines should have pull-ups enabled. No pull-up/pull-down for clock line. For cmd line, pull-up/pull-down depends on the device used. Please refer to section 29.7.1.3(SDMMC2A pinmux settings) in the Technical reference manual for more details.

The above settings are fine. Apart from adding the pinmux settings, you also need to remove them from unused_lowpower pins group in the dtsi file. If not, the pins might be put in low power state and device will not work.

Regarding E_INPUT, SDMMC controller has feedback clock enabled by default(29.8.2.1 - SDMMC_VENDOR_CLOCK_CNTRL_0 register). Feedback clock helps in proper sampling of data. Hence, E_INPUT has to be enabled for the pin used as SDMMC clock line.

Hi kkpavan,

thanks for the info!
The sdmmc2 pins for clk, cmd and data are in the ‘pinmux_default: common {}’ part of the pinmux.dtsi file. Other than that, if the rest are correct then there must be something, somewhere. I’ll try to debug it more and see.

thanks again!

I’ve also made the sdmmc2 to work. The problem was in that there was an entry ‘TEGRA_GPIO(K, 1)’ in tegra124-gpio.dtsi

Well, I know that this seems simple fix, but it’s really frustrating that the gpios are scattered between different files as also that it’s not clear which devices and parameters of the device-tree are really implemented and which are only hardcoded in the kernel.

Anyway, I’ve followed the code from the link that b2 has gave me.
http://nv-tegra.nvidia.com/gitweb/?p=linux-2.6.git;a=blob;f=arch/arm/mach-tegra/board-tegratab-sdhci.c;h=08320d6811858d119983222b7d68c8831bf2aa93;hb=refs/heads/rel-tegranote-r2

With this code everything compiles just fine and I don’t get kernel oops. On the other hand the kernel doesn’t seem to recognize the wl12xx module and it doesn’t try to load any driver. If I try to manually load the driver then it loads, but no device is really registered so ‘iw dev’ doesn’t return any devices. Therefore, it seems that a link between the interface and the driver is missing and this probably has to do with naming something to “wl12xx”, which kicks off the driver. I’ve tried to re-name the ‘platform_device tegra_sdhci_device1’ from ‘sdhci-tegra’ to ‘wl12xx’. This kicks the driver load but the kernel crashes. I’ve also tried to create a second device like that

static struct wl12xx_platform_data wl12xx_wlan_data = {
		/* COM6 (127x) uses FREF */
		.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
		/* COM7 (128x) uses TCXO */
		.board_tcxo_clock = WL12XX_TCXOCLOCK_38_4,
		.set_power	= wl12xx_set_power,
		.set_carddetect = wl12xx_set_carddetect,
};

static struct resource wl1271_wifi_resource[] = {
	[0] = {
		.name   = "wl1271_wlan_irq",
		.flags  = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_SHAREABLE,
	},
};

static struct platform_device wl1271_wifi_device = {
	.name           = "wl12xx",
	.id             = 1,
	.num_resources  = 1,
	.resource       = wl1271_wifi_resource,
	.dev            = {
		.platform_data = &wl12xx_wlan_data,
	},
};

static struct platform_device tegra_sdhci_device1 = {
	.name		= "sdhci-tegra",
	.id		= 1,
	.resource	= sdhci_resource1,
	.num_resources	= ARRAY_SIZE(sdhci_resource1),
	.dev = {
		.platform_data = &tegra_sdhci_platform_data1,
	},
};

static int __init wl12xx_wlan_init(void)
{
	int rc;
	pr_info("==== wl1271 wl12xx_set_platform_data\n");

	rc = gpio_request(WL12XX_WLAN_PWR, "wlan_power");
	if (rc)
		pr_err("WLAN_PWR gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_WLAN_RST, "wlan_rst");
	if (rc)
		pr_err("WLAN_RST gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_WLAN_WOW, "bcmsdh_sdmmc");
	if (rc)
		pr_err("WLAN_WOW gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_BT_PWR, "bt_power");
	if (rc)
		pr_err("BT_PWR gpio request failed:%d\n", rc);

	rc = gpio_direction_output(WL12XX_WLAN_PWR, 0);
	if (rc)
		pr_err("WLAN_PWR gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_output(WL12XX_WLAN_RST, 0);
	if (rc)
		pr_err("WLAN_RST gpio direction configuration failed:%d\n", rc);

	rc = gpio_direction_input(WL12XX_WLAN_WOW);
	if (rc)
		pr_err("WLAN_WOW gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_input(WL12XX_BT_PWR);
	if (rc)
		pr_err("BT_PWR gpio direction configuration failed:%d\n", rc);

	/* Pass the wl12xx platform data information to the wl12xx driver */
	wl12xx_wlan_data.irq = gpio_to_irq(WL12XX_WLAN_WOW);
	if (wl12xx_set_platform_data(&wl12xx_wlan_data)) {
		pr_err("Error setting wl12xx data\n");
		return -1;
	}

	wl1271_wifi_resource[0].start = wl1271_wifi_resource[0].end =
		gpio_to_irq(WL12XX_WLAN_WOW);
	platform_device_register(&wl1271_wifi_device);

	pr_info("==== gpio_to_irq(WL12XX_WLAN_WOW)=%d\n", wl12xx_wlan_data.irq);

	return 0;
}

This is how the 21.5 kernel handles the marvel sdio interface. The result is again that the kernel kicks the driver load automatically but again I get the same kernel crush. Therefore, this would mean 2 possible problems. First, I don’t do it the proper way, or second it’s a drivers bug. Probably it’s the first one.

This is the error log I get.

[   11.412101] cfg80211: Calling CRDA to update world regulatory domain
[  OK  ] Stopped Setup TK1 for HDMI 1080p.
[   11.513238] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: (null)
[   11.588002] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[   11.596470] pgd = c0004000
[   11.599289] EXT4-fs (mmcblk0p8): mounted filesystem with ordered data mode. Opts: (null)
[   11.599683] [00000000] *pgd=00000000
[   11.599695] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[   11.599718] Modules linked in: wl12xx wlcore mac80211 cfg80211 rfkill
[   11.599727] CPU: 2 PID: 31 Comm: kworker/2:1 Not tainted 3.10.40+ #8
[   11.599751] Workqueue: events request_firmware_work_func
[   11.599756] task: edb7fac0 ti: edba0000 task.ti: edba0000
[   11.599770] PC is at wl12xx_setup+0x29c/0x35c [wl12xx]
[   11.599774] LR is at 0xec562160
[   11.599783] pc : [<bf135ca4>]    lr : [<ec562160>]    psr: 600b0013
[   11.599783] sp : edba1e98  ip : bf13b310  fp : 00000000
[   11.599787] r10: 00000008  r9 : c005683c  r8 : ec562140
[   11.599792] r7 : 00000000  r6 : bf13f850  r5 : 00000000  r4 : ece84e40
[   11.599797] r3 : 00000000  r2 : 46010100  r1 : 00000000  r0 : bf13dd7c
[   11.599804] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[   11.599810] Control: 10c5387d  Table: accf806a  DAC: 00000015
[   11.599815] 
[   11.599815] LR: 0xec5620e0:
[   11.599837] 20e0  00000032 00000033 00000034 00000035 00000036 00000037 00000038 00000039
[   11.599855] 2100  0000003a ffffffff 00000000 00000000 00000000 00000000 00000000 00000000
[   11.599872] 2120  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.599890] 2140  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[   11.599908] 2160  0000001b 0a00003a e3040e7c 00000000 00000000 00000000 00000000 00000000
[   11.599925] 2180  30796870 00200200 c0c155a0 ec56218c ec56218c 00000000 ec562198 ec562198
[   11.599942] 21a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.599959] 21c0  76697264 ec007265 c02c9ca0 00000000 ec562180 00000000 00000000 00000000
[   11.599964] 
[   11.599964] SP: 0xedba1e18:
[   11.599981] 1e18  ec4dbe40 c01ab758 ed47f448 00000000 ec5b9e1c 00000000 ec5b9e1c c01abb90
[   11.599998] 1e38  bf135ca4 600b0013 ffffffff edba1e84 ec562140 c000eb58 bf13dd7c 00000000
[   11.600015] 1e58  46010100 00000000 ece84e40 00000000 bf13f850 00000000 ec562140 c005683c
[   11.600033] 1e78  00000008 00000000 bf13b310 edba1e98 ec562160 bf135ca4 600b0013 ffffffff
[   11.600051] 1e98  bf135a08 ece84e40 edb11840 00000000 c0c15590 c0c15550 c005683c c1e06e05
[   11.600069] 1eb8  edba0008 bf103344 bf117cc4 c0d6ccf0 c0ce265c ec4dbf00 edb11840 c0ce25f8
[   11.600086] 1ed8  c1e03040 c1e06e00 00000000 c1e06e05 edba0008 c041c508 00000001 c00836d4
[   11.600103] 1ef8  ec4dbf00 00000000 ec4dbf00 c00836f8 edb11840 c1e03040 edb11858 00000000
[   11.600106] 
[   11.600106] R4: 0xece84dc0:
[   11.600123] 4dc0  ece84dc0 ece84dc0 ffffffe0 ece84dcc ece84dcc bf08e710 ffffffe0 ece84ddc
[   11.600140] 4de0  ece84ddc bf08eea4 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600158] 4e00  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600175] 4e20  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600193] 4e40  00000000 ece843e0 00000000 c0c155a0 c0c15590 00000000 00000000 00000000
[   11.600210] 4e60  00000000 00000000 00000000 00000000 00000000 00000000 00000001 00000000
[   11.600227] 4e80  ece84e80 ece84e80 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600245] 4ea0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600248] 
[   11.600248] R8: 0xec5620c0:
[   11.600264] 20c0  0000002a 0000002b 0000002c 0000002d 0000002e 0000002f 00000030 00000031
[   11.600281] 20e0  00000032 00000033 00000034 00000035 00000036 00000037 00000038 00000039
[   11.600298] 2100  0000003a ffffffff 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600315] 2120  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600332] 2140  00000000 00000000 00000000 00000000 00000000 00000000 46010100 16640128
[   11.600349] 2160  0000001b 0a00003a e3040e7c 00000000 00000000 00000000 00000000 00000000
[   11.600366] 2180  30796870 00200200 c0c155a0 ec56218c ec56218c 00000000 ec562198 ec562198
[   11.600383] 21a0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600386] 
[   11.600386] R9: 0xc00567bc:
[   11.600403] 67bc  1a00000d e3a01001 e3a00004 eb09e6f1 e3a00093 e3a01001 eb09fa8d e1a01004
[   11.600420] 67dc  e3a00093 eb0a0071 e3a00032 e1a01004 eb0a006e e1a00004 e8bd8010 e30408ec
[   11.600437] 67fc  e3071b98 e34c1080 e34c009d eb1e9209 eafffff7 e52de004 e8bd4000 e30f3834
[   11.600455] 681c  e34c30cf e5932000 e3520000 05830000 05831004 01a00002 13e0000a e12fff1e
[   11.600472] 683c  e92d4070 e52de004 e8bd4000 e2505000 0a00003a e3040e7c e30513d0 e30f6834
[   11.600489] 685c  e34c009d e34c10a3 e34c60cf eb1e91f1 e5960008 e1550000 0a00002f e3a000d8
[   11.600507] 687c  e3a01001 e5865008 eb09fa61 e30c4cf8 e3a05064 e34c40c7 e30f0cc8 e5943004
[   11.600525] 689c  e3430fff e12fff33 e2555001 1afffff9 e1a01005 e3a000d8 eb09fa55 e3a05064
[   11.600530] Process kworker/2:1 (pid: 31, stack limit = 0xedba0238)
[   11.600535] Stack: (0xedba1e98 to 0xedba2000)
[   11.600542] 1e80:                                                       bf135a08 ece84e40
[   11.600550] 1ea0: edb11840 00000000 c0c15590 c0c15550 c005683c c1e06e05 edba0008 bf103344
[   11.600556] 1ec0: bf117cc4 c0d6ccf0 c0ce265c ec4dbf00 edb11840 c0ce25f8 c1e03040 c1e06e00
[   11.600563] 1ee0: 00000000 c1e06e05 edba0008 c041c508 00000001 c00836d4 ec4dbf00 00000000
[   11.600570] 1f00: ec4dbf00 c00836f8 edb11840 c1e03040 edb11858 00000000 edba0000 edb11840
[   11.600577] 1f20: c1e03040 edb11858 c1e03054 edba0000 c0ce1ff0 00000009 c1e03040 c008443c
[   11.600583] 1f40: edb7fac0 edba0000 ed811ea8 edb11840 c0084308 00000000 00000000 00000000
[   11.600590] 1f60: 00000000 c008a978 c0c719f0 00000000 ee26ba80 edb11840 00000000 00000000
[   11.600597] 1f80: edba1f80 edba1f80 00000000 00000000 edba1f90 edba1f90 ed811ea8 c008a8a4
[   11.600603] 1fa0: 00000000 00000000 00000000 c000f098 00000000 00000000 00000000 00000000
[   11.600610] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.600616] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[   11.600652] [<bf135ca4>] (wl12xx_setup+0x29c/0x35c [wl12xx]) from [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore])
[   11.600676] [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore]) from [<c041c508>] (request_firmware_work_func+0x40/0x60)
[   11.600702] [<c041c508>] (request_firmware_work_func+0x40/0x60) from [<c00836f8>] (process_one_work+0x114/0x440)
[   11.600717] [<c00836f8>] (process_one_work+0x114/0x440) from [<c008443c>] (worker_thread+0x134/0x3bc)
[   11.600733] [<c008443c>] (worker_thread+0x134/0x3bc) from [<c008a978>] (kthread+0xd4/0xd8)
[   11.600750] [<c008a978>] (kthread+0xd4/0xd8) from [<c000f098>] (ret_from_fork+0x14/0x20)
[   11.600760] Code: e5883028 e598302c e30d0d7c e34b0f13 (e8930006) 
[   11.600800] ---[ end trace 2293129022810c89 ]---
[   11.615821] Unable to handle kernel paging request at virtual address ffffffec
[   11.615824] pgd = c0004000
[   11.615836] [ffffffec] *pgd=ae7f6821, *pte=00000000, *ppte=00000000
[   11.615842] Internal error: Oops: 17 [#2] PREEMPT SMP ARM
[   11.615859] Modules linked in: wl12xx wlcore mac80211 cfg80211 rfkill
[   11.615866] CPU: 2 PID: 31 Comm: kworker/2:1 Tainted: G      D      3.10.40+ #8
[   11.615881] task: edb7fac0 ti: edba0000 task.ti: edba0000
[   11.615890] PC is at kthread_data+0xc/0x14
[   11.615898] LR is at wq_worker_sleeping+0x14/0xc8
[   11.615905] pc : [<c008afd8>]    lr : [<c00849c0>]    psr: 000b0193
[   11.615905] sp : edba1b58  ip : 00000000  fp : edba1c14
[   11.615909] r10: c0b974c0  r9 : c0bce4e8  r8 : edb7fda0
[   11.615914] r7 : c0bce4e8  r6 : 00000002  r5 : edb7fac0  r4 : 00000002
[   11.615918] r3 : 00000000  r2 : 00000000  r1 : 00000002  r0 : edb7fac0
[   11.615923] Flags: nzcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
[   11.615929] Control: 10c5387d  Table: accf806a  DAC: 00000015
[   11.615931] 
[   11.615931] PC: 0xc008af58:
[   11.615951] af58  e5934010 e3540000 0a000006 e5943000 e5940004 e1a01005 e12fff33 e5b43008
[   11.615969] af78  e3530000 1afffff9 e3c6603f e5963004 e2433001 e5863004 e5963000 e3130002
[   11.615986] af98  0affffca eb1dd21c eaffffc8 e52de004 e8bd4000 e1a0300d e3c33d7f e3c3303f
[   11.616003] afb8  e593300c e59332b4 e513001c e7e00150 e12fff1e e52de004 e8bd4000 e59032b4
[   11.616021] afd8  e5130014 e12fff1e e52de004 e24dd00c e52de004 e8bd4000 e59012b4 e28d0008
[   11.616038] aff8  e3a03000 e3a02004 e2411014 e5203004 eb01f500 e59d0004 e28dd00c e49df004
[   11.616054] b018  e52de004 e8bd4000 e1a0300d e3c33d7f e3c3303f e593300c e59302b4 e240001c
[   11.616072] b038  eafffdbb e52de004 e8bd4000 e3a00000 e12fff1e e52de004 e8bd4000 e59012b4
[   11.616075] 
[   11.616075] LR: 0xc0084940:
[   11.616093] 4940  e1a04000 e3130f72 18bd8038 e5903024 e5932004 e1520005 1a000006 e2832c02
[   11.616110] 4960  e1921f9f e2811001 e1820f91 e3300000 1afffffa e8bd8038 e3015ff0 e34c50ce
[   11.616127] 4980  e5d52023 e3520000 1afffff3 e3090a0c e3001326 e34c009d ebff7c92 e3a02001
[   11.616144] 49a0  e5943024 e5c52023 eaffffeb e92d4038 e52de004 e8bd4000 e1a04001 eb001982
[   11.616161] 49c0  e590302c e3130f72 1a00001f e1a0300d e3c32d7f e3c2203f e5903024 e5922014
[   11.616178] 49e0  e1540002 1a000013 e2832c02 f57ff05f e1921f9f e2411001 e1820f91 e3300000
[   11.616195] 4a00  1afffffa f57ff05f e3510000 1a00000e e5931014 e2832014 e1510002 0a00000a
[   11.616212] 4a20  e5b32024 e1520003 13520000 0a000006 e5920020 e8bd8038 e3015ff0 e34c50ce
[   11.616215] 
[   11.616215] SP: 0xedba1ad8:
[   11.616233] 1ad8  edb7faf8 c009e688 ed72ba80 c00a05b4 0000544f c00a03f8 00000000 c1e03518
[   11.616249] 1af8  c008afd8 000b0193 ffffffff edba1b44 edb7fda0 c000eb58 edb7fac0 00000002
[   11.616266] 1b18  00000000 00000000 00000002 edb7fac0 00000002 c0bce4e8 edb7fda0 c0bce4e8
[   11.616283] 1b38  c0b974c0 edba1c14 00000000 edba1b58 c00849c0 c008afd8 000b0193 ffffffff
[   11.616301] 1b58  0420806c c1e034c0 edb7fac0 c07ff1e0 00000000 c0c98a2c 00000004 600b0193
[   11.616318] 1b78  c03bd09c c0ce2024 c0b94700 edba1bb4 c0068a0c c03bc1c4 c0bcd488 c0bcd448
[   11.616336] 1b98  edb7fd1c c008c6c4 c0ce265c edba0028 00000000 c00da130 00000000 c0086574
[   11.616353] 1bb8  00000001 c00da130 edb7fac0 c0068270 edb7fac0 edb7e544 00000000 c006828c
[   11.616357] 
[   11.616357] FP: 0xedba1b94:
[   11.616374] 1b94  c0bcd448 edb7fd1c c008c6c4 c0ce265c edba0028 00000000 c00da130 00000000
[   11.616390] 1bb4  c0086574 00000001 c00da130 edb7fac0 c0068270 edb7fac0 edb7e544 00000000
[   11.616407] 1bd4  c006828c edb7fac0 c00682c4 edb7ff50 c00da130 edb7fac0 c0068720 edba1bf0
[   11.616424] 1bf4  edba19c4 edb7fac0 edb7fd1c edb7fab8 edba0000 ee08ca40 edb7fd1c edb7fab8
[   11.616441] 1c14  c0068a0c 00000000 00000001 00800080 edb7fd64 00810081 edba1c28 c0c6f2c0
[   11.616459] 1c34  edba0000 c0bd79dc 0000000b bf135ca8 00000001 bf135ca6 c09c6ad0 c0cf7544
[   11.616475] 1c54  c001311c edba0238 0000000b 00000000 600b0113 c0bd79dc 00000000 00000000
[   11.616492] 1c74  00000008 38383565 38323033 39356520 32303338 33652063 64306430 65206337
[   11.616495] 
[   11.616495] R0: 0xedb7fa40:
[   11.616513] fa40  edb7fa3c 00000000 00000000 00000000 00000001 00000000 edb7fa58 edb7fa58
[   11.616531] fa60  00000000 00000000 edb7fa68 edb7fa68 00000000 00000000 00000000 00000000
[   11.616548] fa80  00000000 00000000 00000000 00000020 00000000 0000c350 0000c350 00000000
[   11.616564] faa0  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[   11.616581] fac0  00000040 edba0000 00000002 0420806c 00000000 00000000 00000000 00000001
[   11.616598] fae0  00000000 00000078 00000078 00000078 00000000 c0812958 00000400 00400000
[   11.616616] fb00  00000001 00000000 00000000 edb7fb0c edb7fb0c 00000000 b45b313e 00000002
[   11.616633] fb20  01df8389 00000000 f02eef22 00000000 01ded127 00000000 00000001 00000000
[   11.616637] 
[   11.616637] R5: 0xedb7fa40:
[   11.616654] fa40  edb7fa3c 00000000 00000000 00000000 00000001 00000000 edb7fa58 edb7fa58
[   11.616671] fa60  00000000 00000000 edb7fa68 edb7fa68 00000000 00000000 00000000 00000000
[   11.616687] fa80  00000000 00000000 00000000 00000020 00000000 0000c350 0000c350 00000000
[   11.616704] faa0  00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000
[   11.616721] fac0  00000040 edba0000 00000002 0420806c 00000000 00000000 00000000 00000001
[   11.616738] fae0  00000000 00000078 00000078 00000078 00000000 c0812958 00000400 00400000
[   11.616754] fb00  00000001 00000000 00000000 edb7fb0c edb7fb0c 00000000 b45b313e 00000002
[   11.616772] fb20  01df8389 00000000 f02eef22 00000000 01ded127 00000000 00000001 00000000
[   11.616774] 
[   11.616774] R7: 0xc0bce468:
[   11.616792] e468  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.616808] e488  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.616825] e4a8  000003e8 00009000 0000000f c1e12100 0000002c c1e120c0 c1e12080 00000009
[   11.616842] e4c8  c1dee000 00000004 c1e12000 c1e12040 00000001 00001000 00000000 00000003
[   11.616859] e4e8  0125a000 01263000 0126c000 01275000 00048aff 00000001 000ae7e1 000fdeff
[   11.616875] e508  0000eae2 00002000 00000000 00000032 0000fffa 00000001 00000000 00000000
[   11.616892] e528  ee016c40 ee01d690 00000001 00000001 ed6ebdc0 00000011 c1e16200 0001ffff
[   11.616910] e548  ee016d40 ee016dc0 00000064 ee016cc0 00000010 c1e96200 0000ffff 00100000
[   11.616913] 
[   11.616913] R8: 0xedb7fd20:
[   11.616930] fd20  edb7fd1c edb7fd24 edb7fd24 edb7fac0 edb7fd30 edb7fd30 edb7fd38 edb7fd38
[   11.616948] fd40  00000000 00200200 00000000 edaf430c 00200200 00000000 edaf4318 00200200
[   11.616964] fd60  00000000 edb7fd64 00200200 ed97528c 00200200 00000000 00000000 00000000
[   11.616981] fd80  00000000 00000006 00000000 00000006 00000000 00000000 00000000 00000074
[   11.616997] fda0  00000003 00000000 043b5fc0 00000000 043b5fc0 00000000 00000000 00000000
[   11.617015] fdc0  00000000 00000000 00000000 00000000 edb7fdd0 edb7fdd0 edb7fdd8 edb7fdd8
[   11.617032] fde0  edb7fde0 edb7fde0 edaf5dc0 edaf5dc0 726f776b 2f72656b 00313a32 00000000
[   11.617049] fe00  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.617052] 
[   11.617052] R9: 0xc0bce468:
[   11.617069] e468  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.617085] e488  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.617102] e4a8  000003e8 00009000 0000000f c1e12100 0000002c c1e120c0 c1e12080 00000009
[   11.617119] e4c8  c1dee000 00000004 c1e12000 c1e12040 00000001 00001000 00000000 00000003
[   11.617142] e4e8  0125a000 01263000 0126c000 01275000 00048aff 00000001 000ae7e1 000fdeff
[   11.617158] e508  0000eae2 00002000 00000000 00000032 0000fffa 00000001 00000000 00000000
[   11.617176] e528  ee016c40 ee01d690 00000001 00000001 ed6ebdc0 00000011 c1e16200 0001ffff
[   11.617192] e548  ee016d40 ee016dc0 00000064 ee016cc0 00000010 c1e96200 0000ffff 00100000
[   11.617195] 
[   11.617195] R10: 0xc0b97440:
[   11.617213] 7440  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617231] 7460  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617248] 7480  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617265] 74a0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617282] 74c0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617299] 74e0  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617317] 7500  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617333] 7520  e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
[   11.617338] Process kworker/2:1 (pid: 31, stack limit = 0xedba0238)
[   11.617342] Stack: (0xedba1b58 to 0xedba2000)
[   11.617348] 1b40:                                                       0420806c c1e034c0
[   11.617356] 1b60: edb7fac0 c07ff1e0 00000000 c0c98a2c 00000004 600b0193 c03bd09c c0ce2024
[   11.617363] 1b80: c0b94700 edba1bb4 c0068a0c c03bc1c4 c0bcd488 c0bcd448 edb7fd1c c008c6c4
[   11.617370] 1ba0: c0ce265c edba0028 00000000 c00da130 00000000 c0086574 00000001 c00da130
[   11.617377] 1bc0: edb7fac0 c0068270 edb7fac0 edb7e544 00000000 c006828c edb7fac0 c00682c4
[   11.617384] 1be0: edb7ff50 c00da130 edb7fac0 c0068720 edba1bf0 edba19c4 edb7fac0 edb7fd1c
[   11.617391] 1c00: edb7fab8 edba0000 ee08ca40 edb7fd1c edb7fab8 c0068a0c 00000000 00000001
[   11.617398] 1c20: 00800080 edb7fd64 00810081 edba1c28 c0c6f2c0 edba0000 c0bd79dc 0000000b
[   11.617405] 1c40: bf135ca8 00000001 bf135ca6 c09c6ad0 c0cf7544 c001311c edba0238 0000000b
[   11.617412] 1c60: 00000000 600b0113 c0bd79dc 00000000 00000000 00000008 38383565 38323033
[   11.617419] 1c80: 39356520 32303338 33652063 64306430 65206337 30623433 20333166 39386528
[   11.617425] 1ca0: 30303033 00202936 00000000 c07fb070 c0a1af3c 00000000 00000005 edba1e50
[   11.617432] 1cc0: 00000000 00000005 00000000 00000008 00000000 c07f96c4 edb7fac0 c001ea3c
[   11.617439] 1ce0: 00000020 00000002 0000000a 00000001 ffffffff 00000000 00000000 00000000
[   11.617446] 1d00: 00000000 c00a48ac ed3d511a edba1d4c ed3d5884 edba1e20 00000004 c02aeba4
[   11.617453] 1d20: c1e034c0 00000000 0000000a 00000004 ffffffff 00000000 00000000 00000000
[   11.617460] 1d40: 00000000 c07ff000 400f0093 c018d100 ed17eac0 c018d0c8 000000c3 ed3b8738
[   11.617466] 1d60: 00000000 ed3b8744 000000c3 c0093578 00000001 ed3b8740 00000001 00000001
[   11.617473] 1d80: 000000c3 c0095740 00000000 c0bd865c 00000005 00000000 edba1e50 ec562140
[   11.617479] 1da0: c005683c 00000008 00000000 c000839c 00000000 00000000 00000001 ed093230
[   11.617486] 1dc0: 00000000 c06e2788 ed093230 c01ab5c4 c0d84e58 c06e2788 ff0a0004 00000000
[   11.617492] 1de0: 00000000 ed0c99c8 edba1e00 00000000 edba1e20 c01ab5c4 00000000 00000000
[   11.617500] 1e00: edba1e00 edba1e00 00000000 ed0c99c8 ed47f448 ed0c99c8 ec4dbe40 c01ab758
[   11.617507] 1e20: ed47f448 00000000 ec5b9e1c 00000000 ec5b9e1c c01abb90 bf135ca4 600b0013
[   11.617514] 1e40: ffffffff edba1e84 ec562140 c000eb58 bf13dd7c 00000000 46010100 00000000
[   11.617521] 1e60: ece84e40 00000000 bf13f850 00000000 ec562140 c005683c 00000008 00000000
[   11.617528] 1e80: bf13b310 edba1e98 ec562160 bf135ca4 600b0013 ffffffff bf135a08 ece84e40
[   11.617535] 1ea0: edb11840 00000000 c0c15590 c0c15550 c005683c c1e06e05 edba0008 bf103344
[   11.617542] 1ec0: bf117cc4 c0d6ccf0 c0ce265c ec4dbf00 edb11840 c0ce25f8 c1e03040 c1e06e00
[   11.617549] 1ee0: 00000000 c1e06e05 edba0008 c041c508 00000001 c00836d4 ec4dbf00 00000000
[   11.617556] 1f00: ec4dbf00 c00836f8 edb11840 c1e03040 edb11858 00000000 edba0000 edb11840
[   11.617563] 1f20: c1e03040 edb11858 c1e03054 edba0000 c0ce1ff0 00000009 c1e03040 c008443c
[   11.617570] 1f40: edb7fac0 edba0000 ed811ea8 edb11840 c0084308 00000000 00000000 00000000
[   11.617577] 1f60: 00000000 c008a978 c0c719f0 00000000 ee26ba80 edb11840 00000000 00000000
[   11.617585] 1f80: edba1f80 edba1f80 00000001 00010001 edba1f90 edba1f90 ed811ea8 c008a8a4
[   11.617591] 1fa0: 00000000 00000000 00000000 c000f098 00000000 00000000 00000000 00000000
[   11.617598] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   11.617604] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[   11.617620] [<c008afd8>] (kthread_data+0xc/0x14) from [<c00849c0>] (wq_worker_sleeping+0x14/0xc8)
[   11.617637] [<c00849c0>] (wq_worker_sleeping+0x14/0xc8) from [<c07ff1e0>] (__schedule+0x5e4/0x8e0)
[   11.617651] [<c07ff1e0>] (__schedule+0x5e4/0x8e0) from [<c0068a0c>] (do_exit+0x608/0x93c)
[   11.617668] [<c0068a0c>] (do_exit+0x608/0x93c) from [<c001311c>] (die+0x228/0x3f0)
[   11.617685] [<c001311c>] (die+0x228/0x3f0) from [<c07f96c4>] (__do_kernel_fault.part.11+0x6c/0x7c)
[   11.617699] [<c07f96c4>] (__do_kernel_fault.part.11+0x6c/0x7c) from [<c001ea3c>] (do_page_fault+0x40c/0x418)
[   11.617710] [<c001ea3c>] (do_page_fault+0x40c/0x418) from [<c000839c>] (do_DataAbort+0x40/0xa0)
[   11.617721] [<c000839c>] (do_DataAbort+0x40/0xa0) from [<c000eb58>] (__dabt_svc+0x38/0x60)
[   11.617726] Exception stack(0xedba1e50 to 0xedba1e98)
[   11.617732] 1e40:                                     bf13dd7c 00000000 46010100 00000000
[   11.617739] 1e60: ece84e40 00000000 bf13f850 00000000 ec562140 c005683c 00000008 00000000
[   11.617745] 1e80: bf13b310 edba1e98 ec562160 bf135ca4 600b0013 ffffffff
[   11.617762] [<c000eb58>] (__dabt_svc+0x38/0x60) from [<bf135ca4>] (wl12xx_setup+0x29c/0x35c [wl12xx])
[   11.617786] [<bf135ca4>] (wl12xx_setup+0x29c/0x35c [wl12xx]) from [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore])
[   11.617809] [<bf103344>] (wlcore_nvs_cb+0x5c/0x9c0 [wlcore]) from [<c041c508>] (request_firmware_work_func+0x40/0x60)
[   11.617824] [<c041c508>] (request_firmware_work_func+0x40/0x60) from [<c00836f8>] (process_one_work+0x114/0x440)
[   11.617837] [<c00836f8>] (process_one_work+0x114/0x440) from [<c008443c>] (worker_thread+0x134/0x3bc)
[   11.617849] [<c008443c>] (worker_thread+0x134/0x3bc) from [<c008a978>] (kthread+0xd4/0xd8)
[   11.617862] [<c008a978>] (kthread+0xd4/0xd8) from [<c000f098>] (ret_from_fork+0x14/0x20)
[   11.617870] Code: e12fff1e e52de004 e8bd4000 e59032b4 (e5130014) 
[   11.617876] ---[ end trace 2293129022810c8a ]---
[   11.635870] Fixing recursive fault but reboot is needed!
[   11.835815] tegra-snd-rt5639 tegra-snd-rt5639.0: ASoC: CODEC rt5639.0-001c not registered
[   11.835874] tegra-snd-rt5639 tegra-snd-rt5639.0: snd_soc_register_card failed (-517)
[   11.836360] platform tegra-snd-rt5639.0: Driver tegra-snd-rt5639 requests probe deferral
[ TIME ] Timed out waiting for device dev-mmcblk1p1.device.
[  OK  ] Reached target Local File Systems.
         Starting Rebuild Journal Catalog...

Hi dimtass,

  1. I’ve also made the sdmmc2 to work.
    Did SDIO enumerate successfully? Are the power rails to Wifi chip enabled properly? Would it be possible to share the working SDMMC2 log?

  2. I’ve tried to re-name the ‘platform_device tegra_sdhci_device1’ from ‘sdhci-tegra’ to ‘wl12xx’.
    I think the device name sdhci-tegra is the right value.

Hi b2.

This is a part of the log where the sdmmc2 is initialized.

[    4.996333] sdhci: Secure Digital Host Controller Interface driver
[    4.996336] sdhci: Copyright(c) Pierre Ossman
[    4.996339] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.996639] sdhci-tegra sdhci-tegra.3: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    4.996661] sdhci-tegra sdhci-tegra.3: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    4.996823] sdhci-tegra sdhci-tegra.3: Speedo value 2259
[    4.996831] sdhci-tegra sdhci-tegra.3: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    5.037467] otg state changed: SUSPEND --> PERIPHERAL
[    5.182484] usb 1-1: new high-speed USB device number 2 using tegra-ehci
[    5.183487] ata1: SATA link down (SStatus 0 SControl 300)
[    5.210117] usb 1-1: New USB device found, idVendor=0424, idProduct=2517
[    5.210126] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    5.214728] hub 1-1:1.0: USB hub found
[    5.220566] hub 1-1:1.0: 7 ports detected
[    5.377474] usb 2-1: new high-speed USB device number 2 using tegra-ehci
[    5.441059] usb 2-1: New USB device found, idVendor=0424, idProduct=2137
[    5.441066] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    5.441072] usb 2-1: Product: USB2137B
[    5.441078] usb 2-1: Manufacturer: SMSC
[    5.445329] hub 2-1:1.0: USB hub found
[    5.449336] hub 2-1:1.0: 7 ports detected
[    5.624718] handle_check_edid_l: audio_switch 1
[    5.629323] Display connected, hpd_switch 1
[    5.633520] handle_check_edid_l: setting audio and infoframes
[    5.639325] hdmi_state_machine_set_state_l: switching from state 2 (Check EDID) to state 4 (Enabled)
[    5.648488] hdmi_state_machine_worker (tid edaf4580): state 4 (Enabled), hpd 1, pending_hpd_evt 1
[    5.657360] hdmi_state_machine_handle_hpd_l: ignoring bouncing hpd
[    5.663881] mmc0: no vqmmc regulator found
[    5.668032] mmc0: no vmmc regulator found
[    5.672055] mmc0: Invalid maximum block size, assuming 512 bytes
[    5.678087] sysedp_create_consumer: unable to create sdhci-tegra.3, no consumer_data for sdhci-tegra.3 found
[    5.711468] mmc0: SDHCI controller on sdhci-tegra.3 [sdhci-tegra.3] using ADMA
[    5.719160] sdhci-tegra sdhci-tegra.0: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    5.729554] sdhci-tegra sdhci-tegra.0: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    5.740494] sdhci-tegra sdhci-tegra.0: Speedo value 2259
[    5.745820] sdhci-tegra sdhci-tegra.0: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100
[    5.755191] mmc1: no vqmmc regulator found
[    5.759311] mmc1: no vmmc regulator found
[    5.763329] mmc1: Invalid maximum block size, assuming 512 bytes
[    5.769362] sysedp_create_consumer: unable to create sdhci-tegra.0, no consumer_data for sdhci-tegra.0 found[    5.778682] mmc0: BKOPS_EN bit is not set
[    5.784043] sdhci-tegra sdhci-tegra.3: Found T2T coeffs data
[    5.789722] sdhci-tegra sdhci-tegra.3: 200MHz tap hole coeffs found
[    5.802726] usb 2-1.1: new low-speed USB device number 3 using tegra-ehci
[    5.804468] mmc1: SDHCI controller on sdhci-tegra.0 [sdhci-tegra.0] using ADMA
[    5.804734] sdhci-tegra sdhci-tegra.1: vddio_sdmmc regulator not found: -517.Assuming vddio_sdmmc is not required.
[    5.804755] sdhci-tegra sdhci-tegra.1: vddio_sd_slot regulator not found: -517. Assuming vddio_sd_slot is not required.
[    5.804905] sdhci-tegra sdhci-tegra.1: Speedo value 2259
[    5.804913] sdhci-tegra sdhci-tegra.1: Tuning constraints: nom_mv 1150, boot_mv 1150, min_or_mv 1100

I’ve also seen the CLK and the CMD on the oscilloscope and I’ve seen the pulses in both pins while booting. Therefore, I think that it probably works.

The problem is that now I’m getting a lot of Oops that are related to the driver and it seems like there are structures that their values are NULL. For example the struct wl1271_if_operations, that is used a lot from the driver seems that it’s not initialized

struct wl1271_if_operations {
	int __must_check (*read)(struct device *child, int addr, void *buf,
				 size_t len, bool fixed);
	int __must_check (*write)(struct device *child, int addr, void *buf,
				  size_t len, bool fixed);
	void (*reset)(struct device *child);
	void (*init)(struct device *child);
	int (*power)(struct device *child, bool enable);
	void (*set_block_size) (struct device *child, unsigned int blksz);
};

So, when the kernel tries to run power or set_block_size then I get an Oops.

Finally, what it worked (probably) for me is the following key points

static struct wl12xx_platform_data wl12xx_wlan_data = {
		/* COM6 (127x) uses FREF */
		.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
		/* COM7 (128x) uses TCXO */
		.board_tcxo_clock = WL12XX_TCXOCLOCK_38_4,
		.set_power	= wl12xx_set_power,
		.set_carddetect = wl12xx_set_carddetect,
};

static struct resource wl1271_wifi_resource[] = {
	[0] = {
		.name   = "wl1271_wlan_irq",
		.flags  = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL | IORESOURCE_IRQ_SHAREABLE,
	},
};

static struct platform_device wl1271_wifi_device = {
	.name           = "wl12xx",
	.id             = 0,
	.num_resources  = 1,
	.resource       = wl1271_wifi_resource,
	.dev            = {
		.platform_data = &wl12xx_wlan_data,
	},
};

static struct resource sdhci_resource1[] = {
	[0] = {
		.start  = INT_SDMMC2,
		.end    = INT_SDMMC2,
		.flags  = IORESOURCE_IRQ,
	},
	[1] = {
		.start	= TEGRA_SDMMC2_BASE,
		.end	= TEGRA_SDMMC2_BASE + TEGRA_SDMMC2_SIZE-1,
		.flags	= IORESOURCE_MEM,
	},
};

static struct tegra_sdhci_platform_data tegra_sdhci_platform_data1= {
	.mmc_data = {
		.register_status_notify	= wl12xx_wifi_status_register,
#ifdef CONFIG_MMC_EMBEDDED_SDIO
		.embedded_sdio = &embedded_sdio_data0,
#endif
		.built_in = 1,
		.ocr_mask = MMC_OCR_1V8_MASK,
	},
#ifdef CONFIG_MMC_EMBEDDED_SDIO
	.pm_flags = MMC_PM_KEEP_POWER,
#endif
	.cd_gpio = -1,
	.wp_gpio = -1,
	.power_gpio = -1,
	.tap_delay = 0x0,
	.trim_delay = 0x2,
	.ddr_clk_limit = 41000000,
	.uhs_mask = MMC_UHS_MASK_SDR104 | MMC_UHS_MASK_DDR50,
};

static struct platform_device tegra_sdhci_device1 = {
	.name		= "sdhci-tegra",
	.id		= 1,
	.resource	= sdhci_resource1,
	.num_resources	= ARRAY_SIZE(sdhci_resource1),
	.dev = {
		.platform_data = &tegra_sdhci_platform_data1,
	},
};

static int wl12xx_wifi_status_register(
		void (*callback)(int card_present, void *dev_id),
		void *dev_id)
{
	if (wifi_status_cb)
		return -EAGAIN;
	wifi_status_cb = callback;
	wifi_status_cb_devid = dev_id;
	return 0;
}


static int wl12xx_set_carddetect(int val)
{
        pr_debug("%s: %d\n", __func__, val);
        if (wifi_status_cb)
                wifi_status_cb(val, wifi_status_cb_devid);
        else
                pr_warning("%s: Nobody to notify\n", __func__);
        return 0;
}

static int wl12xx_set_power(int power_on)
{
	static int power_state;

	pr_info("Powering %s wl12xx", power_on ? "on" : "off");

	if (power_on == power_state)
		return(power_state);
	power_state = power_on;

	if (power_on) {
		gpio_set_value(WL12XX_WLAN_RST, 1);
		mdelay(100);
		gpio_set_value(WL12XX_WLAN_RST, 0);
		mdelay(100);
		gpio_set_value(WL12XX_WLAN_RST, 1);
		mdelay(100);
		gpio_set_value(WL12XX_WLAN_PWR, 1);
		mdelay(200);
		/* also power-on BT */
		gpio_set_value(WL12XX_BT_PWR, 1);
	} else {
		gpio_set_value(WL12XX_WLAN_PWR, 0);
		/* also power-off BT */
		gpio_set_value(WL12XX_BT_PWR, 0);
	}
	return(power_state);
}

static int __init wl12xx_wlan_init(void)
{
	int rc;

	rc = gpio_request(WL12XX_WLAN_PWR, "wlan_power");
	if (rc)
		pr_err("WLAN_PWR gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_WLAN_RST, "wlan_rst");
	if (rc)
		pr_err("WLAN_RST gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_WLAN_WOW, "bcmsdh_sdmmc");
	if (rc)
		pr_err("WLAN_WOW gpio request failed:%d\n", rc);
	rc = gpio_request(WL12XX_BT_PWR, "bt_power");
	if (rc)
		pr_err("BT_PWR gpio request failed:%d\n", rc);

	rc = gpio_direction_output(WL12XX_WLAN_PWR, 0);
	if (rc)
		pr_err("WLAN_PWR gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_output(WL12XX_WLAN_RST, 0);
	if (rc)
		pr_err("WLAN_RST gpio direction configuration failed:%d\n", rc);

	rc = gpio_direction_input(WL12XX_WLAN_WOW);
	if (rc)
		pr_err("WLAN_WOW gpio direction configuration failed:%d\n", rc);
	rc = gpio_direction_input(WL12XX_BT_PWR);
	if (rc)
		pr_err("BT_PWR gpio direction configuration failed:%d\n", rc);

	wl1271_wifi_resource[0].start = wl1271_wifi_resource[0].end =
		gpio_to_irq(WL12XX_WLAN_WOW);

	/* Pass the wl12xx platform data information to the wl12xx driver */
	wl12xx_wlan_data.irq = gpio_to_irq(WL12XX_WLAN_WOW);
	if (wl12xx_set_platform_data(&wl12xx_wlan_data)) {
		pr_err("Error setting wl12xx data\n");
		return -1;
	}
	platform_device_register(&wl1271_wifi_device);

	return 0;
}

int __init ardbeg_sdhci_init(void)
{
...
	platform_device_register(&tegra_sdhci_device3);	// Enable sdmmc3 for emmc
	platform_device_register(&tegra_sdhci_device0); // Enable sdmmc0 for SD card reader
	platform_device_register(&tegra_sdhci_device1); // Enable WiFi
	wl12xx_wlan_init();
...
}

So now, when I run

$ modprobe wl12xx

I get Oops that are related with the driver. I don’t have the logs right now, but I’ll post them.

I’ve found something strange and I don’t know if it affects the sdmmc2, but it seems that in drivers/mmc/host/sdhci-tegra.c there aren’t any t12x_tuning_coeffs and t12x_tap_hole_coeffs for sdhci-tegra.1.

I don’t know if this is important for the tegra driver to properly initialize the sdmmc2 interface but it’s missing. Maybe this is why, although the interface seems to be active, it can’t recognize the sdio interface of wl1271.