diff for duplicates of <50CB68AB.5070806@grandegger.com> diff --git a/a/1.txt b/N1/1.txt index 626ad3d..37a8f07 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -16,11 +16,3 @@ I'm going to re-test this version next week. Attached you will find my GPIO block adoptions for the AT91. Wolfgang - --------------- next part -------------- -A non-text attachment was scrubbed... -Name: 0001-gpio-add-GPIO-block-callback-functions-for-AT91.patch -Type: text/x-diff -Size: 2721 bytes -Desc: not available -URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20121214/29dc065d/attachment-0001.bin> diff --git a/N1/2.hdr b/N1/2.hdr new file mode 100644 index 0000000..f757955 --- /dev/null +++ b/N1/2.hdr @@ -0,0 +1,5 @@ +Content-Type: text/x-diff; + name="0001-gpio-add-GPIO-block-callback-functions-for-AT91.patch" +Content-Transfer-Encoding: 7bit +Content-Disposition: attachment; + filename*0="0001-gpio-add-GPIO-block-callback-functions-for-AT91.patch" diff --git a/N1/2.txt b/N1/2.txt new file mode 100644 index 0000000..41247e7 --- /dev/null +++ b/N1/2.txt @@ -0,0 +1,68 @@ +>From 16c0e4b933dcdb3859184190b62655f4ac90949f Mon Sep 17 00:00:00 2001 +From: Wolfgang Grandegger <wg@grandegger.com> +Date: Mon, 3 Dec 2012 08:31:55 +0100 +Subject: [PATCH] gpio: add GPIO block callback functions for AT91 + +Signed-off-by: Wolfgang Grandegger <wg@grandegger.com> +--- + arch/arm/mach-at91/gpio.c | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) + +diff --git a/arch/arm/mach-at91/gpio.c b/arch/arm/mach-at91/gpio.c +index be42cf0..dd0853d 100644 +--- a/arch/arm/mach-at91/gpio.c ++++ b/arch/arm/mach-at91/gpio.c +@@ -48,7 +48,9 @@ struct at91_gpio_chip { + + static void at91_gpiolib_dbg_show(struct seq_file *s, struct gpio_chip *chip); + static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val); ++static void at91_gpiolib_set_block(struct gpio_chip *chip, unsigned long mask, unsigned long val); + static int at91_gpiolib_get(struct gpio_chip *chip, unsigned offset); ++static unsigned long at91_gpiolib_get_block(struct gpio_chip *chip, unsigned long mask); + static int at91_gpiolib_direction_output(struct gpio_chip *chip, + unsigned offset, int val); + static int at91_gpiolib_direction_input(struct gpio_chip *chip, +@@ -62,7 +64,9 @@ static int at91_gpiolib_to_irq(struct gpio_chip *chip, unsigned offset); + .direction_input = at91_gpiolib_direction_input, \ + .direction_output = at91_gpiolib_direction_output, \ + .get = at91_gpiolib_get, \ ++ .get_block = at91_gpiolib_get_block, \ + .set = at91_gpiolib_set, \ ++ .set_block = at91_gpiolib_set_block, \ + .dbg_show = at91_gpiolib_dbg_show, \ + .to_irq = at91_gpiolib_to_irq, \ + .ngpio = nr_gpio, \ +@@ -896,6 +900,16 @@ static int at91_gpiolib_get(struct gpio_chip *chip, unsigned offset) + return (pdsr & mask) != 0; + } + ++static unsigned long at91_gpiolib_get_block(struct gpio_chip *chip, unsigned long mask) ++{ ++ struct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip); ++ void __iomem *pio = at91_gpio->regbase; ++ u32 pdsr; ++ ++ pdsr = __raw_readl(pio + PIO_PDSR); ++ return pdsr & mask; ++} ++ + static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val) + { + struct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip); +@@ -905,6 +919,14 @@ static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val) + __raw_writel(mask, pio + (val ? PIO_SODR : PIO_CODR)); + } + ++static void at91_gpiolib_set_block(struct gpio_chip *chip, unsigned long mask, unsigned long val) ++{ ++ struct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip); ++ void __iomem *pio = at91_gpio->regbase; ++ ++ __raw_writel(mask, pio + (val ? PIO_SODR : PIO_CODR)); ++} ++ + static void at91_gpiolib_dbg_show(struct seq_file *s, struct gpio_chip *chip) + { + int i; +-- +1.7.9.5 diff --git a/a/content_digest b/N1/content_digest index 9fa95fc..0fae158 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,9 +1,22 @@ "ref\01355495185-24220-1-git-send-email-stigge@antcom.de\0" - "From\0wg@grandegger.com (Wolfgang Grandegger)\0" - "Subject\0[PATCH RESEND 0/6 v10] gpio: Add block GPIO\0" + "From\0Wolfgang Grandegger <wg@grandegger.com>\0" + "Subject\0Re: [PATCH RESEND 0/6 v10] gpio: Add block GPIO\0" "Date\0Fri, 14 Dec 2012 18:58:03 +0100\0" - "To\0linux-arm-kernel@lists.infradead.org\0" - "\00:1\0" + "To\0Roland Stigge <stigge@antcom.de>\0" + "Cc\0gregkh@linuxfoundation.org" + grant.likely@secretlab.ca + linus.walleij@linaro.org + linux-kernel@vger.kernel.org + linux-arm-kernel@lists.infradead.org + w.sang@pengutronix.de + jbe@pengutronix.de + plagnioj@jcrosoft.com + highguy@gmail.com + broonie@opensource.wolfsonmicro.com + daniel-gl@gmx.net + rmallon@gmail.com + " sr@denx.de\0" + "\01:1\0" "b\0" "On 12/14/2012 03:26 PM, Roland Stigge wrote:\n" "> This set of patches adds:\n" @@ -22,14 +35,77 @@ "I'm going to re-test this version next week. Attached you will find my\n" "GPIO block adoptions for the AT91.\n" "\n" - "Wolfgang\n" + Wolfgang + "\01:2\0" + "fn\00001-gpio-add-GPIO-block-callback-functions-for-AT91.patch\0" + "b\0" + ">From 16c0e4b933dcdb3859184190b62655f4ac90949f Mon Sep 17 00:00:00 2001\n" + "From: Wolfgang Grandegger <wg@grandegger.com>\n" + "Date: Mon, 3 Dec 2012 08:31:55 +0100\n" + "Subject: [PATCH] gpio: add GPIO block callback functions for AT91\n" + "\n" + "Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>\n" + "---\n" + " arch/arm/mach-at91/gpio.c | 22 ++++++++++++++++++++++\n" + " 1 file changed, 22 insertions(+)\n" "\n" - "-------------- next part --------------\n" - "A non-text attachment was scrubbed...\n" - "Name: 0001-gpio-add-GPIO-block-callback-functions-for-AT91.patch\n" - "Type: text/x-diff\n" - "Size: 2721 bytes\n" - "Desc: not available\n" - URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20121214/29dc065d/attachment-0001.bin> + "diff --git a/arch/arm/mach-at91/gpio.c b/arch/arm/mach-at91/gpio.c\n" + "index be42cf0..dd0853d 100644\n" + "--- a/arch/arm/mach-at91/gpio.c\n" + "+++ b/arch/arm/mach-at91/gpio.c\n" + "@@ -48,7 +48,9 @@ struct at91_gpio_chip {\n" + " \n" + " static void at91_gpiolib_dbg_show(struct seq_file *s, struct gpio_chip *chip);\n" + " static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val);\n" + "+static void at91_gpiolib_set_block(struct gpio_chip *chip, unsigned long mask, unsigned long val);\n" + " static int at91_gpiolib_get(struct gpio_chip *chip, unsigned offset);\n" + "+static unsigned long at91_gpiolib_get_block(struct gpio_chip *chip, unsigned long mask);\n" + " static int at91_gpiolib_direction_output(struct gpio_chip *chip,\n" + " \t\t\t\t\t unsigned offset, int val);\n" + " static int at91_gpiolib_direction_input(struct gpio_chip *chip,\n" + "@@ -62,7 +64,9 @@ static int at91_gpiolib_to_irq(struct gpio_chip *chip, unsigned offset);\n" + " \t\t\t.direction_input = at91_gpiolib_direction_input, \\\n" + " \t\t\t.direction_output = at91_gpiolib_direction_output, \\\n" + " \t\t\t.get\t\t = at91_gpiolib_get,\t\t\\\n" + "+\t\t\t.get_block\t = at91_gpiolib_get_block,\t\\\n" + " \t\t\t.set\t\t = at91_gpiolib_set,\t\t\\\n" + "+\t\t\t.set_block\t = at91_gpiolib_set_block,\t\\\n" + " \t\t\t.dbg_show\t = at91_gpiolib_dbg_show,\t\\\n" + " \t\t\t.to_irq\t\t = at91_gpiolib_to_irq,\t\\\n" + " \t\t\t.ngpio\t\t = nr_gpio,\t\t\t\\\n" + "@@ -896,6 +900,16 @@ static int at91_gpiolib_get(struct gpio_chip *chip, unsigned offset)\n" + " \treturn (pdsr & mask) != 0;\n" + " }\n" + " \n" + "+static unsigned long at91_gpiolib_get_block(struct gpio_chip *chip, unsigned long mask)\n" + "+{\n" + "+\tstruct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip);\n" + "+\tvoid __iomem *pio = at91_gpio->regbase;\n" + "+\tu32 pdsr;\n" + "+\n" + "+\tpdsr = __raw_readl(pio + PIO_PDSR);\n" + "+\treturn pdsr & mask;\n" + "+}\n" + "+\n" + " static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val)\n" + " {\n" + " \tstruct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip);\n" + "@@ -905,6 +919,14 @@ static void at91_gpiolib_set(struct gpio_chip *chip, unsigned offset, int val)\n" + " \t__raw_writel(mask, pio + (val ? PIO_SODR : PIO_CODR));\n" + " }\n" + " \n" + "+static void at91_gpiolib_set_block(struct gpio_chip *chip, unsigned long mask, unsigned long val)\n" + "+{\n" + "+\tstruct at91_gpio_chip *at91_gpio = to_at91_gpio_chip(chip);\n" + "+\tvoid __iomem *pio = at91_gpio->regbase;\n" + "+\n" + "+\t__raw_writel(mask, pio + (val ? PIO_SODR : PIO_CODR));\n" + "+}\n" + "+\n" + " static void at91_gpiolib_dbg_show(struct seq_file *s, struct gpio_chip *chip)\n" + " {\n" + " \tint i;\n" + "-- \n" + 1.7.9.5 -bd7e74af16f4116a988c2c431d105554a48f151a71d6d27ab534ae5637cbdf74 +c697aff1150106dd4d0de5634908ea45dcfc0df44c32b90dd45444502ee2c59e
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.