diff for duplicates of <54611D3F.2010903@coldplug.net> diff --git a/a/1.txt b/N1/1.txt index c6c1df3..244dfe7 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -45,3 +45,11 @@ On 11/10/2014 06:15 AM, Alexey Charkov wrote: Sorry for the delay, 8880's are used to crash a lot since we have not enought information ;) Attached a changed patch which will hopefully meet all needs. + +-------------- next part -------------- +A non-text attachment was scrubbed... +Name: 0001-mmc-vt8500-change-resource-mapping-to-devm_.patch +Type: text/x-patch +Size: 2730 bytes +Desc: not available +URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141110/5719b62b/attachment.bin> diff --git a/a/2.hdr b/a/2.hdr deleted file mode 100644 index c7a99b4..0000000 --- a/a/2.hdr +++ /dev/null @@ -1,5 +0,0 @@ -Content-Type: text/x-patch; - name="0001-mmc-vt8500-change-resource-mapping-to-devm_.patch" -Content-Transfer-Encoding: 7bit -Content-Disposition: attachment; - filename="0001-mmc-vt8500-change-resource-mapping-to-devm_.patch" diff --git a/a/2.txt b/a/2.txt deleted file mode 100644 index 3e2a99a..0000000 --- a/a/2.txt +++ /dev/null @@ -1,86 +0,0 @@ ->From 7c8ebb55fde8786cd16d95659ff73675bedc287c Mon Sep 17 00:00:00 2001 -From: Helmut Stengele <lautriv@coldplug.net> -Date: Mon, 10 Nov 2014 11:26:51 +0100 -Subject: [PATCH] mmc: vt8500: change resource-mapping to devm_* - -Current code calls release_mem_region upon module unload -without requesting the region first. This patch fixes it -by moving to a devres-based ioremap implementation, which -handles requesting and releasing memory region internally. - -This also makes the error/unload paths a bit simpler. - -Signed-off-by: Helmut Stengele <lautriv@coldplug.net> ---- - drivers/mmc/host/wmt-sdmmc.c | 16 +++++----------- - 1 file changed, 5 insertions(+), 11 deletions(-) - -diff --git a/drivers/mmc/host/wmt-sdmmc.c b/drivers/mmc/host/wmt-sdmmc.c -index 54181b4..f874d36 100644 ---- a/drivers/mmc/host/wmt-sdmmc.c -+++ b/drivers/mmc/host/wmt-sdmmc.c -@@ -759,6 +759,7 @@ static int wmt_mci_probe(struct platform_device *pdev) - const struct wmt_mci_caps *wmt_caps; - int ret; - int regular_irq, dma_irq; -+ struct resource *res; - - if (!of_id || !of_id->data) { - dev_err(&pdev->dev, "Controller capabilities data missing\n"); -@@ -813,10 +814,11 @@ static int wmt_mci_probe(struct platform_device *pdev) - if (of_get_property(np, "cd-inverted", NULL)) - priv->cd_inverted = 1; - -- priv->sdmmc_base = of_iomap(np, 0); -+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0); -+ priv->sdmmc_base = devm_ioremap_resource(&pdev->dev, res); - if (!priv->sdmmc_base) { - dev_err(&pdev->dev, "Failed to map IO space\n"); -- ret = -ENOMEM; -+ ret = PTR_ERR(priv->sdmmc_base); - goto fail2; - } - -@@ -826,7 +828,7 @@ static int wmt_mci_probe(struct platform_device *pdev) - ret = request_irq(regular_irq, wmt_mci_regular_isr, 0, "sdmmc", priv); - if (ret) { - dev_err(&pdev->dev, "Register regular IRQ fail\n"); -- goto fail3; -+ goto fail2; - } - - ret = request_irq(dma_irq, wmt_mci_dma_isr, 0, "sdmmc", priv); -@@ -869,8 +871,6 @@ fail5: - free_irq(dma_irq, priv); - fail4: - free_irq(regular_irq, priv); --fail3: -- iounmap(priv->sdmmc_base); - fail2: - mmc_free_host(mmc); - fail1: -@@ -881,7 +881,6 @@ static int wmt_mci_remove(struct platform_device *pdev) - { - struct mmc_host *mmc; - struct wmt_mci_priv *priv; -- struct resource *res; - u32 reg_tmp; - - mmc = platform_get_drvdata(pdev); -@@ -904,14 +903,9 @@ static int wmt_mci_remove(struct platform_device *pdev) - free_irq(priv->irq_regular, priv); - free_irq(priv->irq_dma, priv); - -- iounmap(priv->sdmmc_base); -- - clk_disable_unprepare(priv->clk_sdmmc); - clk_put(priv->clk_sdmmc); - -- res = platform_get_resource(pdev, IORESOURCE_MEM, 0); -- release_mem_region(res->start, resource_size(res)); -- - mmc_free_host(mmc); - - dev_info(&pdev->dev, "WMT MCI device removed\n"); --- -1.7.10.4 diff --git a/a/content_digest b/N1/content_digest index adec14f..f5b78da 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -2,18 +2,11 @@ "ref\0CAOMZO5C+O4h=f=vtLTdBZktnfVWzfeLjOQG-oecxh_c9u-QMqA@mail.gmail.com\0" "ref\0545FE821.5060107@coldplug.net\0" "ref\0CABjd4YxyUJi6RaGWicFeoJ7C27qhUFsAbq-nJTreACrt-voeYA@mail.gmail.com\0" - "From\0lautriv <lautriv@coldplug.net>\0" - "Subject\0Re: [PATCH] mmc: wmt-sdmmc: fix unmatched release_mem_region\0" + "From\0lautriv@coldplug.net (lautriv)\0" + "Subject\0[PATCH] mmc: wmt-sdmmc: fix unmatched release_mem_region\0" "Date\0Mon, 10 Nov 2014 21:17:03 +0100\0" - "To\0Alexey Charkov <alchark@gmail.com>\0" - "Cc\0Fabio Estevam <festevam@gmail.com>" - Tony Prisk <linux@prisktech.co.nz> - Chris Ball <chris@printf.net> - Ulf Hansson <ulf.hansson@linaro.org> - linux-arm-kernel@lists.infradead.org <linux-arm-kernel@lists.infradead.org> - linux-mmc@vger.kernel.org <linux-mmc@vger.kernel.org> - " linux-kernel <linux-kernel@vger.kernel.org>\0" - "\01:1\0" + "To\0linux-arm-kernel@lists.infradead.org\0" + "\00:1\0" "b\0" "On 11/10/2014 06:15 AM, Alexey Charkov wrote:\n" "> 2014-11-10 1:18 GMT+03:00 lautriv <lautriv@coldplug.net>:\n" @@ -61,95 +54,14 @@ ">\n" "Sorry for the delay, 8880's are used to crash a lot since\n" "we have not enought information ;)\n" - Attached a changed patch which will hopefully meet all needs. - "\01:2\0" - "fn\00001-mmc-vt8500-change-resource-mapping-to-devm_.patch\0" - "b\0" - ">From 7c8ebb55fde8786cd16d95659ff73675bedc287c Mon Sep 17 00:00:00 2001\n" - "From: Helmut Stengele <lautriv@coldplug.net>\n" - "Date: Mon, 10 Nov 2014 11:26:51 +0100\n" - "Subject: [PATCH] mmc: vt8500: change resource-mapping to devm_*\n" - "\n" - "Current code calls release_mem_region upon module unload\n" - "without requesting the region first. This patch fixes it\n" - "by moving to a devres-based ioremap implementation, which\n" - "handles requesting and releasing memory region internally.\n" - "\n" - "This also makes the error/unload paths a bit simpler.\n" - "\n" - "Signed-off-by: Helmut Stengele <lautriv@coldplug.net>\n" - "---\n" - " drivers/mmc/host/wmt-sdmmc.c | 16 +++++-----------\n" - " 1 file changed, 5 insertions(+), 11 deletions(-)\n" + "Attached a changed patch which will hopefully meet all needs.\n" "\n" - "diff --git a/drivers/mmc/host/wmt-sdmmc.c b/drivers/mmc/host/wmt-sdmmc.c\n" - "index 54181b4..f874d36 100644\n" - "--- a/drivers/mmc/host/wmt-sdmmc.c\n" - "+++ b/drivers/mmc/host/wmt-sdmmc.c\n" - "@@ -759,6 +759,7 @@ static int wmt_mci_probe(struct platform_device *pdev)\n" - " \tconst struct wmt_mci_caps *wmt_caps;\n" - " \tint ret;\n" - " \tint regular_irq, dma_irq;\n" - "+\tstruct resource *res;\n" - " \n" - " \tif (!of_id || !of_id->data) {\n" - " \t\tdev_err(&pdev->dev, \"Controller capabilities data missing\\n\");\n" - "@@ -813,10 +814,11 @@ static int wmt_mci_probe(struct platform_device *pdev)\n" - " \tif (of_get_property(np, \"cd-inverted\", NULL))\n" - " \t\tpriv->cd_inverted = 1;\n" - " \n" - "-\tpriv->sdmmc_base = of_iomap(np, 0);\n" - "+\tres = platform_get_resource(pdev, IORESOURCE_MEM, 0);\n" - "+\tpriv->sdmmc_base = devm_ioremap_resource(&pdev->dev, res);\n" - " \tif (!priv->sdmmc_base) {\n" - " \t\tdev_err(&pdev->dev, \"Failed to map IO space\\n\");\n" - "-\t\tret = -ENOMEM;\n" - "+\t\tret = PTR_ERR(priv->sdmmc_base);\n" - " \t\tgoto fail2;\n" - " \t}\n" - " \n" - "@@ -826,7 +828,7 @@ static int wmt_mci_probe(struct platform_device *pdev)\n" - " \tret = request_irq(regular_irq, wmt_mci_regular_isr, 0, \"sdmmc\", priv);\n" - " \tif (ret) {\n" - " \t\tdev_err(&pdev->dev, \"Register regular IRQ fail\\n\");\n" - "-\t\tgoto fail3;\n" - "+\t\tgoto fail2;\n" - " \t}\n" - " \n" - " \tret = request_irq(dma_irq, wmt_mci_dma_isr, 0, \"sdmmc\", priv);\n" - "@@ -869,8 +871,6 @@ fail5:\n" - " \tfree_irq(dma_irq, priv);\n" - " fail4:\n" - " \tfree_irq(regular_irq, priv);\n" - "-fail3:\n" - "-\tiounmap(priv->sdmmc_base);\n" - " fail2:\n" - " \tmmc_free_host(mmc);\n" - " fail1:\n" - "@@ -881,7 +881,6 @@ static int wmt_mci_remove(struct platform_device *pdev)\n" - " {\n" - " \tstruct mmc_host *mmc;\n" - " \tstruct wmt_mci_priv *priv;\n" - "-\tstruct resource *res;\n" - " \tu32 reg_tmp;\n" - " \n" - " \tmmc = platform_get_drvdata(pdev);\n" - "@@ -904,14 +903,9 @@ static int wmt_mci_remove(struct platform_device *pdev)\n" - " \tfree_irq(priv->irq_regular, priv);\n" - " \tfree_irq(priv->irq_dma, priv);\n" - " \n" - "-\tiounmap(priv->sdmmc_base);\n" - "-\n" - " \tclk_disable_unprepare(priv->clk_sdmmc);\n" - " \tclk_put(priv->clk_sdmmc);\n" - " \n" - "-\tres = platform_get_resource(pdev, IORESOURCE_MEM, 0);\n" - "-\trelease_mem_region(res->start, resource_size(res));\n" - "-\n" - " \tmmc_free_host(mmc);\n" - " \n" - " \tdev_info(&pdev->dev, \"WMT MCI device removed\\n\");\n" - "-- \n" - 1.7.10.4 + "-------------- next part --------------\n" + "A non-text attachment was scrubbed...\n" + "Name: 0001-mmc-vt8500-change-resource-mapping-to-devm_.patch\n" + "Type: text/x-patch\n" + "Size: 2730 bytes\n" + "Desc: not available\n" + URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141110/5719b62b/attachment.bin> -4e1149e8ebc33f5024ef1c77dd7f71d32c1355a477cfc41d33bb4763fd4ab90d +d3213c97682274f719bd22544666423fb3bd6cc0c97898d5af2e4f74661c7c32
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.