[U-Boot] [PATCH] BeagleBoard: match gpio_request() and gpio_free()

This patch adds code to match gpio_free() to the corresponding gpio_request()
Signed-off-by: In-Bae Jeong kukyakya@gmail.com --- board/ti/beagle/beagle.c | 41 +++++++++++++++++++++++++++-------------- 1 files changed, 27 insertions(+), 14 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index aa5047c..7e6220a 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -115,24 +115,37 @@ int board_init(void) int get_board_revision(void) { int revision; + int error = 0;
- if (!gpio_request(171, "") && - !gpio_request(172, "") && - !gpio_request(173, "")) { + if (gpio_request(171, "")) { + error = 171; + goto GPIO_171_ERR; + } + if (gpio_request(172, "")) { + error = 172; + goto GPIO_172_ERR; + } + if (gpio_request(173, "")) { + error = 173; + goto GPIO_173_ERR; + } + + gpio_direction_input(171); + gpio_direction_input(172); + gpio_direction_input(173);
- gpio_direction_input(171); - gpio_direction_input(172); - gpio_direction_input(173); + revision = gpio_get_value(173) << 2 | + gpio_get_value(172) << 1 | + gpio_get_value(171);
- revision = gpio_get_value(173) << 2 | - gpio_get_value(172) << 1 | - gpio_get_value(171); +GPIO_NO_ERR: gpio_free(173); +GPIO_173_ERR: gpio_free(172); +GPIO_172_ERR: gpio_free(171); +GPIO_171_ERR:
- gpio_free(171); - gpio_free(172); - gpio_free(173); - } else { - printf("Error: unable to acquire board revision GPIOs\n"); + if (error) { + printf("Error: Unable to acquire board revision GPIO %i\n", + error); revision = -1; }

On Tuesday, October 04, 2011 03:59:19 In-Bae Jeong wrote:
- if (!gpio_request(171, "") &&
!gpio_request(172, "") &&
!gpio_request(173, "")) {
- if (gpio_request(171, "")) {
error = 171;
goto GPIO_171_ERR;
- }
- if (gpio_request(172, "")) {
error = 172;
goto GPIO_172_ERR;
- }
- if (gpio_request(173, "")) {
error = 173;
goto GPIO_173_ERR;
- }
why isn't this code passing a proper label to gpio_request() ?
+GPIO_NO_ERR: gpio_free(173); +GPIO_173_ERR: gpio_free(172); +GPIO_172_ERR: gpio_free(171); +GPIO_171_ERR:
labels and statements should not be on the same line
also, lose the caps -mike

This patch adds code to match gpio_free() to the corresponding gpio_request()
Signed-off-by: In-Bae Jeong kukyakya@gmail.com --- Changes for v2: - added lables for gpio_request() - separated labels and statements --- board/ti/beagle/beagle.c | 43 +++++++++++++++++++++++++++++-------------- 1 files changed, 29 insertions(+), 14 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index aa5047c..6859594 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -115,24 +115,39 @@ int board_init(void) int get_board_revision(void) { int revision; + int error = 0;
- if (!gpio_request(171, "") && - !gpio_request(172, "") && - !gpio_request(173, "")) { + if (gpio_request(171, "revision0")) { + error = 171; + goto gpio_171_err; + } + if (gpio_request(172, "revision1")) { + error = 172; + goto gpio_172_err; + } + if (gpio_request(173, "revision2")) { + error = 173; + goto gpio_173_err; + } + + gpio_direction_input(171); + gpio_direction_input(172); + gpio_direction_input(173);
- gpio_direction_input(171); - gpio_direction_input(172); - gpio_direction_input(173); + revision = gpio_get_value(173) << 2 | + gpio_get_value(172) << 1 | + gpio_get_value(171);
- revision = gpio_get_value(173) << 2 | - gpio_get_value(172) << 1 | - gpio_get_value(171); + gpio_free(173); +gpio_173_err: + gpio_free(172); +gpio_172_err: + gpio_free(171); +gpio_171_err:
- gpio_free(171); - gpio_free(172); - gpio_free(173); - } else { - printf("Error: unable to acquire board revision GPIOs\n"); + if (error) { + printf("Error: Unable to acquire board revision gpio %i\n", + error); revision = -1; }

Hi In-Bae Jeong,
Le 05/10/2011 14:08, In-Bae Jeong a écrit :
This patch adds code to match gpio_free() to the corresponding gpio_request()
Signed-off-by: In-Bae Jeongkukyakya@gmail.com
Changes for v2: - added lables for gpio_request() - separated labels and statements
board/ti/beagle/beagle.c | 43 +++++++++++++++++++++++++++++-------------- 1 files changed, 29 insertions(+), 14 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index aa5047c..6859594 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -115,24 +115,39 @@ int board_init(void) int get_board_revision(void) { int revision;
- int error = 0;
- if (!gpio_request(171, "")&&
!gpio_request(172, "")&&
!gpio_request(173, "")) {
- if (gpio_request(171, "revision0")) {
error = 171;
goto gpio_171_err;
- }
- if (gpio_request(172, "revision1")) {
error = 172;
goto gpio_172_err;
- }
- if (gpio_request(173, "revision2")) {
error = 173;
goto gpio_173_err;
- }
- gpio_direction_input(171);
- gpio_direction_input(172);
- gpio_direction_input(173);
gpio_direction_input(171);
gpio_direction_input(172);
gpio_direction_input(173);
- revision = gpio_get_value(173)<< 2 |
gpio_get_value(172)<< 1 |
gpio_get_value(171);
revision = gpio_get_value(173)<< 2 |
gpio_get_value(172)<< 1 |
gpio_get_value(171);
- gpio_free(173);
+gpio_173_err:
- gpio_free(172);
+gpio_172_err:
- gpio_free(171);
+gpio_171_err:
gpio_free(171);
gpio_free(172);
gpio_free(173);
- } else {
printf("Error: unable to acquire board revision GPIOs\n");
- if (error) {
printf("Error: Unable to acquire board revision gpio %i\n",
Nitpick: i and d format specifiers are indeed interchangeable, but d is far more common -- to the point that I had to go and check wether i differed in any from d. Can you resubmit using d as the specifier?
revision = -1; }error);
Amicalement,

Le 21/10/2011 21:14, Albert ARIBAUD a écrit :
Hi In-Bae Jeong,
Le 05/10/2011 14:08, In-Bae Jeong a écrit :
This patch adds code to match gpio_free() to the corresponding gpio_request()
Signed-off-by: In-Bae Jeongkukyakya@gmail.com
Changes for v2: - added lables for gpio_request() - separated labels and statements
board/ti/beagle/beagle.c | 43 +++++++++++++++++++++++++++++-------------- 1 files changed, 29 insertions(+), 14 deletions(-)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c index aa5047c..6859594 100644 --- a/board/ti/beagle/beagle.c +++ b/board/ti/beagle/beagle.c @@ -115,24 +115,39 @@ int board_init(void) int get_board_revision(void) { int revision;
- int error = 0;
- if (!gpio_request(171, "")&&
!gpio_request(172, "")&&
!gpio_request(173, "")) {
- if (gpio_request(171, "revision0")) {
error = 171;
goto gpio_171_err;
- }
- if (gpio_request(172, "revision1")) {
error = 172;
goto gpio_172_err;
- }
- if (gpio_request(173, "revision2")) {
error = 173;
goto gpio_173_err;
- }
- gpio_direction_input(171);
- gpio_direction_input(172);
- gpio_direction_input(173);
gpio_direction_input(171);
gpio_direction_input(172);
gpio_direction_input(173);
- revision = gpio_get_value(173)<< 2 |
gpio_get_value(172)<< 1 |
gpio_get_value(171);
revision = gpio_get_value(173)<< 2 |
gpio_get_value(172)<< 1 |
gpio_get_value(171);
- gpio_free(173);
+gpio_173_err:
- gpio_free(172);
+gpio_172_err:
- gpio_free(171);
+gpio_171_err:
gpio_free(171);
gpio_free(172);
gpio_free(173);
- } else {
printf("Error: unable to acquire board revision GPIOs\n");
- if (error) {
printf("Error: Unable to acquire board revision gpio %i\n",
Nitpick: i and d format specifiers are indeed interchangeable, but d is far more common -- to the point that I had to go and check wether i differed in any from d. Can you resubmit using d as the specifier?
}error); revision = -1;
Amicalement,
Ping?
Amicalement,
participants (3)
-
Albert ARIBAUD
-
In-Bae Jeong
-
Mike Frysinger