These patches clean up at91_cf a bit and add DT bindings.
It is based on a previous series from Joachim Eastwood and other cleanup
patches by Fabio and Laurent.
I have collected them together as they are lying around for some time.
Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
take them.
Note that they are not bug fixes, so you can stack them for 3.10.
Thanks for your help, best regards.
v2: add 2 more cleanup patches:
- move to module_platform_driver_probe()
- little trivial indentation fix
Fabio Porcedda (1):
pcmcia: at91_cf: use module_platform_driver_probe()
Joachim Eastwood (5):
pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
pcmcia: at91_cf: convert to dev_ print functions
pcmcia: at91_cf: use devm_ functions for allocations
pcmcia: at91_cf: clean up header includes
pcmcia: at91_cf: add support for DT
Laurent Navet (1):
pcmcia/trivial: at91_cf: fix checkpatch error
.../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
drivers/pcmcia/Kconfig | 2 +-
drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
3 files changed, 108 insertions(+), 89 deletions(-)
create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
--
1.8.0
From: Joachim Eastwood <[email protected]>
Commit 80af9e6d (pcmcia at91_cf: fix raw gpio number usage) forgot
to change the parameter in gpio_get_value after adding gpio
validation.
Signed-off-by: Joachim Eastwood <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 01463c7..1b2c631 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -100,9 +100,9 @@ static int at91_cf_get_status(struct pcmcia_socket *s, u_int *sp)
int vcc = gpio_is_valid(cf->board->vcc_pin);
*sp = SS_DETECT | SS_3VCARD;
- if (!rdy || gpio_get_value(rdy))
+ if (!rdy || gpio_get_value(cf->board->irq_pin))
*sp |= SS_READY;
- if (!vcc || gpio_get_value(vcc))
+ if (!vcc || gpio_get_value(cf->board->vcc_pin))
*sp |= SS_POWERON;
} else
*sp = 0;
--
1.8.0
From: Joachim Eastwood <[email protected]>
Convert all pr_* functions to equivalent dev_* functions and
drop the driver_name variable.
Signed-off-by: Joachim Eastwood <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 22 ++++++++++------------
1 file changed, 10 insertions(+), 12 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 1b2c631..4eec14b 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -41,8 +41,6 @@
/*--------------------------------------------------------------------------*/
-static const char driver_name[] = "at91_cf";
-
struct at91_cf_socket {
struct pcmcia_socket socket;
@@ -76,7 +74,7 @@ static irqreturn_t at91_cf_irq(int irq, void *_cf)
/* kick pccard as needed */
if (present != cf->present) {
cf->present = present;
- pr_debug("%s: card %s\n", driver_name,
+ dev_dbg(&cf->pdev->dev, "card %s\n",
present ? "present" : "gone");
pcmcia_parse_events(&cf->socket, SS_DETECT);
}
@@ -134,8 +132,8 @@ at91_cf_set_socket(struct pcmcia_socket *sock, struct socket_state_t *s)
/* toggle reset if needed */
gpio_set_value(cf->board->rst_pin, s->flags & SS_RESET);
- pr_debug("%s: Vcc %d, io_irq %d, flags %04x csc %04x\n",
- driver_name, s->Vcc, s->io_irq, s->flags, s->csc_mask);
+ dev_dbg(&cf->pdev->dev, "Vcc %d, io_irq %d, flags %04x csc %04x\n",
+ s->Vcc, s->io_irq, s->flags, s->csc_mask);
return 0;
}
@@ -171,10 +169,10 @@ static int at91_cf_set_io_map(struct pcmcia_socket *s, struct pccard_io_map *io)
*/
if (!(io->flags & (MAP_16BIT | MAP_AUTOSZ))) {
csr |= AT91_SMC_DBW_8;
- pr_debug("%s: 8bit i/o bus\n", driver_name);
+ dev_dbg(&cf->pdev->dev, "8bit i/o bus\n");
} else {
csr |= AT91_SMC_DBW_16;
- pr_debug("%s: 16bit i/o bus\n", driver_name);
+ dev_dbg(&cf->pdev->dev, "16bit i/o bus\n");
}
at91_ramc_write(0, AT91_SMC_CSR(cf->board->chipselect), csr);
@@ -242,7 +240,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
status = gpio_request(board->det_pin, "cf_det");
if (status < 0)
goto fail0;
- status = request_irq(gpio_to_irq(board->det_pin), at91_cf_irq, 0, driver_name, cf);
+ status = request_irq(gpio_to_irq(board->det_pin), at91_cf_irq, 0, "at91_cf detect", cf);
if (status < 0)
goto fail00;
device_init_wakeup(&pdev->dev, 1);
@@ -268,7 +266,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
if (status < 0)
goto fail0c;
status = request_irq(gpio_to_irq(board->irq_pin), at91_cf_irq,
- IRQF_SHARED, driver_name, cf);
+ IRQF_SHARED, "at91_cf", cf);
if (status < 0)
goto fail0d;
cf->socket.pci_irq = gpio_to_irq(board->irq_pin);
@@ -284,12 +282,12 @@ static int __init at91_cf_probe(struct platform_device *pdev)
}
/* reserve chip-select regions */
- if (!request_mem_region(io->start, resource_size(io), driver_name)) {
+ if (!request_mem_region(io->start, resource_size(io), "at91_cf")) {
status = -ENXIO;
goto fail1;
}
- pr_info("%s: irqs det #%d, io #%d\n", driver_name,
+ dev_info(&pdev->dev, "irqs det #%d, io #%d\n",
gpio_to_irq(board->det_pin), gpio_to_irq(board->irq_pin));
cf->socket.owner = THIS_MODULE;
@@ -391,7 +389,7 @@ static int at91_cf_resume(struct platform_device *pdev)
static struct platform_driver at91_cf_driver = {
.driver = {
- .name = (char *) driver_name,
+ .name = "at91_cf",
.owner = THIS_MODULE,
},
.remove = __exit_p(at91_cf_remove),
--
1.8.0
From: Joachim Eastwood <[email protected]>
Signed-off-by: Joachim Eastwood <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 77 +++++++++++++++---------------------------------
1 file changed, 24 insertions(+), 53 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 4eec14b..43bc342 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -227,7 +227,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
if (!io)
return -ENODEV;
- cf = kzalloc(sizeof *cf, GFP_KERNEL);
+ cf = devm_kzalloc(&pdev->dev, sizeof(*cf), GFP_KERNEL);
if (!cf)
return -ENOMEM;
@@ -237,22 +237,25 @@ static int __init at91_cf_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, cf);
/* must be a GPIO; ergo must trigger on both edges */
- status = gpio_request(board->det_pin, "cf_det");
+ status = devm_gpio_request(&pdev->dev, board->det_pin, "cf_det");
if (status < 0)
- goto fail0;
- status = request_irq(gpio_to_irq(board->det_pin), at91_cf_irq, 0, "at91_cf detect", cf);
+ return status;
+
+ status = devm_request_irq(&pdev->dev, gpio_to_irq(board->det_pin),
+ at91_cf_irq, 0, "at91_cf detect", cf);
if (status < 0)
- goto fail00;
+ return status;
+
device_init_wakeup(&pdev->dev, 1);
- status = gpio_request(board->rst_pin, "cf_rst");
+ status = devm_gpio_request(&pdev->dev, board->rst_pin, "cf_rst");
if (status < 0)
goto fail0a;
if (gpio_is_valid(board->vcc_pin)) {
- status = gpio_request(board->vcc_pin, "cf_vcc");
+ status = devm_gpio_request(&pdev->dev, board->vcc_pin, "cf_vcc");
if (status < 0)
- goto fail0b;
+ goto fail0a;
}
/*
@@ -262,29 +265,30 @@ static int __init at91_cf_probe(struct platform_device *pdev)
* (Note: DK board doesn't wire the IRQ pin...)
*/
if (gpio_is_valid(board->irq_pin)) {
- status = gpio_request(board->irq_pin, "cf_irq");
+ status = devm_gpio_request(&pdev->dev, board->irq_pin, "cf_irq");
if (status < 0)
- goto fail0c;
- status = request_irq(gpio_to_irq(board->irq_pin), at91_cf_irq,
- IRQF_SHARED, "at91_cf", cf);
+ goto fail0a;
+
+ status = devm_request_irq(&pdev->dev, gpio_to_irq(board->irq_pin),
+ at91_cf_irq, IRQF_SHARED, "at91_cf", cf);
if (status < 0)
- goto fail0d;
+ goto fail0a;
cf->socket.pci_irq = gpio_to_irq(board->irq_pin);
} else
cf->socket.pci_irq = nr_irqs + 1;
/* pcmcia layer only remaps "real" memory not iospace */
- cf->socket.io_offset = (unsigned long)
- ioremap(cf->phys_baseaddr + CF_IO_PHYS, SZ_2K);
+ cf->socket.io_offset = (unsigned long) devm_ioremap(&pdev->dev,
+ cf->phys_baseaddr + CF_IO_PHYS, SZ_2K);
if (!cf->socket.io_offset) {
status = -ENXIO;
- goto fail1;
+ goto fail0a;
}
/* reserve chip-select regions */
- if (!request_mem_region(io->start, resource_size(io), "at91_cf")) {
+ if (!devm_request_mem_region(&pdev->dev, io->start, resource_size(io), "at91_cf")) {
status = -ENXIO;
- goto fail1;
+ goto fail0a;
}
dev_info(&pdev->dev, "irqs det #%d, io #%d\n",
@@ -301,55 +305,22 @@ static int __init at91_cf_probe(struct platform_device *pdev)
status = pcmcia_register_socket(&cf->socket);
if (status < 0)
- goto fail2;
+ goto fail0a;
return 0;
-fail2:
- release_mem_region(io->start, resource_size(io));
-fail1:
- if (cf->socket.io_offset)
- iounmap((void __iomem *) cf->socket.io_offset);
- if (gpio_is_valid(board->irq_pin)) {
- free_irq(gpio_to_irq(board->irq_pin), cf);
-fail0d:
- gpio_free(board->irq_pin);
- }
-fail0c:
- if (gpio_is_valid(board->vcc_pin))
- gpio_free(board->vcc_pin);
-fail0b:
- gpio_free(board->rst_pin);
fail0a:
device_init_wakeup(&pdev->dev, 0);
- free_irq(gpio_to_irq(board->det_pin), cf);
-fail00:
- gpio_free(board->det_pin);
-fail0:
- kfree(cf);
return status;
}
static int __exit at91_cf_remove(struct platform_device *pdev)
{
struct at91_cf_socket *cf = platform_get_drvdata(pdev);
- struct at91_cf_data *board = cf->board;
- struct resource *io = cf->socket.io[0].res;
pcmcia_unregister_socket(&cf->socket);
- release_mem_region(io->start, resource_size(io));
- iounmap((void __iomem *) cf->socket.io_offset);
- if (gpio_is_valid(board->irq_pin)) {
- free_irq(gpio_to_irq(board->irq_pin), cf);
- gpio_free(board->irq_pin);
- }
- if (gpio_is_valid(board->vcc_pin))
- gpio_free(board->vcc_pin);
- gpio_free(board->rst_pin);
device_init_wakeup(&pdev->dev, 0);
- free_irq(gpio_to_irq(board->det_pin), cf);
- gpio_free(board->det_pin);
- kfree(cf);
+
return 0;
}
--
1.8.0
From: Joachim Eastwood <[email protected]>
Use includes from linux/ instead of asm/ and remove a
unnecessary mach/ include.
Signed-off-by: Joachim Eastwood <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 43bc342..bce8a64 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -18,13 +18,11 @@
#include <linux/slab.h>
#include <linux/gpio.h>
#include <linux/platform_data/atmel.h>
+#include <linux/io.h>
+#include <linux/sizes.h>
#include <pcmcia/ss.h>
-#include <mach/hardware.h>
-#include <asm/io.h>
-#include <asm/sizes.h>
-
#include <mach/at91rm9200_mc.h>
#include <mach/at91_ramc.h>
--
1.8.0
From: Joachim Eastwood <[email protected]>
Signed-off-by: Joachim Eastwood <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
.../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++++++++
drivers/pcmcia/Kconfig | 2 +-
drivers/pcmcia/at91_cf.c | 45 +++++++++++++++++++++-
3 files changed, 64 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
diff --git a/Documentation/devicetree/bindings/ata/atmel-at91_cf.txt b/Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
new file mode 100644
index 0000000..c1d22b3
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
@@ -0,0 +1,19 @@
+Atmel AT91RM9200 CompactFlash
+
+Required properties:
+- compatible : "atmel,at91rm9200-cf".
+- reg : should specify localbus address and size used.
+- gpios : specifies the gpio pins to control the CF device. Detect
+ and reset gpio's are mandatory while irq and vcc gpio's are
+ optional and may be set to 0 if not present.
+
+Example:
+compact-flash@50000000 {
+ compatible = "atmel,at91rm9200-cf";
+ reg = <0x50000000 0x30000000>;
+ gpios = <&pioC 13 0 /* irq */
+ &pioC 15 0 /* detect */
+ 0 /* vcc */
+ &pioC 5 0 /* reset */
+ >;
+};
diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
index b90f85b..80faa56 100644
--- a/drivers/pcmcia/Kconfig
+++ b/drivers/pcmcia/Kconfig
@@ -288,7 +288,7 @@ config BFIN_CFPCMCIA
config AT91_CF
tristate "AT91 CompactFlash Controller"
- depends on PCMCIA && ARCH_AT91RM9200
+ depends on PCMCIA && ARCH_AT91
help
Say Y here to support the CompactFlash controller on AT91 chips.
Or choose M to compile the driver as a module named "at91_cf".
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index bce8a64..149b95c 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -20,6 +20,9 @@
#include <linux/platform_data/atmel.h>
#include <linux/io.h>
#include <linux/sizes.h>
+#include <linux/of.h>
+#include <linux/of_device.h>
+#include <linux/of_gpio.h>
#include <pcmcia/ss.h>
@@ -211,6 +214,37 @@ static struct pccard_operations at91_cf_ops = {
/*--------------------------------------------------------------------------*/
+#if defined(CONFIG_OF)
+static const struct of_device_id at91_cf_dt_ids[] = {
+ { .compatible = "atmel,at91rm9200-cf" },
+ { /* sentinel */ }
+};
+MODULE_DEVICE_TABLE(of, at91_cf_dt_ids);
+
+static int at91_cf_dt_init(struct platform_device *pdev)
+{
+ struct at91_cf_data *board;
+
+ board = devm_kzalloc(&pdev->dev, sizeof(*board), GFP_KERNEL);
+ if (!board)
+ return -ENOMEM;
+
+ board->irq_pin = of_get_gpio(pdev->dev.of_node, 0);
+ board->det_pin = of_get_gpio(pdev->dev.of_node, 1);
+ board->vcc_pin = of_get_gpio(pdev->dev.of_node, 2);
+ board->rst_pin = of_get_gpio(pdev->dev.of_node, 3);
+
+ pdev->dev.platform_data = board;
+
+ return 0;
+}
+#else
+static int at91_cf_dt_init(struct platform_device *pdev)
+{
+ return -ENODEV;
+}
+#endif
+
static int __init at91_cf_probe(struct platform_device *pdev)
{
struct at91_cf_socket *cf;
@@ -218,7 +252,15 @@ static int __init at91_cf_probe(struct platform_device *pdev)
struct resource *io;
int status;
- if (!board || !gpio_is_valid(board->det_pin) || !gpio_is_valid(board->rst_pin))
+ if (!board) {
+ status = at91_cf_dt_init(pdev);
+ if (status)
+ return status;
+
+ board = pdev->dev.platform_data;
+ }
+
+ if (!gpio_is_valid(board->det_pin) || !gpio_is_valid(board->rst_pin))
return -ENODEV;
io = platform_get_resource(pdev, IORESOURCE_MEM, 0);
@@ -360,6 +402,7 @@ static struct platform_driver at91_cf_driver = {
.driver = {
.name = "at91_cf",
.owner = THIS_MODULE,
+ .of_match_table = of_match_ptr(at91_cf_dt_ids),
},
.remove = __exit_p(at91_cf_remove),
.suspend = at91_cf_suspend,
--
1.8.0
From: Fabio Porcedda <[email protected]>
Use module_platform_driver_probe() macro which makes the code smaller
and simpler.
Signed-off-by: Fabio Porcedda <[email protected]>
Cc: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 149b95c..8ddc57c 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -411,17 +411,7 @@ static struct platform_driver at91_cf_driver = {
/*--------------------------------------------------------------------------*/
-static int __init at91_cf_init(void)
-{
- return platform_driver_probe(&at91_cf_driver, at91_cf_probe);
-}
-module_init(at91_cf_init);
-
-static void __exit at91_cf_exit(void)
-{
- platform_driver_unregister(&at91_cf_driver);
-}
-module_exit(at91_cf_exit);
+module_platform_driver_probe(at91_cf_driver, at91_cf_probe);
MODULE_DESCRIPTION("AT91 Compact Flash Driver");
MODULE_AUTHOR("David Brownell");
--
1.8.0
From: Laurent Navet <[email protected]>
fix this checkpatch error:
- ERROR: switch and case should be at the same indent
Signed-off-by: Laurent Navet <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
---
drivers/pcmcia/at91_cf.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c
index 8ddc57c..b8f5acf 100644
--- a/drivers/pcmcia/at91_cf.c
+++ b/drivers/pcmcia/at91_cf.c
@@ -119,14 +119,14 @@ at91_cf_set_socket(struct pcmcia_socket *sock, struct socket_state_t *s)
/* switch Vcc if needed and possible */
if (gpio_is_valid(cf->board->vcc_pin)) {
switch (s->Vcc) {
- case 0:
- gpio_set_value(cf->board->vcc_pin, 0);
- break;
- case 33:
- gpio_set_value(cf->board->vcc_pin, 1);
- break;
- default:
- return -EINVAL;
+ case 0:
+ gpio_set_value(cf->board->vcc_pin, 0);
+ break;
+ case 33:
+ gpio_set_value(cf->board->vcc_pin, 1);
+ break;
+ default:
+ return -EINVAL;
}
}
--
1.8.0
On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
> These patches clean up at91_cf a bit and add DT bindings.
> It is based on a previous series from Joachim Eastwood and other cleanup
> patches by Fabio and Laurent.
> I have collected them together as they are lying around for some time.
>
> Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
> take them.
> Note that they are not bug fixes, so you can stack them for 3.10.
>
> Thanks for your help, best regards.
>
> v2: add 2 more cleanup patches:
> - move to module_platform_driver_probe()
> - little trivial indentation fix
>
> Fabio Porcedda (1):
> pcmcia: at91_cf: use module_platform_driver_probe()
>
> Joachim Eastwood (5):
> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
> pcmcia: at91_cf: convert to dev_ print functions
> pcmcia: at91_cf: use devm_ functions for allocations
> pcmcia: at91_cf: clean up header includes
> pcmcia: at91_cf: add support for DT
>
> Laurent Navet (1):
> pcmcia/trivial: at91_cf: fix checkpatch error
>
> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
> drivers/pcmcia/Kconfig | 2 +-
> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
> 3 files changed, 108 insertions(+), 89 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
>
> --
> 1.8.0
>
Ping?
Regards
--
Fabio Porcedda
On 04/17/2013 10:39 AM, Fabio Porcedda :
> On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
>> These patches clean up at91_cf a bit and add DT bindings.
>> It is based on a previous series from Joachim Eastwood and other cleanup
>> patches by Fabio and Laurent.
>> I have collected them together as they are lying around for some time.
>>
>> Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
>> take them.
>> Note that they are not bug fixes, so you can stack them for 3.10.
>>
>> Thanks for your help, best regards.
>>
>> v2: add 2 more cleanup patches:
>> - move to module_platform_driver_probe()
>> - little trivial indentation fix
>>
>> Fabio Porcedda (1):
>> pcmcia: at91_cf: use module_platform_driver_probe()
>>
>> Joachim Eastwood (5):
>> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
>> pcmcia: at91_cf: convert to dev_ print functions
>> pcmcia: at91_cf: use devm_ functions for allocations
>> pcmcia: at91_cf: clean up header includes
>> pcmcia: at91_cf: add support for DT
>>
>> Laurent Navet (1):
>> pcmcia/trivial: at91_cf: fix checkpatch error
>>
>> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
>> drivers/pcmcia/Kconfig | 2 +-
>> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
>> 3 files changed, 108 insertions(+), 89 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
>>
>> --
>> 1.8.0
>>
>
> Ping?
Andrew, Greg, can you please take this series?
Here is the post on lkml:
https://lkml.org/lkml/2013/3/21/246
Here is the first patch in patchwork (1/7):
https://patchwork.kernel.org/patch/2312691/
Tell me if I can do something else to make this applied upstream...
Best regards,
--
Nicolas Ferre
On Wed, Apr 17, 2013 at 10:51:23AM +0200, Nicolas Ferre wrote:
> On 04/17/2013 10:39 AM, Fabio Porcedda :
> > On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
> >> These patches clean up at91_cf a bit and add DT bindings.
> >> It is based on a previous series from Joachim Eastwood and other cleanup
> >> patches by Fabio and Laurent.
> >> I have collected them together as they are lying around for some time.
> >>
> >> Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
> >> take them.
> >> Note that they are not bug fixes, so you can stack them for 3.10.
> >>
> >> Thanks for your help, best regards.
> >>
> >> v2: add 2 more cleanup patches:
> >> - move to module_platform_driver_probe()
> >> - little trivial indentation fix
> >>
> >> Fabio Porcedda (1):
> >> pcmcia: at91_cf: use module_platform_driver_probe()
> >>
> >> Joachim Eastwood (5):
> >> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
> >> pcmcia: at91_cf: convert to dev_ print functions
> >> pcmcia: at91_cf: use devm_ functions for allocations
> >> pcmcia: at91_cf: clean up header includes
> >> pcmcia: at91_cf: add support for DT
> >>
> >> Laurent Navet (1):
> >> pcmcia/trivial: at91_cf: fix checkpatch error
> >>
> >> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
> >> drivers/pcmcia/Kconfig | 2 +-
> >> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
> >> 3 files changed, 108 insertions(+), 89 deletions(-)
> >> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
> >>
> >> --
> >> 1.8.0
> >>
> >
> > Ping?
>
> Andrew, Greg, can you please take this series?
>
> Here is the post on lkml:
> https://lkml.org/lkml/2013/3/21/246
>
> Here is the first patch in patchwork (1/7):
> https://patchwork.kernel.org/patch/2312691/
>
> Tell me if I can do something else to make this applied upstream...
The PCMCIA maintainer should take these, not me.
thanks,
greg k-h
On 20/04/2013 00:54, Greg Kroah-Hartman :
> On Wed, Apr 17, 2013 at 10:51:23AM +0200, Nicolas Ferre wrote:
>> On 04/17/2013 10:39 AM, Fabio Porcedda :
>>> On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
>>>> These patches clean up at91_cf a bit and add DT bindings.
>>>> It is based on a previous series from Joachim Eastwood and other cleanup
>>>> patches by Fabio and Laurent.
>>>> I have collected them together as they are lying around for some time.
>>>>
>>>> Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
>>>> take them.
>>>> Note that they are not bug fixes, so you can stack them for 3.10.
>>>>
>>>> Thanks for your help, best regards.
>>>>
>>>> v2: add 2 more cleanup patches:
>>>> - move to module_platform_driver_probe()
>>>> - little trivial indentation fix
>>>>
>>>> Fabio Porcedda (1):
>>>> pcmcia: at91_cf: use module_platform_driver_probe()
>>>>
>>>> Joachim Eastwood (5):
>>>> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
>>>> pcmcia: at91_cf: convert to dev_ print functions
>>>> pcmcia: at91_cf: use devm_ functions for allocations
>>>> pcmcia: at91_cf: clean up header includes
>>>> pcmcia: at91_cf: add support for DT
>>>>
>>>> Laurent Navet (1):
>>>> pcmcia/trivial: at91_cf: fix checkpatch error
>>>>
>>>> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
>>>> drivers/pcmcia/Kconfig | 2 +-
>>>> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
>>>> 3 files changed, 108 insertions(+), 89 deletions(-)
>>>> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
>>>>
>>>> --
>>>> 1.8.0
>>>>
>>>
>>> Ping?
>>
>> Andrew, Greg, can you please take this series?
>>
>> Here is the post on lkml:
>> https://lkml.org/lkml/2013/3/21/246
>>
>> Here is the first patch in patchwork (1/7):
>> https://patchwork.kernel.org/patch/2312691/
>>
>> Tell me if I can do something else to make this applied upstream...
>
> The PCMCIA maintainer should take these, not me.
I know Greg, but this patch series is still not taken by anyone 3 months
after its first submission and after several requests by both Fabio and
myself...
The series is still applying on linux-next today... Maybe it can go via
Andrew, then...
Best regards,
--
Nicolas Ferre
On Wed, Jun 05, 2013 at 12:04:26PM +0200, Nicolas Ferre wrote:
> On 20/04/2013 00:54, Greg Kroah-Hartman :
> >On Wed, Apr 17, 2013 at 10:51:23AM +0200, Nicolas Ferre wrote:
> >>On 04/17/2013 10:39 AM, Fabio Porcedda :
> >>>On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
> >>>>These patches clean up at91_cf a bit and add DT bindings.
> >>>>It is based on a previous series from Joachim Eastwood and other cleanup
> >>>>patches by Fabio and Laurent.
> >>>>I have collected them together as they are lying around for some time.
> >>>>
> >>>>Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
> >>>>take them.
> >>>>Note that they are not bug fixes, so you can stack them for 3.10.
> >>>>
> >>>>Thanks for your help, best regards.
> >>>>
> >>>>v2: add 2 more cleanup patches:
> >>>> - move to module_platform_driver_probe()
> >>>> - little trivial indentation fix
> >>>>
> >>>>Fabio Porcedda (1):
> >>>> pcmcia: at91_cf: use module_platform_driver_probe()
> >>>>
> >>>>Joachim Eastwood (5):
> >>>> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
> >>>> pcmcia: at91_cf: convert to dev_ print functions
> >>>> pcmcia: at91_cf: use devm_ functions for allocations
> >>>> pcmcia: at91_cf: clean up header includes
> >>>> pcmcia: at91_cf: add support for DT
> >>>>
> >>>>Laurent Navet (1):
> >>>> pcmcia/trivial: at91_cf: fix checkpatch error
> >>>>
> >>>> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
> >>>> drivers/pcmcia/Kconfig | 2 +-
> >>>> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
> >>>> 3 files changed, 108 insertions(+), 89 deletions(-)
> >>>> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
> >>>>
> >>>>--
> >>>>1.8.0
> >>>>
> >>>
> >>>Ping?
> >>
> >>Andrew, Greg, can you please take this series?
> >>
> >>Here is the post on lkml:
> >>https://lkml.org/lkml/2013/3/21/246
> >>
> >>Here is the first patch in patchwork (1/7):
> >>https://patchwork.kernel.org/patch/2312691/
> >>
> >>Tell me if I can do something else to make this applied upstream...
> >
> >The PCMCIA maintainer should take these, not me.
>
> I know Greg, but this patch series is still not taken by anyone 3
> months after its first submission and after several requests by both
> Fabio and myself...
>
> The series is still applying on linux-next today... Maybe it can go
> via Andrew, then...
I can take them through my char/misc driver tree if it's been that long
of a delay, care to resend them to me?
thanks,
greg k-h
On 05/06/2013 21:22, Greg Kroah-Hartman :
> On Wed, Jun 05, 2013 at 12:04:26PM +0200, Nicolas Ferre wrote:
>> On 20/04/2013 00:54, Greg Kroah-Hartman :
>>> On Wed, Apr 17, 2013 at 10:51:23AM +0200, Nicolas Ferre wrote:
>>>> On 04/17/2013 10:39 AM, Fabio Porcedda :
>>>>> On Thu, Mar 21, 2013 at 12:40 PM, Nicolas Ferre <[email protected]> wrote:
>>>>>> These patches clean up at91_cf a bit and add DT bindings.
>>>>>> It is based on a previous series from Joachim Eastwood and other cleanup
>>>>>> patches by Fabio and Laurent.
>>>>>> I have collected them together as they are lying around for some time.
>>>>>>
>>>>>> Please tell me if It can go through PCMCIA tree or if Andrew or Greg can
>>>>>> take them.
>>>>>> Note that they are not bug fixes, so you can stack them for 3.10.
>>>>>>
>>>>>> Thanks for your help, best regards.
>>>>>>
>>>>>> v2: add 2 more cleanup patches:
>>>>>> - move to module_platform_driver_probe()
>>>>>> - little trivial indentation fix
>>>>>>
>>>>>> Fabio Porcedda (1):
>>>>>> pcmcia: at91_cf: use module_platform_driver_probe()
>>>>>>
>>>>>> Joachim Eastwood (5):
>>>>>> pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status
>>>>>> pcmcia: at91_cf: convert to dev_ print functions
>>>>>> pcmcia: at91_cf: use devm_ functions for allocations
>>>>>> pcmcia: at91_cf: clean up header includes
>>>>>> pcmcia: at91_cf: add support for DT
>>>>>>
>>>>>> Laurent Navet (1):
>>>>>> pcmcia/trivial: at91_cf: fix checkpatch error
>>>>>>
>>>>>> .../devicetree/bindings/ata/atmel-at91_cf.txt | 19 +++
>>>>>> drivers/pcmcia/Kconfig | 2 +-
>>>>>> drivers/pcmcia/at91_cf.c | 176 ++++++++++-----------
>>>>>> 3 files changed, 108 insertions(+), 89 deletions(-)
>>>>>> create mode 100644 Documentation/devicetree/bindings/ata/atmel-at91_cf.txt
>>>>>>
>>>>>> --
>>>>>> 1.8.0
>>>>>>
>>>>>
>>>>> Ping?
>>>>
>>>> Andrew, Greg, can you please take this series?
>>>>
>>>> Here is the post on lkml:
>>>> https://lkml.org/lkml/2013/3/21/246
>>>>
>>>> Here is the first patch in patchwork (1/7):
>>>> https://patchwork.kernel.org/patch/2312691/
>>>>
>>>> Tell me if I can do something else to make this applied upstream...
>>>
>>> The PCMCIA maintainer should take these, not me.
>>
>> I know Greg, but this patch series is still not taken by anyone 3
>> months after its first submission and after several requests by both
>> Fabio and myself...
>>
>> The series is still applying on linux-next today... Maybe it can go
>> via Andrew, then...
>
> I can take them through my char/misc driver tree if it's been that long
> of a delay, care to resend them to me?
Yep, I do it right now. Thanks a lot Greg.
Best regards,
--
Nicolas Ferre