imxmmc: fix platform resources

Fixup platform resources handling.

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Acked-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>

authored by

Paulius Zaleckas and committed by
Pierre Ossman
5fc63dfb 322069c9

+6 -27
+6 -27
drivers/mmc/host/imxmmc.c
··· 901 901 .get_ro = imxmci_get_ro, 902 902 }; 903 903 904 - static struct resource *platform_device_resource(struct platform_device *dev, unsigned int mask, int nr) 905 - { 906 - int i; 907 - 908 - for (i = 0; i < dev->num_resources; i++) 909 - if (dev->resource[i].flags == mask && nr-- == 0) 910 - return &dev->resource[i]; 911 - return NULL; 912 - } 913 - 914 - static int platform_device_irq(struct platform_device *dev, int nr) 915 - { 916 - int i; 917 - 918 - for (i = 0; i < dev->num_resources; i++) 919 - if (dev->resource[i].flags == IORESOURCE_IRQ && nr-- == 0) 920 - return dev->resource[i].start; 921 - return NO_IRQ; 922 - } 923 - 924 904 static void imxmci_check_status(unsigned long data) 925 905 { 926 906 struct imxmci_host *host = (struct imxmci_host *)data; ··· 936 956 937 957 printk(KERN_INFO "i.MX mmc driver\n"); 938 958 939 - r = platform_device_resource(pdev, IORESOURCE_MEM, 0); 940 - irq = platform_device_irq(pdev, 0); 941 - if (!r || irq == NO_IRQ) 959 + r = platform_get_resource(pdev, IORESOURCE_MEM, 0); 960 + irq = platform_get_irq(pdev, 0); 961 + if (!r || irq < 0) 942 962 return -ENXIO; 943 963 944 - r = request_mem_region(r->start, 0x100, "IMXMCI"); 945 - if (!r) 964 + if (!request_mem_region(r->start, 0x100, pdev->name)) 946 965 return -EBUSY; 947 966 948 967 mmc = mmc_alloc_host(sizeof(struct imxmci_host), &pdev->dev); ··· 1046 1067 } 1047 1068 if (mmc) 1048 1069 mmc_free_host(mmc); 1049 - release_resource(r); 1070 + release_mem_region(r->start, 0x100); 1050 1071 return ret; 1051 1072 } 1052 1073 ··· 1075 1096 clk_disable(host->clk); 1076 1097 clk_put(host->clk); 1077 1098 1078 - release_resource(host->res); 1099 + release_mem_region(host->res->start, 0x100); 1079 1100 1080 1101 mmc_free_host(mmc); 1081 1102 }