From 1f16342864c24d4693ca5cd5b4d424df21b6190f Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Fri, 12 Feb 2010 08:46:23 -0800 Subject: [PATCH] --- yaml --- r: 180527 b: refs/heads/master c: b49199c827d81c6dfb8ebb325292aa6b94b45e3d h: refs/heads/master i: 180525: 482c84c10cf947fd81ab976e7f69e22ebc37a788 180523: cebb4a360c6703842358a29f67b6c3e344e42fb8 180519: b0a597cbde456e7b3356692a310c565b0b60a02c 180511: c0355c4cc4378320c3a134d6d7b3bd7d7068a208 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-omap2/mmc-twl4030.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 6af3cb0cb7a1..87cc6429bfc1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 07ccb7bf2c928fef4fea2cda69ba2e23479578db +refs/heads/master: b49199c827d81c6dfb8ebb325292aa6b94b45e3d diff --git a/trunk/arch/arm/mach-omap2/mmc-twl4030.c b/trunk/arch/arm/mach-omap2/mmc-twl4030.c index 0c3c72d934bf..8afe9dd3f150 100644 --- a/trunk/arch/arm/mach-omap2/mmc-twl4030.c +++ b/trunk/arch/arm/mach-omap2/mmc-twl4030.c @@ -408,6 +408,7 @@ void __init twl4030_mmc_init(struct twl4030_hsmmc_info *controllers) { struct twl4030_hsmmc_info *c; int nr_hsmmc = ARRAY_SIZE(hsmmc_data); + int i; if (cpu_is_omap2430()) { control_pbias_offset = OMAP243X_CONTROL_PBIAS_LITE; @@ -434,7 +435,7 @@ void __init twl4030_mmc_init(struct twl4030_hsmmc_info *controllers) mmc = kzalloc(sizeof(struct omap_mmc_platform_data), GFP_KERNEL); if (!mmc) { pr_err("Cannot allocate memory for mmc device!\n"); - return; + goto done; } if (c->name) @@ -532,6 +533,10 @@ void __init twl4030_mmc_init(struct twl4030_hsmmc_info *controllers) continue; c->dev = mmc->dev; } + +done: + for (i = 0; i < nr_hsmmc; i++) + kfree(hsmmc_data[i]); } #endif