diff mbox

[RESENDv2] mach:-s3c64xx:Output trace information with WARN_ON if calls for setting up gpio board configuration fail in s3c64xx_i2s_cfg_gpio

Message ID 1443578870-14534-1-git-send-email-xerofoify@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Nick Sept. 30, 2015, 2:07 a.m. UTC
This fixes the function s3c64xx_i2c_cfg_gpio to log output to the 
kernel log buff with WARN_ON if any of the calls to either 
s3c_gpio_cfgpin_range or s3c_gpio_cfgpin fail as we cannot exit 
from s3c64xx_i2s_cfg_gpio if any of these calls fail due to 
other intended function work being required to complete. Therefore
due to this output our failed calls by means of WARN_ON to the
kernel log buffer for failed configuration of gpio devices using
this driver file.
v2:Fix Patch Wording as it was clearly confusing and incorrect

Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
---
 arch/arm/mach-s3c64xx/dev-audio.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Comments

Krzysztof Kozlowski Sept. 30, 2015, 11:48 p.m. UTC | #1
On 30.09.2015 11:07, Nicholas Krause wrote:
> This fixes the function s3c64xx_i2c_cfg_gpio to log output to the 
> kernel log buff with WARN_ON if any of the calls to either 
> s3c_gpio_cfgpin_range or s3c_gpio_cfgpin fail as we cannot exit 
> from s3c64xx_i2s_cfg_gpio if any of these calls fail due to 
> other intended function work being required to complete.

This is better now.

> Therefore
> due to this output our failed calls by means of WARN_ON to the
> kernel log buffer for failed configuration of gpio devices using
> this driver file.

I don't get this sentence. What do you want to say?


> v2:Fix Patch Wording as it was clearly confusing and incorrect

Changelog goes after --- separator.

Last question - have you compiled it? I mean truly compiled like
generated object file and linked objects into vmlinux?

Best regards,
Krzysztof

> 
> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
> ---
>  arch/arm/mach-s3c64xx/dev-audio.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/mach-s3c64xx/dev-audio.c b/arch/arm/mach-s3c64xx/dev-audio.c
> index ff780a8..5e7538b 100644
> --- a/arch/arm/mach-s3c64xx/dev-audio.c
> +++ b/arch/arm/mach-s3c64xx/dev-audio.c
> @@ -36,10 +36,10 @@ static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
>  		base = S3C64XX_GPE(0);
>  		break;
>  	case 2:
> -		s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5));
> -		s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5));
> -		s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5));
> -		s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));
> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5)));
> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5)));
> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5)));
> +		WARN_ON(s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));)
>  		return 0;
>  	default:
>  		printk(KERN_DEBUG "Invalid I2S Controller number: %d\n",
> @@ -47,7 +47,7 @@ static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
>  		return -EINVAL;
>  	}
>  
> -	s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3));
> +	WARN_ON(s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3)));
>  
>  	return 0;
>  }
>
Nick Oct. 1, 2015, 2:26 a.m. UTC | #2
On 2015-09-30 07:48 PM, Krzysztof Kozlowski wrote:
> On 30.09.2015 11:07, Nicholas Krause wrote:
>> This fixes the function s3c64xx_i2c_cfg_gpio to log output to the 
>> kernel log buff with WARN_ON if any of the calls to either 
>> s3c_gpio_cfgpin_range or s3c_gpio_cfgpin fail as we cannot exit 
>> from s3c64xx_i2s_cfg_gpio if any of these calls fail due to 
>> other intended function work being required to complete.
> 
> This is better now.
> 
>> Therefore
>> due to this output our failed calls by means of WARN_ON to the
>> kernel log buffer for failed configuration of gpio devices using
>> this driver file.
> 
> I don't get this sentence. What do you want to say?
> 
Fixed this in the v3 version.
> 
>> v2:Fix Patch Wording as it was clearly confusing and incorrect
> 
> Changelog goes after --- separator.
> 
> Last question - have you compiled it? I mean truly compiled like
> generated object file and linked objects into vmlinux?
I rebuild and it seems indeed there was a build warning. Sometimes through
rarely ccache can cause issues with this and therefore did a clean build to
make sure that the build was indeed working correctly without failure.
Sorry,
Nick 
> 
> Best regards,
> Krzysztof
> 
>>
>> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
>> ---
>>  arch/arm/mach-s3c64xx/dev-audio.c | 10 +++++-----
>>  1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/arch/arm/mach-s3c64xx/dev-audio.c b/arch/arm/mach-s3c64xx/dev-audio.c
>> index ff780a8..5e7538b 100644
>> --- a/arch/arm/mach-s3c64xx/dev-audio.c
>> +++ b/arch/arm/mach-s3c64xx/dev-audio.c
>> @@ -36,10 +36,10 @@ static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
>>  		base = S3C64XX_GPE(0);
>>  		break;
>>  	case 2:
>> -		s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5));
>> -		s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5));
>> -		s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5));
>> -		s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));
>> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5)));
>> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5)));
>> +		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5)));
>> +		WARN_ON(s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));)
>>  		return 0;
>>  	default:
>>  		printk(KERN_DEBUG "Invalid I2S Controller number: %d\n",
>> @@ -47,7 +47,7 @@ static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
>>  		return -EINVAL;
>>  	}
>>  
>> -	s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3));
>> +	WARN_ON(s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3)));
>>  
>>  	return 0;
>>  }
>>
>
diff mbox

Patch

diff --git a/arch/arm/mach-s3c64xx/dev-audio.c b/arch/arm/mach-s3c64xx/dev-audio.c
index ff780a8..5e7538b 100644
--- a/arch/arm/mach-s3c64xx/dev-audio.c
+++ b/arch/arm/mach-s3c64xx/dev-audio.c
@@ -36,10 +36,10 @@  static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
 		base = S3C64XX_GPE(0);
 		break;
 	case 2:
-		s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5));
-		s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5));
-		s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5));
-		s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));
+		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(4), S3C_GPIO_SFN(5)));
+		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(5), S3C_GPIO_SFN(5)));
+		WARN_ON(s3c_gpio_cfgpin(S3C64XX_GPC(7), S3C_GPIO_SFN(5)));
+		WARN_ON(s3c_gpio_cfgpin_range(S3C64XX_GPH(6), 4, S3C_GPIO_SFN(5));)
 		return 0;
 	default:
 		printk(KERN_DEBUG "Invalid I2S Controller number: %d\n",
@@ -47,7 +47,7 @@  static int s3c64xx_i2s_cfg_gpio(struct platform_device *pdev)
 		return -EINVAL;
 	}
 
-	s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3));
+	WARN_ON(s3c_gpio_cfgpin_range(base, 5, S3C_GPIO_SFN(3)));
 
 	return 0;
 }