All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <1460888820946@kroah.com>

diff --git a/a/content_digest b/N1/content_digest
index 45652b5..4178417 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -7,8 +7,8 @@
   linus.walleij@linaro.org
   linux-mips@linux-mips.org
  " ralf@linux-mips.org\0"
- "Cc\0<stable@vger.kernel.org>"
- " <stable-commits@vger.kernel.org>\0"
+ "Cc\0stable@vger.kernel.org"
+ " stable-commits@vger.kernel.org\0"
  "\00:1\0"
  "b\0"
  "\n"
@@ -26,4 +26,4 @@
  "If you, or anyone else, feels it should not be added to the stable tree,\n"
  please let <stable@vger.kernel.org> know about it.
 
-5dfe2ccefb37385f22af36c5aa6f3f5bf391f022cbaef558c0681c79bdb681a4
+bcad7ba0fe081f92c1369e01f0b40369c40918a3d3287e7c94255440c10e1659

diff --git a/a/1.txt b/N2/1.txt
index 084c554..8c442e3 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -12,3 +12,165 @@ and it can be found in the queue-4.5 subdirectory.
 
 If you, or anyone else, feels it should not be added to the stable tree,
 please let <stable@vger.kernel.org> know about it.
+
+
+>From e34b6fcf9b09ec9d93503edd5f81489791ffd602 Mon Sep 17 00:00:00 2001
+From: Manuel Lauss <manuel.lauss@gmail.com>
+Date: Wed, 2 Mar 2016 10:34:43 +0100
+Subject: pcmcia: db1xxx_ss: fix last irq_to_gpio user
+
+From: Manuel Lauss <manuel.lauss@gmail.com>
+
+commit e34b6fcf9b09ec9d93503edd5f81489791ffd602 upstream.
+
+remove the usage of removed irq_to_gpio() function.  On pre-DB1200
+boards, pass the actual carddetect GPIO number instead of the IRQ,
+because we need the gpio to actually test card status (inserted or
+not) and can get the irq number with gpio_to_irq() instead.
+
+Tested on DB1300 and DB1500, this patch fixes PCMCIA on the DB1500,
+which used irq_to_gpio().
+
+Fixes: 832f5dacfa0b ("MIPS: Remove all the uses of custom gpio.h")
+Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
+Acked-by: Arnd Bergmann <arnd@arndb.de>
+Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
+Cc: linux-pcmcia@lists.infradead.org
+Cc: Linux-MIPS <linux-mips@linux-mips.org>
+Patchwork: https://patchwork.linux-mips.org/patch/12747/
+Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/mips/alchemy/devboards/db1000.c |   18 ++++++++----------
+ arch/mips/alchemy/devboards/db1550.c |    4 ++--
+ drivers/pcmcia/db1xxx_ss.c           |   11 +++++++++--
+ 3 files changed, 19 insertions(+), 14 deletions(-)
+
+--- a/arch/mips/alchemy/devboards/db1000.c
++++ b/arch/mips/alchemy/devboards/db1000.c
+@@ -503,15 +503,15 @@ int __init db1000_dev_setup(void)
+ 	if (board == BCSR_WHOAMI_DB1500) {
+ 		c0 = AU1500_GPIO2_INT;
+ 		c1 = AU1500_GPIO5_INT;
+-		d0 = AU1500_GPIO0_INT;
+-		d1 = AU1500_GPIO3_INT;
++		d0 = 0;	/* GPIO number, NOT irq! */
++		d1 = 3; /* GPIO number, NOT irq! */
+ 		s0 = AU1500_GPIO1_INT;
+ 		s1 = AU1500_GPIO4_INT;
+ 	} else if (board == BCSR_WHOAMI_DB1100) {
+ 		c0 = AU1100_GPIO2_INT;
+ 		c1 = AU1100_GPIO5_INT;
+-		d0 = AU1100_GPIO0_INT;
+-		d1 = AU1100_GPIO3_INT;
++		d0 = 0; /* GPIO number, NOT irq! */
++		d1 = 3; /* GPIO number, NOT irq! */
+ 		s0 = AU1100_GPIO1_INT;
+ 		s1 = AU1100_GPIO4_INT;
+ 
+@@ -545,15 +545,15 @@ int __init db1000_dev_setup(void)
+ 	} else if (board == BCSR_WHOAMI_DB1000) {
+ 		c0 = AU1000_GPIO2_INT;
+ 		c1 = AU1000_GPIO5_INT;
+-		d0 = AU1000_GPIO0_INT;
+-		d1 = AU1000_GPIO3_INT;
++		d0 = 0; /* GPIO number, NOT irq! */
++		d1 = 3; /* GPIO number, NOT irq! */
+ 		s0 = AU1000_GPIO1_INT;
+ 		s1 = AU1000_GPIO4_INT;
+ 		platform_add_devices(db1000_devs, ARRAY_SIZE(db1000_devs));
+ 	} else if ((board == BCSR_WHOAMI_PB1500) ||
+ 		   (board == BCSR_WHOAMI_PB1500R2)) {
+ 		c0 = AU1500_GPIO203_INT;
+-		d0 = AU1500_GPIO201_INT;
++		d0 = 1; /* GPIO number, NOT irq! */
+ 		s0 = AU1500_GPIO202_INT;
+ 		twosocks = 0;
+ 		flashsize = 64;
+@@ -566,7 +566,7 @@ int __init db1000_dev_setup(void)
+ 		 */
+ 	} else if (board == BCSR_WHOAMI_PB1100) {
+ 		c0 = AU1100_GPIO11_INT;
+-		d0 = AU1100_GPIO9_INT;
++		d0 = 9; /* GPIO number, NOT irq! */
+ 		s0 = AU1100_GPIO10_INT;
+ 		twosocks = 0;
+ 		flashsize = 64;
+@@ -583,7 +583,6 @@ int __init db1000_dev_setup(void)
+ 	} else
+ 		return 0; /* unknown board, no further dev setup to do */
+ 
+-	irq_set_irq_type(d0, IRQ_TYPE_EDGE_BOTH);
+ 	irq_set_irq_type(c0, IRQ_TYPE_LEVEL_LOW);
+ 	irq_set_irq_type(s0, IRQ_TYPE_LEVEL_LOW);
+ 
+@@ -597,7 +596,6 @@ int __init db1000_dev_setup(void)
+ 		c0, d0, /*s0*/0, 0, 0);
+ 
+ 	if (twosocks) {
+-		irq_set_irq_type(d1, IRQ_TYPE_EDGE_BOTH);
+ 		irq_set_irq_type(c1, IRQ_TYPE_LEVEL_LOW);
+ 		irq_set_irq_type(s1, IRQ_TYPE_LEVEL_LOW);
+ 
+--- a/arch/mips/alchemy/devboards/db1550.c
++++ b/arch/mips/alchemy/devboards/db1550.c
+@@ -514,7 +514,7 @@ static void __init db1550_devices(void)
+ 		AU1000_PCMCIA_MEM_PHYS_ADDR  + 0x000400000 - 1,
+ 		AU1000_PCMCIA_IO_PHYS_ADDR,
+ 		AU1000_PCMCIA_IO_PHYS_ADDR   + 0x000010000 - 1,
+-		AU1550_GPIO3_INT, AU1550_GPIO0_INT,
++		AU1550_GPIO3_INT, 0,
+ 		/*AU1550_GPIO21_INT*/0, 0, 0);
+ 
+ 	db1x_register_pcmcia_socket(
+@@ -524,7 +524,7 @@ static void __init db1550_devices(void)
+ 		AU1000_PCMCIA_MEM_PHYS_ADDR  + 0x004400000 - 1,
+ 		AU1000_PCMCIA_IO_PHYS_ADDR   + 0x004000000,
+ 		AU1000_PCMCIA_IO_PHYS_ADDR   + 0x004010000 - 1,
+-		AU1550_GPIO5_INT, AU1550_GPIO1_INT,
++		AU1550_GPIO5_INT, 1,
+ 		/*AU1550_GPIO22_INT*/0, 0, 1);
+ 
+ 	platform_device_register(&db1550_nand_dev);
+--- a/drivers/pcmcia/db1xxx_ss.c
++++ b/drivers/pcmcia/db1xxx_ss.c
+@@ -56,6 +56,7 @@ struct db1x_pcmcia_sock {
+ 	int	stschg_irq;	/* card-status-change irq */
+ 	int	card_irq;	/* card irq */
+ 	int	eject_irq;	/* db1200/pb1200 have these */
++	int	insert_gpio;	/* db1000 carddetect gpio */
+ 
+ #define BOARD_TYPE_DEFAULT	0	/* most boards */
+ #define BOARD_TYPE_DB1200	1	/* IRQs aren't gpios */
+@@ -83,7 +84,7 @@ static int db1200_card_inserted(struct d
+ /* carddetect gpio: low-active */
+ static int db1000_card_inserted(struct db1x_pcmcia_sock *sock)
+ {
+-	return !gpio_get_value(irq_to_gpio(sock->insert_irq));
++	return !gpio_get_value(sock->insert_gpio);
+ }
+ 
+ static int db1x_card_inserted(struct db1x_pcmcia_sock *sock)
+@@ -457,9 +458,15 @@ static int db1x_pcmcia_socket_probe(stru
+ 	r = platform_get_resource_byname(pdev, IORESOURCE_IRQ, "card");
+ 	sock->card_irq = r ? r->start : 0;
+ 
+-	/* insert: irq which triggers on card insertion/ejection */
++	/* insert: irq which triggers on card insertion/ejection
++	 * BIG FAT NOTE: on DB1000/1100/1500/1550 we pass a GPIO here!
++	 */
+ 	r = platform_get_resource_byname(pdev, IORESOURCE_IRQ, "insert");
+ 	sock->insert_irq = r ? r->start : -1;
++	if (sock->board_type == BOARD_TYPE_DEFAULT) {
++		sock->insert_gpio = r ? r->start : -1;
++		sock->insert_irq = r ? gpio_to_irq(r->start) : -1;
++	}
+ 
+ 	/* stschg: irq which trigger on card status change (optional) */
+ 	r = platform_get_resource_byname(pdev, IORESOURCE_IRQ, "stschg");
+
+
+Patches currently in stable-queue which might be from manuel.lauss@gmail.com are
+
+queue-4.5/pcmcia-db1xxx_ss-fix-last-irq_to_gpio-user.patch
diff --git a/a/content_digest b/N2/content_digest
index 45652b5..76bd70a 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -24,6 +24,168 @@
  "and it can be found in the queue-4.5 subdirectory.\n"
  "\n"
  "If you, or anyone else, feels it should not be added to the stable tree,\n"
- please let <stable@vger.kernel.org> know about it.
+ "please let <stable@vger.kernel.org> know about it.\n"
+ "\n"
+ "\n"
+ ">From e34b6fcf9b09ec9d93503edd5f81489791ffd602 Mon Sep 17 00:00:00 2001\n"
+ "From: Manuel Lauss <manuel.lauss@gmail.com>\n"
+ "Date: Wed, 2 Mar 2016 10:34:43 +0100\n"
+ "Subject: pcmcia: db1xxx_ss: fix last irq_to_gpio user\n"
+ "\n"
+ "From: Manuel Lauss <manuel.lauss@gmail.com>\n"
+ "\n"
+ "commit e34b6fcf9b09ec9d93503edd5f81489791ffd602 upstream.\n"
+ "\n"
+ "remove the usage of removed irq_to_gpio() function.  On pre-DB1200\n"
+ "boards, pass the actual carddetect GPIO number instead of the IRQ,\n"
+ "because we need the gpio to actually test card status (inserted or\n"
+ "not) and can get the irq number with gpio_to_irq() instead.\n"
+ "\n"
+ "Tested on DB1300 and DB1500, this patch fixes PCMCIA on the DB1500,\n"
+ "which used irq_to_gpio().\n"
+ "\n"
+ "Fixes: 832f5dacfa0b (\"MIPS: Remove all the uses of custom gpio.h\")\n"
+ "Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>\n"
+ "Acked-by: Arnd Bergmann <arnd@arndb.de>\n"
+ "Reviewed-by: Linus Walleij <linus.walleij@linaro.org>\n"
+ "Cc: linux-pcmcia@lists.infradead.org\n"
+ "Cc: Linux-MIPS <linux-mips@linux-mips.org>\n"
+ "Patchwork: https://patchwork.linux-mips.org/patch/12747/\n"
+ "Signed-off-by: Ralf Baechle <ralf@linux-mips.org>\n"
+ "Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\n"
+ "\n"
+ "---\n"
+ " arch/mips/alchemy/devboards/db1000.c |   18 ++++++++----------\n"
+ " arch/mips/alchemy/devboards/db1550.c |    4 ++--\n"
+ " drivers/pcmcia/db1xxx_ss.c           |   11 +++++++++--\n"
+ " 3 files changed, 19 insertions(+), 14 deletions(-)\n"
+ "\n"
+ "--- a/arch/mips/alchemy/devboards/db1000.c\n"
+ "+++ b/arch/mips/alchemy/devboards/db1000.c\n"
+ "@@ -503,15 +503,15 @@ int __init db1000_dev_setup(void)\n"
+ " \tif (board == BCSR_WHOAMI_DB1500) {\n"
+ " \t\tc0 = AU1500_GPIO2_INT;\n"
+ " \t\tc1 = AU1500_GPIO5_INT;\n"
+ "-\t\td0 = AU1500_GPIO0_INT;\n"
+ "-\t\td1 = AU1500_GPIO3_INT;\n"
+ "+\t\td0 = 0;\t/* GPIO number, NOT irq! */\n"
+ "+\t\td1 = 3; /* GPIO number, NOT irq! */\n"
+ " \t\ts0 = AU1500_GPIO1_INT;\n"
+ " \t\ts1 = AU1500_GPIO4_INT;\n"
+ " \t} else if (board == BCSR_WHOAMI_DB1100) {\n"
+ " \t\tc0 = AU1100_GPIO2_INT;\n"
+ " \t\tc1 = AU1100_GPIO5_INT;\n"
+ "-\t\td0 = AU1100_GPIO0_INT;\n"
+ "-\t\td1 = AU1100_GPIO3_INT;\n"
+ "+\t\td0 = 0; /* GPIO number, NOT irq! */\n"
+ "+\t\td1 = 3; /* GPIO number, NOT irq! */\n"
+ " \t\ts0 = AU1100_GPIO1_INT;\n"
+ " \t\ts1 = AU1100_GPIO4_INT;\n"
+ " \n"
+ "@@ -545,15 +545,15 @@ int __init db1000_dev_setup(void)\n"
+ " \t} else if (board == BCSR_WHOAMI_DB1000) {\n"
+ " \t\tc0 = AU1000_GPIO2_INT;\n"
+ " \t\tc1 = AU1000_GPIO5_INT;\n"
+ "-\t\td0 = AU1000_GPIO0_INT;\n"
+ "-\t\td1 = AU1000_GPIO3_INT;\n"
+ "+\t\td0 = 0; /* GPIO number, NOT irq! */\n"
+ "+\t\td1 = 3; /* GPIO number, NOT irq! */\n"
+ " \t\ts0 = AU1000_GPIO1_INT;\n"
+ " \t\ts1 = AU1000_GPIO4_INT;\n"
+ " \t\tplatform_add_devices(db1000_devs, ARRAY_SIZE(db1000_devs));\n"
+ " \t} else if ((board == BCSR_WHOAMI_PB1500) ||\n"
+ " \t\t   (board == BCSR_WHOAMI_PB1500R2)) {\n"
+ " \t\tc0 = AU1500_GPIO203_INT;\n"
+ "-\t\td0 = AU1500_GPIO201_INT;\n"
+ "+\t\td0 = 1; /* GPIO number, NOT irq! */\n"
+ " \t\ts0 = AU1500_GPIO202_INT;\n"
+ " \t\ttwosocks = 0;\n"
+ " \t\tflashsize = 64;\n"
+ "@@ -566,7 +566,7 @@ int __init db1000_dev_setup(void)\n"
+ " \t\t */\n"
+ " \t} else if (board == BCSR_WHOAMI_PB1100) {\n"
+ " \t\tc0 = AU1100_GPIO11_INT;\n"
+ "-\t\td0 = AU1100_GPIO9_INT;\n"
+ "+\t\td0 = 9; /* GPIO number, NOT irq! */\n"
+ " \t\ts0 = AU1100_GPIO10_INT;\n"
+ " \t\ttwosocks = 0;\n"
+ " \t\tflashsize = 64;\n"
+ "@@ -583,7 +583,6 @@ int __init db1000_dev_setup(void)\n"
+ " \t} else\n"
+ " \t\treturn 0; /* unknown board, no further dev setup to do */\n"
+ " \n"
+ "-\tirq_set_irq_type(d0, IRQ_TYPE_EDGE_BOTH);\n"
+ " \tirq_set_irq_type(c0, IRQ_TYPE_LEVEL_LOW);\n"
+ " \tirq_set_irq_type(s0, IRQ_TYPE_LEVEL_LOW);\n"
+ " \n"
+ "@@ -597,7 +596,6 @@ int __init db1000_dev_setup(void)\n"
+ " \t\tc0, d0, /*s0*/0, 0, 0);\n"
+ " \n"
+ " \tif (twosocks) {\n"
+ "-\t\tirq_set_irq_type(d1, IRQ_TYPE_EDGE_BOTH);\n"
+ " \t\tirq_set_irq_type(c1, IRQ_TYPE_LEVEL_LOW);\n"
+ " \t\tirq_set_irq_type(s1, IRQ_TYPE_LEVEL_LOW);\n"
+ " \n"
+ "--- a/arch/mips/alchemy/devboards/db1550.c\n"
+ "+++ b/arch/mips/alchemy/devboards/db1550.c\n"
+ "@@ -514,7 +514,7 @@ static void __init db1550_devices(void)\n"
+ " \t\tAU1000_PCMCIA_MEM_PHYS_ADDR  + 0x000400000 - 1,\n"
+ " \t\tAU1000_PCMCIA_IO_PHYS_ADDR,\n"
+ " \t\tAU1000_PCMCIA_IO_PHYS_ADDR   + 0x000010000 - 1,\n"
+ "-\t\tAU1550_GPIO3_INT, AU1550_GPIO0_INT,\n"
+ "+\t\tAU1550_GPIO3_INT, 0,\n"
+ " \t\t/*AU1550_GPIO21_INT*/0, 0, 0);\n"
+ " \n"
+ " \tdb1x_register_pcmcia_socket(\n"
+ "@@ -524,7 +524,7 @@ static void __init db1550_devices(void)\n"
+ " \t\tAU1000_PCMCIA_MEM_PHYS_ADDR  + 0x004400000 - 1,\n"
+ " \t\tAU1000_PCMCIA_IO_PHYS_ADDR   + 0x004000000,\n"
+ " \t\tAU1000_PCMCIA_IO_PHYS_ADDR   + 0x004010000 - 1,\n"
+ "-\t\tAU1550_GPIO5_INT, AU1550_GPIO1_INT,\n"
+ "+\t\tAU1550_GPIO5_INT, 1,\n"
+ " \t\t/*AU1550_GPIO22_INT*/0, 0, 1);\n"
+ " \n"
+ " \tplatform_device_register(&db1550_nand_dev);\n"
+ "--- a/drivers/pcmcia/db1xxx_ss.c\n"
+ "+++ b/drivers/pcmcia/db1xxx_ss.c\n"
+ "@@ -56,6 +56,7 @@ struct db1x_pcmcia_sock {\n"
+ " \tint\tstschg_irq;\t/* card-status-change irq */\n"
+ " \tint\tcard_irq;\t/* card irq */\n"
+ " \tint\teject_irq;\t/* db1200/pb1200 have these */\n"
+ "+\tint\tinsert_gpio;\t/* db1000 carddetect gpio */\n"
+ " \n"
+ " #define BOARD_TYPE_DEFAULT\t0\t/* most boards */\n"
+ " #define BOARD_TYPE_DB1200\t1\t/* IRQs aren't gpios */\n"
+ "@@ -83,7 +84,7 @@ static int db1200_card_inserted(struct d\n"
+ " /* carddetect gpio: low-active */\n"
+ " static int db1000_card_inserted(struct db1x_pcmcia_sock *sock)\n"
+ " {\n"
+ "-\treturn !gpio_get_value(irq_to_gpio(sock->insert_irq));\n"
+ "+\treturn !gpio_get_value(sock->insert_gpio);\n"
+ " }\n"
+ " \n"
+ " static int db1x_card_inserted(struct db1x_pcmcia_sock *sock)\n"
+ "@@ -457,9 +458,15 @@ static int db1x_pcmcia_socket_probe(stru\n"
+ " \tr = platform_get_resource_byname(pdev, IORESOURCE_IRQ, \"card\");\n"
+ " \tsock->card_irq = r ? r->start : 0;\n"
+ " \n"
+ "-\t/* insert: irq which triggers on card insertion/ejection */\n"
+ "+\t/* insert: irq which triggers on card insertion/ejection\n"
+ "+\t * BIG FAT NOTE: on DB1000/1100/1500/1550 we pass a GPIO here!\n"
+ "+\t */\n"
+ " \tr = platform_get_resource_byname(pdev, IORESOURCE_IRQ, \"insert\");\n"
+ " \tsock->insert_irq = r ? r->start : -1;\n"
+ "+\tif (sock->board_type == BOARD_TYPE_DEFAULT) {\n"
+ "+\t\tsock->insert_gpio = r ? r->start : -1;\n"
+ "+\t\tsock->insert_irq = r ? gpio_to_irq(r->start) : -1;\n"
+ "+\t}\n"
+ " \n"
+ " \t/* stschg: irq which trigger on card status change (optional) */\n"
+ " \tr = platform_get_resource_byname(pdev, IORESOURCE_IRQ, \"stschg\");\n"
+ "\n"
+ "\n"
+ "Patches currently in stable-queue which might be from manuel.lauss@gmail.com are\n"
+ "\n"
+ queue-4.5/pcmcia-db1xxx_ss-fix-last-irq_to_gpio-user.patch
 
-5dfe2ccefb37385f22af36c5aa6f3f5bf391f022cbaef558c0681c79bdb681a4
+b45a063dc5c66f9c0b3273bcc74368c6482ea74d6da0772aa11b9d14bc837806

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.