Re: FAILED: patch "[PATCH] omap: pdata-quirks: remove openpandora quirks for mmc3 and" failed to apply to 4.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please apply this before: https://patchwork.kernel.org/patch/11232473/

> Am 15.12.2019 um 14:32 schrieb gregkh@xxxxxxxxxxxxxxxxxxx:
> 
> 
> The patch below does not apply to the 4.9-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@xxxxxxxxxxxxxxx>.
> 
> thanks,
> 
> greg k-h
> 
> ------------------ original commit in Linus's tree ------------------
> 
> From 2398c41d64321e62af54424fd399964f3d48cdc2 Mon Sep 17 00:00:00 2001
> From: "H. Nikolaus Schaller" <hns@xxxxxxxxxxxxx>
> Date: Thu, 7 Nov 2019 11:30:39 +0100
> Subject: [PATCH] omap: pdata-quirks: remove openpandora quirks for mmc3 and
> wl1251
> 
> With a wl1251 child node of mmc3 in the device tree decoded
> in omap_hsmmc.c to handle special wl1251 initialization, we do
> no longer need to instantiate the mmc3 through pdata quirks.
> 
> We also can remove the wlan regulator and reset/interrupt definitions
> and do them through device tree.
> 
> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
> Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
> Cc: <stable@xxxxxxxxxxxxxxx> # v4.7+
> Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
> Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
> 
> diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
> index 800a602c06ec..1b7cf81ff035 100644
> --- a/arch/arm/mach-omap2/pdata-quirks.c
> +++ b/arch/arm/mach-omap2/pdata-quirks.c
> @@ -310,108 +310,15 @@ static void __init omap3_logicpd_torpedo_init(void)
> }
> 
> /* omap3pandora legacy devices */
> -#define PANDORA_WIFI_IRQ_GPIO		21
> -#define PANDORA_WIFI_NRESET_GPIO	23
> 
> static struct platform_device pandora_backlight = {
> 	.name	= "pandora-backlight",
> 	.id	= -1,
> };
> 
> -static struct regulator_consumer_supply pandora_vmmc3_supply[] = {
> -	REGULATOR_SUPPLY("vmmc", "omap_hsmmc.2"),
> -};
> -
> -static struct regulator_init_data pandora_vmmc3 = {
> -	.constraints = {
> -		.valid_ops_mask		= REGULATOR_CHANGE_STATUS,
> -	},
> -	.num_consumer_supplies	= ARRAY_SIZE(pandora_vmmc3_supply),
> -	.consumer_supplies	= pandora_vmmc3_supply,
> -};
> -
> -static struct fixed_voltage_config pandora_vwlan = {
> -	.supply_name		= "vwlan",
> -	.microvolts		= 1800000, /* 1.8V */
> -	.gpio			= PANDORA_WIFI_NRESET_GPIO,
> -	.startup_delay		= 50000, /* 50ms */
> -	.enable_high		= 1,
> -	.init_data		= &pandora_vmmc3,
> -};
> -
> -static struct platform_device pandora_vwlan_device = {
> -	.name		= "reg-fixed-voltage",
> -	.id		= 1,
> -	.dev = {
> -		.platform_data = &pandora_vwlan,
> -	},
> -};
> -
> -static void pandora_wl1251_init_card(struct mmc_card *card)
> -{
> -	/*
> -	 * We have TI wl1251 attached to MMC3. Pass this information to
> -	 * SDIO core because it can't be probed by normal methods.
> -	 */
> -	if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
> -		card->quirks |= MMC_QUIRK_NONSTD_SDIO;
> -		card->cccr.wide_bus = 1;
> -		card->cis.vendor = 0x104c;
> -		card->cis.device = 0x9066;
> -		card->cis.blksize = 512;
> -		card->cis.max_dtr = 24000000;
> -		card->ocr = 0x80;
> -	}
> -}
> -
> -static struct omap2_hsmmc_info pandora_mmc3[] = {
> -	{
> -		.mmc		= 3,
> -		.caps		= MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
> -		.gpio_cd	= -EINVAL,
> -		.gpio_wp	= -EINVAL,
> -		.init_card	= pandora_wl1251_init_card,
> -	},
> -	{}	/* Terminator */
> -};
> -
> -static void __init pandora_wl1251_init(void)
> -{
> -	struct wl1251_platform_data pandora_wl1251_pdata;
> -	int ret;
> -
> -	memset(&pandora_wl1251_pdata, 0, sizeof(pandora_wl1251_pdata));
> -
> -	pandora_wl1251_pdata.power_gpio = -1;
> -
> -	ret = gpio_request_one(PANDORA_WIFI_IRQ_GPIO, GPIOF_IN, "wl1251 irq");
> -	if (ret < 0)
> -		goto fail;
> -
> -	pandora_wl1251_pdata.irq = gpio_to_irq(PANDORA_WIFI_IRQ_GPIO);
> -	if (pandora_wl1251_pdata.irq < 0)
> -		goto fail_irq;
> -
> -	pandora_wl1251_pdata.use_eeprom = true;
> -	ret = wl1251_set_platform_data(&pandora_wl1251_pdata);
> -	if (ret < 0)
> -		goto fail_irq;
> -
> -	return;
> -
> -fail_irq:
> -	gpio_free(PANDORA_WIFI_IRQ_GPIO);
> -fail:
> -	pr_err("wl1251 board initialisation failed\n");
> -}
> -
> static void __init omap3_pandora_legacy_init(void)
> {
> 	platform_device_register(&pandora_backlight);
> -	platform_device_register(&pandora_vwlan_device);
> -	omap_hsmmc_init(pandora_mmc3);
> -	omap_hsmmc_late_init(pandora_mmc3);
> -	pandora_wl1251_init();
> }
> #endif /* CONFIG_ARCH_OMAP3 */
> 
> 





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux