diff for duplicates of <4D2CEDD7.4020507@ti.com> diff --git a/a/2.hdr b/a/2.hdr deleted file mode 100644 index 59b7c2b..0000000 --- a/a/2.hdr +++ /dev/null @@ -1,5 +0,0 @@ -Content-Type: text/x-patch; - name="v6.patch" -Content-Transfer-Encoding: 7bit -Content-Disposition: inline; - filename="v6.patch" diff --git a/a/2.txt b/a/2.txt deleted file mode 100644 index de155b6..0000000 --- a/a/2.txt +++ /dev/null @@ -1,92 +0,0 @@ ->From d08694a8dff8506f1963d9249a89dae9fe508e70 Mon Sep 17 00:00:00 2001 -From: Koen Kooi <koen@beagleboard.org> -Date: Thu, 6 Jan 2011 13:29:18 -0600 -Subject: [PATCH v6 3/3] omap3: beaglexm: fix power on of DVI - -TFP410 DVI chip is used to provide display out. -This chip is controlled by 2 lines: -LDO which supplies the power is controlled over gpio + 2 -and the enable of the chip itself is done over gpio + 1 -NOTE: the LDO is necessary for LED, serial blocks as well. - -gpio + 1 was used to sense USB overcurrent in vanilla beagle. - -Without this fix, the display would not function as the LDO -remains shut down. - -[nm@ti.com: split up, added descriptive changelogs] -Signed-off-by: Nishanth Menon <nm@ti.com> -Signed-off-by: Koen Kooi <koen@beagleboard.org> ---- - arch/arm/mach-omap2/board-omap3beagle.c | 42 ++++++++++++++++++++++++++++-- - 1 files changed, 39 insertions(+), 3 deletions(-) - -diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c -index 673deb9..28dfe8e 100644 ---- a/arch/arm/mach-omap2/board-omap3beagle.c -+++ b/arch/arm/mach-omap2/board-omap3beagle.c -@@ -273,6 +273,8 @@ static struct gpio_led gpio_leds[]; - static int beagle_twl_gpio_setup(struct device *dev, - unsigned gpio, unsigned ngpio) - { -+ int r; -+ - if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) { - mmc[0].gpio_wp = -EINVAL; - } else if ((omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_C1_3) || -@@ -293,9 +295,16 @@ static int beagle_twl_gpio_setup(struct device *dev, - /* REVISIT: need ehci-omap hooks for external VBUS - * power switch and overcurrent detect - */ -- -- gpio_request(gpio + 1, "EHCI_nOC"); -- gpio_direction_input(gpio + 1); -+ if (omap3_beagle_get_rev() != OMAP3BEAGLE_BOARD_XM) { -+ r = gpio_request(gpio + 1, "EHCI_nOC"); -+ if (!r) { -+ r = gpio_direction_input(gpio + 1); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure EHCI_nOC\n", __func__); -+ } - - /* - * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active -@@ -316,6 +325,33 @@ static int beagle_twl_gpio_setup(struct device *dev, - /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */ - gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1; - -+ /* -+ * gpio + 1 on Xm controls the TFP410's enable line (active low) -+ * gpio + 2 control varies depending on the board rev as follows: -+ * P7/P8 revisions(prototype): Camera EN -+ * A2+ revisions (production): LDO (supplies DVI, serial, led blocks) -+ */ -+ if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) { -+ r = gpio_request(gpio + 1, "nDVI_PWR_EN"); -+ if (!r) { -+ r = gpio_direction_output(gpio + 1, 0); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure nDVI_PWR_EN\n", -+ __func__); -+ r = gpio_request(gpio + 2, "DVI_LDO_EN"); -+ if (!r) { -+ r = gpio_direction_output(gpio + 2, 1); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure DVI_LDO_EN\n", -+ __func__); -+ } -+ - return 0; - } - --- -1.6.3.3 diff --git a/a/3.hdr b/a/3.hdr deleted file mode 100644 index 43631c2..0000000 --- a/a/3.hdr +++ /dev/null @@ -1,5 +0,0 @@ -Content-Type: text/x-patch; - name="gpio-check.patch" -Content-Transfer-Encoding: 7bit -Content-Disposition: inline; - filename="gpio-check.patch" diff --git a/a/3.txt b/a/3.txt deleted file mode 100644 index 20e8da8..0000000 --- a/a/3.txt +++ /dev/null @@ -1,97 +0,0 @@ ->From f16524ab1cfba7d2a9bd0a8ef5a577a1fb41bfff Mon Sep 17 00:00:00 2001 -From: Nishanth Menon <nm@ti.com> -Date: Tue, 11 Jan 2011 17:51:47 -0600 -Subject: [PATCH] omap3: beagle: check gpio returns in gpio_setup - -gpio request and set of directions need checks of return value -to ensure that operation succeeded or not. - -Signed-off-by: Nishanth Menon <nm@ti.com> ---- - arch/arm/mach-omap2/board-omap3beagle.c | 49 ++++++++++++++++++++++++------- - 1 files changed, 38 insertions(+), 11 deletions(-) - -diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c -index 458aee4..fc598d3 100644 ---- a/arch/arm/mach-omap2/board-omap3beagle.c -+++ b/arch/arm/mach-omap2/board-omap3beagle.c -@@ -273,6 +273,8 @@ static struct gpio_led gpio_leds[]; - static int beagle_twl_gpio_setup(struct device *dev, - unsigned gpio, unsigned ngpio) - { -+ int r; -+ - if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) { - mmc[0].gpio_wp = -EINVAL; - } else if ((omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_C1_3) || -@@ -294,19 +296,29 @@ static int beagle_twl_gpio_setup(struct device *dev, - * power switch and overcurrent detect - */ - if (omap3_beagle_get_rev() != OMAP3BEAGLE_BOARD_XM) { -- gpio_request(gpio + 1, "EHCI_nOC"); -- gpio_direction_input(gpio + 1); -+ r = gpio_request(gpio + 1, "EHCI_nOC"); -+ if (!r) { -+ r = gpio_direction_input(gpio + 1); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure EHCI_nOC\n", __func__); - } - - /* - * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active - * high / others active low) - */ -- gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR"); -- if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) -- gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1); -- else -- gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0); -+ r = gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR"); -+ if (!r) { -+ if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) -+ r = gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1); -+ else -+ r = gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0); -+ } -+ if (r) -+ pr_err("%s: unable to configure nEN_USB_PWR\n", __func__); - - /* DVI reset GPIO is different between beagle revisions */ - if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) -@@ -324,12 +336,27 @@ static int beagle_twl_gpio_setup(struct device *dev, - * A2+ revisions (production): LDO (supplies DVI, serial, led blocks) - */ - if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) { -- gpio_request(gpio + 1, "nDVI_PWR_EN"); -- gpio_direction_output(gpio + 1, 0); -- gpio_request(gpio + 2, "DVI_LDO_EN"); -- gpio_direction_output(gpio + 2, 1); -+ r = gpio_request(gpio + 1, "nDVI_PWR_EN"); -+ if (!r) { -+ r = gpio_direction_output(gpio + 1, 0); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure nDVI_PWR_EN\n", -+ __func__); -+ r = gpio_request(gpio + 2, "DVI_LDO_EN"); -+ if (!r) { -+ r = gpio_direction_output(gpio + 2, 1); -+ if (r) -+ gpio_free(gpio + 1); -+ } -+ if (r) -+ pr_err("%s: unable to configure DVI_LDO_EN\n", -+ __func__); - } - -+ - return 0; - } - --- -1.6.3.3 diff --git a/a/content_digest b/N1/content_digest index 0a8b83d..1d4d883 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,15 +1,10 @@ "ref\01294766017-12182-4-git-send-email-nm@ti.com\0" "ref\020110111232329.GY4957@atomide.com\0" - "From\0Nishanth Menon <nm@ti.com>\0" - "Subject\0Re: [PATCH v5 3/3] omap3: beaglexm: fix power on of DVI\0" + "From\0nm@ti.com (Nishanth Menon)\0" + "Subject\0[PATCH v5 3/3] omap3: beaglexm: fix power on of DVI\0" "Date\0Tue, 11 Jan 2011 17:55:03 -0600\0" - "To\0Tony Lindgren <tony@atomide.com>\0" - "Cc\0l-o <linux-omap@vger.kernel.org>" - l-a <linux-arm-kernel@lists.infradead.org> - Kevin <khilman@ti.com> - Koen Kooi <koen@beagleboard.org> - " Aaro <aaro.koskinen@nokia.com>\0" - "\01:1\0" + "To\0linux-arm-kernel@lists.infradead.org\0" + "\00:1\0" "b\0" "Tony Lindgren had written, on 01/11/2011 05:23 PM, the following:\n" "[..]\n" @@ -32,200 +27,5 @@ "-- \n" "Regards,\n" Nishanth Menon - "\01:2\0" - "fn\0v6.patch\0" - "b\0" - ">From d08694a8dff8506f1963d9249a89dae9fe508e70 Mon Sep 17 00:00:00 2001\n" - "From: Koen Kooi <koen@beagleboard.org>\n" - "Date: Thu, 6 Jan 2011 13:29:18 -0600\n" - "Subject: [PATCH v6 3/3] omap3: beaglexm: fix power on of DVI\n" - "\n" - "TFP410 DVI chip is used to provide display out.\n" - "This chip is controlled by 2 lines:\n" - "LDO which supplies the power is controlled over gpio + 2\n" - "and the enable of the chip itself is done over gpio + 1\n" - "NOTE: the LDO is necessary for LED, serial blocks as well.\n" - "\n" - "gpio + 1 was used to sense USB overcurrent in vanilla beagle.\n" - "\n" - "Without this fix, the display would not function as the LDO\n" - "remains shut down.\n" - "\n" - "[nm@ti.com: split up, added descriptive changelogs]\n" - "Signed-off-by: Nishanth Menon <nm@ti.com>\n" - "Signed-off-by: Koen Kooi <koen@beagleboard.org>\n" - "---\n" - " arch/arm/mach-omap2/board-omap3beagle.c | 42 ++++++++++++++++++++++++++++--\n" - " 1 files changed, 39 insertions(+), 3 deletions(-)\n" - "\n" - "diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c\n" - "index 673deb9..28dfe8e 100644\n" - "--- a/arch/arm/mach-omap2/board-omap3beagle.c\n" - "+++ b/arch/arm/mach-omap2/board-omap3beagle.c\n" - "@@ -273,6 +273,8 @@ static struct gpio_led gpio_leds[];\n" - " static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t\tunsigned gpio, unsigned ngpio)\n" - " {\n" - "+\tint r;\n" - "+\n" - " \tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {\n" - " \t\tmmc[0].gpio_wp = -EINVAL;\n" - " \t} else if ((omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_C1_3) ||\n" - "@@ -293,9 +295,16 @@ static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t/* REVISIT: need ehci-omap hooks for external VBUS\n" - " \t * power switch and overcurrent detect\n" - " \t */\n" - "-\n" - "-\tgpio_request(gpio + 1, \"EHCI_nOC\");\n" - "-\tgpio_direction_input(gpio + 1);\n" - "+\tif (omap3_beagle_get_rev() != OMAP3BEAGLE_BOARD_XM) {\n" - "+\t\tr = gpio_request(gpio + 1, \"EHCI_nOC\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_input(gpio + 1);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure EHCI_nOC\\n\", __func__);\n" - "+\t}\n" - " \n" - " \t/*\n" - " \t * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active\n" - "@@ -316,6 +325,33 @@ static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */\n" - " \tgpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;\n" - " \n" - "+\t/*\n" - "+\t * gpio + 1 on Xm controls the TFP410's enable line (active low)\n" - "+\t * gpio + 2 control varies depending on the board rev as follows:\n" - "+\t * P7/P8 revisions(prototype): Camera EN\n" - "+\t * A2+ revisions (production): LDO (supplies DVI, serial, led blocks)\n" - "+\t */\n" - "+\tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {\n" - "+\t\tr = gpio_request(gpio + 1, \"nDVI_PWR_EN\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_output(gpio + 1, 0);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure nDVI_PWR_EN\\n\",\n" - "+\t\t\t\t__func__);\n" - "+\t\tr = gpio_request(gpio + 2, \"DVI_LDO_EN\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_output(gpio + 2, 1);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure DVI_LDO_EN\\n\",\n" - "+\t\t\t\t__func__);\n" - "+\t}\n" - "+\n" - " \treturn 0;\n" - " }\n" - " \n" - "-- \n" - 1.6.3.3 - "\01:3\0" - "fn\0gpio-check.patch\0" - "b\0" - ">From f16524ab1cfba7d2a9bd0a8ef5a577a1fb41bfff Mon Sep 17 00:00:00 2001\n" - "From: Nishanth Menon <nm@ti.com>\n" - "Date: Tue, 11 Jan 2011 17:51:47 -0600\n" - "Subject: [PATCH] omap3: beagle: check gpio returns in gpio_setup\n" - "\n" - "gpio request and set of directions need checks of return value\n" - "to ensure that operation succeeded or not.\n" - "\n" - "Signed-off-by: Nishanth Menon <nm@ti.com>\n" - "---\n" - " arch/arm/mach-omap2/board-omap3beagle.c | 49 ++++++++++++++++++++++++-------\n" - " 1 files changed, 38 insertions(+), 11 deletions(-)\n" - "\n" - "diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c\n" - "index 458aee4..fc598d3 100644\n" - "--- a/arch/arm/mach-omap2/board-omap3beagle.c\n" - "+++ b/arch/arm/mach-omap2/board-omap3beagle.c\n" - "@@ -273,6 +273,8 @@ static struct gpio_led gpio_leds[];\n" - " static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t\tunsigned gpio, unsigned ngpio)\n" - " {\n" - "+\tint r;\n" - "+\n" - " \tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {\n" - " \t\tmmc[0].gpio_wp = -EINVAL;\n" - " \t} else if ((omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_C1_3) ||\n" - "@@ -294,19 +296,29 @@ static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t * power switch and overcurrent detect\n" - " \t */\n" - " \tif (omap3_beagle_get_rev() != OMAP3BEAGLE_BOARD_XM) {\n" - "-\t\tgpio_request(gpio + 1, \"EHCI_nOC\");\n" - "-\t\tgpio_direction_input(gpio + 1);\n" - "+\t\tr = gpio_request(gpio + 1, \"EHCI_nOC\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_input(gpio + 1);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure EHCI_nOC\\n\", __func__);\n" - " \t}\n" - " \n" - " \t/*\n" - " \t * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active\n" - " \t * high / others active low)\n" - " \t */\n" - "-\tgpio_request(gpio + TWL4030_GPIO_MAX, \"nEN_USB_PWR\");\n" - "-\tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)\n" - "-\t\tgpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);\n" - "-\telse\n" - "-\t\tgpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);\n" - "+\tr = gpio_request(gpio + TWL4030_GPIO_MAX, \"nEN_USB_PWR\");\n" - "+\tif (!r) {\n" - "+\t\tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)\n" - "+\t\t\tr = gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);\n" - "+\t\telse\n" - "+\t\t\tr = gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);\n" - "+\t}\n" - "+\tif (r)\n" - "+\t\tpr_err(\"%s: unable to configure nEN_USB_PWR\\n\", __func__);\n" - " \n" - " \t/* DVI reset GPIO is different between beagle revisions */\n" - " \tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)\n" - "@@ -324,12 +336,27 @@ static int beagle_twl_gpio_setup(struct device *dev,\n" - " \t * A2+ revisions (production): LDO (supplies DVI, serial, led blocks)\n" - " \t */\n" - " \tif (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM) {\n" - "-\t\tgpio_request(gpio + 1, \"nDVI_PWR_EN\");\n" - "-\t\tgpio_direction_output(gpio + 1, 0);\n" - "-\t\tgpio_request(gpio + 2, \"DVI_LDO_EN\");\n" - "-\t\tgpio_direction_output(gpio + 2, 1);\n" - "+\t\tr = gpio_request(gpio + 1, \"nDVI_PWR_EN\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_output(gpio + 1, 0);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure nDVI_PWR_EN\\n\",\n" - "+\t\t\t\t__func__);\n" - "+\t\tr = gpio_request(gpio + 2, \"DVI_LDO_EN\");\n" - "+\t\tif (!r) {\n" - "+\t\t\tr = gpio_direction_output(gpio + 2, 1);\n" - "+\t\t\tif (r)\n" - "+\t\t\t\tgpio_free(gpio + 1);\n" - "+\t\t}\n" - "+\t\tif (r)\n" - "+\t\t\tpr_err(\"%s: unable to configure DVI_LDO_EN\\n\",\n" - "+\t\t\t\t__func__);\n" - " \t}\n" - " \n" - "+\n" - " \treturn 0;\n" - " }\n" - " \n" - "-- \n" - 1.6.3.3 -0708c0394f17dad1874dac5804f0422ddecec0bad75689c9264c425d966f1b5a +1551a4fda159ccfcb6d873050b372874cee00eb716b0de272388460e1d180664
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.