diff options
Diffstat (limited to 'target/linux/mvebu/patches-3.10/0135-mtd-nand-pxa3xx-Early-variant-detection.patch')
-rw-r--r-- | target/linux/mvebu/patches-3.10/0135-mtd-nand-pxa3xx-Early-variant-detection.patch | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/target/linux/mvebu/patches-3.10/0135-mtd-nand-pxa3xx-Early-variant-detection.patch b/target/linux/mvebu/patches-3.10/0135-mtd-nand-pxa3xx-Early-variant-detection.patch deleted file mode 100644 index 328a2ab900..0000000000 --- a/target/linux/mvebu/patches-3.10/0135-mtd-nand-pxa3xx-Early-variant-detection.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dc333ddda677d416a6726509e144c6dfb93e7e89 Mon Sep 17 00:00:00 2001 -From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> -Date: Thu, 7 Nov 2013 12:17:14 -0300 -Subject: [PATCH 135/203] mtd: nand: pxa3xx: Early variant detection - -In order to customize early settings depending on the detected SoC variant, -move the detection to be before the nand_chip struct filling. - -In a follow-up patch, this change is needed to detect the variant *before* -the call to alloc_nand_resource(), which allows to set a different cmdfunc() -for each variant. - -Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> -Tested-by: Daniel Mack <zonque@gmail.com> -Signed-off-by: Brian Norris <computersforpeace@gmail.com> ---- - drivers/mtd/nand/pxa3xx_nand.c | 48 +++++++++++++++++++++--------------------- - 1 file changed, 24 insertions(+), 24 deletions(-) - ---- a/drivers/mtd/nand/pxa3xx_nand.c -+++ b/drivers/mtd/nand/pxa3xx_nand.c -@@ -258,6 +258,29 @@ static struct pxa3xx_nand_flash builtin_ - /* convert nano-seconds to nand flash controller clock cycles */ - #define ns2cycle(ns, clk) (int)((ns) * (clk / 1000000) / 1000) - -+static struct of_device_id pxa3xx_nand_dt_ids[] = { -+ { -+ .compatible = "marvell,pxa3xx-nand", -+ .data = (void *)PXA3XX_NAND_VARIANT_PXA, -+ }, -+ { -+ .compatible = "marvell,armada370-nand", -+ .data = (void *)PXA3XX_NAND_VARIANT_ARMADA370, -+ }, -+ {} -+}; -+MODULE_DEVICE_TABLE(of, pxa3xx_nand_dt_ids); -+ -+static enum pxa3xx_nand_variant -+pxa3xx_nand_get_variant(struct platform_device *pdev) -+{ -+ const struct of_device_id *of_id = -+ of_match_device(pxa3xx_nand_dt_ids, &pdev->dev); -+ if (!of_id) -+ return PXA3XX_NAND_VARIANT_PXA; -+ return (enum pxa3xx_nand_variant)of_id->data; -+} -+ - static void pxa3xx_nand_set_timing(struct pxa3xx_nand_host *host, - const struct pxa3xx_nand_timing *t) - { -@@ -1125,6 +1148,7 @@ static int alloc_nand_resource(struct pl - return -ENOMEM; - - info->pdev = pdev; -+ info->variant = pxa3xx_nand_get_variant(pdev); - for (cs = 0; cs < pdata->num_cs; cs++) { - mtd = (struct mtd_info *)((unsigned int)&info[1] + - (sizeof(*mtd) + sizeof(*host)) * cs); -@@ -1259,29 +1283,6 @@ static int pxa3xx_nand_remove(struct pla - return 0; - } - --static struct of_device_id pxa3xx_nand_dt_ids[] = { -- { -- .compatible = "marvell,pxa3xx-nand", -- .data = (void *)PXA3XX_NAND_VARIANT_PXA, -- }, -- { -- .compatible = "marvell,armada370-nand", -- .data = (void *)PXA3XX_NAND_VARIANT_ARMADA370, -- }, -- {} --}; --MODULE_DEVICE_TABLE(of, pxa3xx_nand_dt_ids); -- --static enum pxa3xx_nand_variant --pxa3xx_nand_get_variant(struct platform_device *pdev) --{ -- const struct of_device_id *of_id = -- of_match_device(pxa3xx_nand_dt_ids, &pdev->dev); -- if (!of_id) -- return PXA3XX_NAND_VARIANT_PXA; -- return (enum pxa3xx_nand_variant)of_id->data; --} -- - static int pxa3xx_nand_probe_dt(struct platform_device *pdev) - { - struct pxa3xx_nand_platform_data *pdata; -@@ -1338,7 +1339,6 @@ static int pxa3xx_nand_probe(struct plat - } - - info = platform_get_drvdata(pdev); -- info->variant = pxa3xx_nand_get_variant(pdev); - probe_success = 0; - for (cs = 0; cs < pdata->num_cs; cs++) { - struct mtd_info *mtd = info->host[cs]->mtd; |