|
@@ -41,6 +41,7 @@
|
|
|
#include <linux/gpio.h>
|
|
|
#include <linux/io.h>
|
|
|
#include <linux/platform_data/atmel.h>
|
|
|
+#include <linux/pinctrl/consumer.h>
|
|
|
|
|
|
#include <mach/cpu.h>
|
|
|
|
|
@@ -1370,6 +1371,7 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
|
|
|
struct resource *mem;
|
|
|
struct mtd_part_parser_data ppdata = {};
|
|
|
int res;
|
|
|
+ struct pinctrl *pinctrl;
|
|
|
|
|
|
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
|
|
if (!mem) {
|
|
@@ -1414,6 +1416,13 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
|
|
|
nand_chip->IO_ADDR_W = host->io_base;
|
|
|
nand_chip->cmd_ctrl = atmel_nand_cmd_ctrl;
|
|
|
|
|
|
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
|
|
|
+ if (IS_ERR(pinctrl)) {
|
|
|
+ dev_err(host->dev, "Failed to request pinctrl\n");
|
|
|
+ res = PTR_ERR(pinctrl);
|
|
|
+ goto err_ecc_ioremap;
|
|
|
+ }
|
|
|
+
|
|
|
if (gpio_is_valid(host->board.rdy_pin)) {
|
|
|
res = gpio_request(host->board.rdy_pin, "nand_rdy");
|
|
|
if (res < 0) {
|