diff options
| author | Shawn Guo <shawn.guo@linaro.org> | 2012-05-06 10:57:41 -0400 |
|---|---|---|
| committer | Shawn Guo <shawn.guo@linaro.org> | 2012-05-11 21:43:16 -0400 |
| commit | 39febc018bd26edb9f9f73c0f5ee661de37c7869 (patch) | |
| tree | 241350d8e0defc3c776ca321a626124989283de0 | |
| parent | 9c92cf2409d7828b797c763c661bffbf66d251c0 (diff) | |
mtd: nand: gpmi: adopt pinctrl support
Cc: linux-mtd@lists.infradead.org
Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
| -rw-r--r-- | drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c index 9ec51cec2e14..8478fd9701a3 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c | |||
| @@ -24,6 +24,7 @@ | |||
| 24 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 25 | #include <linux/mtd/gpmi-nand.h> | 25 | #include <linux/mtd/gpmi-nand.h> |
| 26 | #include <linux/mtd/partitions.h> | 26 | #include <linux/mtd/partitions.h> |
| 27 | #include <linux/pinctrl/consumer.h> | ||
| 27 | #include "gpmi-nand.h" | 28 | #include "gpmi-nand.h" |
| 28 | 29 | ||
| 29 | /* add our owner bbt descriptor */ | 30 | /* add our owner bbt descriptor */ |
| @@ -476,6 +477,7 @@ acquire_err: | |||
| 476 | static int __devinit acquire_resources(struct gpmi_nand_data *this) | 477 | static int __devinit acquire_resources(struct gpmi_nand_data *this) |
| 477 | { | 478 | { |
| 478 | struct resources *res = &this->resources; | 479 | struct resources *res = &this->resources; |
| 480 | struct pinctrl *pinctrl; | ||
| 479 | int ret; | 481 | int ret; |
| 480 | 482 | ||
| 481 | ret = acquire_register_block(this, GPMI_NAND_GPMI_REGS_ADDR_RES_NAME); | 483 | ret = acquire_register_block(this, GPMI_NAND_GPMI_REGS_ADDR_RES_NAME); |
| @@ -494,6 +496,12 @@ static int __devinit acquire_resources(struct gpmi_nand_data *this) | |||
| 494 | if (ret) | 496 | if (ret) |
| 495 | goto exit_dma_channels; | 497 | goto exit_dma_channels; |
| 496 | 498 | ||
| 499 | pinctrl = devm_pinctrl_get_select_default(&pdev->dev); | ||
| 500 | if (IS_ERR(pinctrl)) { | ||
| 501 | ret = PTR_ERR(pinctrl); | ||
| 502 | goto exit_pin; | ||
| 503 | } | ||
| 504 | |||
| 497 | res->clock = clk_get(&this->pdev->dev, NULL); | 505 | res->clock = clk_get(&this->pdev->dev, NULL); |
| 498 | if (IS_ERR(res->clock)) { | 506 | if (IS_ERR(res->clock)) { |
| 499 | pr_err("can not get the clock\n"); | 507 | pr_err("can not get the clock\n"); |
| @@ -503,6 +511,7 @@ static int __devinit acquire_resources(struct gpmi_nand_data *this) | |||
| 503 | return 0; | 511 | return 0; |
| 504 | 512 | ||
| 505 | exit_clock: | 513 | exit_clock: |
| 514 | exit_pin: | ||
| 506 | release_dma_channels(this); | 515 | release_dma_channels(this); |
| 507 | exit_dma_channels: | 516 | exit_dma_channels: |
| 508 | release_bch_irq(this); | 517 | release_bch_irq(this); |
