diff mbox

mmc: Add a restriction to mmc debugfs clock setting.

Message ID 1453183995-46099-1-git-send-email-pawelx.wodkowski@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Pawel Wodkowski Jan. 19, 2016, 6:13 a.m. UTC
From: Chuanxiao Dong <chuanxiao.dong@intel.com>

Clock frequency values written to an mmc host should not be less than
the minimum clock frequency which the mmc host supports.

Signed-off-by: Yuan Juntao <juntaox.yuan@intel.com>
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
---
 drivers/mmc/core/debugfs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Shawn Lin Jan. 19, 2016, 6:35 a.m. UTC | #1
On 2016/1/19 14:13, Pawel Wodkowski wrote:
> From: Chuanxiao Dong <chuanxiao.dong@intel.com>
>
> Clock frequency values written to an mmc host should not be less than
> the minimum clock frequency which the mmc host supports.
>
> Signed-off-by: Yuan Juntao <juntaox.yuan@intel.com>
> Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
> ---
>   drivers/mmc/core/debugfs.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
> index 154aced0b91b..bdfce774d848 100644
> --- a/drivers/mmc/core/debugfs.c
> +++ b/drivers/mmc/core/debugfs.c
> @@ -220,7 +220,7 @@ static int mmc_clock_opt_set(void *data, u64 val)
>   	struct mmc_host *host = data;
>
>   	/* We need this check due to input value is u64 */
> -	if (val > host->f_max)
> +	if (val > host->f_max || val < host->f_min)

Hmm... how about if I want to disable clk from sysfs and pass ZERO to 
mmc_clock_opt_set, doesn't that case make sense? :)

>   		return -EINVAL;
>
>   	mmc_claim_host(host);
>
Pawel Wodkowski Jan. 19, 2016, 6:44 a.m. UTC | #2
> -----Original Message-----
> From: linux-mmc-owner@vger.kernel.org [mailto:linux-mmc-
> owner@vger.kernel.org] On Behalf Of Shawn Lin
> Sent: Tuesday, January 19, 2016 7:35 AM
> To: Wodkowski, PawelX <pawelx.wodkowski@intel.com>; linux-
> mmc@vger.kernel.org
> Cc: shawn.lin@rock-chips.com; Dong, Chuanxiao
> <chuanxiao.dong@intel.com>; Yuan, Juntao <juntao.yuan@intel.com>
> Subject: Re: [PATCH] mmc: Add a restriction to mmc debugfs clock setting.
> 
> On 2016/1/19 14:13, Pawel Wodkowski wrote:
> > From: Chuanxiao Dong <chuanxiao.dong@intel.com>
> >
> > Clock frequency values written to an mmc host should not be less than
> > the minimum clock frequency which the mmc host supports.
> >
> > Signed-off-by: Yuan Juntao <juntaox.yuan@intel.com>
> > Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
> > ---
> >   drivers/mmc/core/debugfs.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
> > index 154aced0b91b..bdfce774d848 100644
> > --- a/drivers/mmc/core/debugfs.c
> > +++ b/drivers/mmc/core/debugfs.c
> > @@ -220,7 +220,7 @@ static int mmc_clock_opt_set(void *data, u64
> val)
> >   	struct mmc_host *host = data;
> >
> >   	/* We need this check due to input value is u64 */
> > -	if (val > host->f_max)
> > +	if (val > host->f_max || val < host->f_min)
> 
> Hmm... how about if I want to disable clk from sysfs and pass ZERO to
> mmc_clock_opt_set, doesn't that case make sense? :)
> 

So maybe something like this?
if (val != 0 && (val > host->f_max || val < host->f_min))
Shawn Lin Jan. 19, 2016, 7:44 a.m. UTC | #3
On 2016/1/19 14:44, Wodkowski, PawelX wrote:
>> -----Original Message-----
>> From: linux-mmc-owner@vger.kernel.org [mailto:linux-mmc-
>> owner@vger.kernel.org] On Behalf Of Shawn Lin
>> Sent: Tuesday, January 19, 2016 7:35 AM
>> To: Wodkowski, PawelX <pawelx.wodkowski@intel.com>; linux-
>> mmc@vger.kernel.org
>> Cc: shawn.lin@rock-chips.com; Dong, Chuanxiao
>> <chuanxiao.dong@intel.com>; Yuan, Juntao <juntao.yuan@intel.com>
>> Subject: Re: [PATCH] mmc: Add a restriction to mmc debugfs clock setting.
>>
>> On 2016/1/19 14:13, Pawel Wodkowski wrote:
>>> From: Chuanxiao Dong <chuanxiao.dong@intel.com>
>>>
>>> Clock frequency values written to an mmc host should not be less than
>>> the minimum clock frequency which the mmc host supports.
>>>
>>> Signed-off-by: Yuan Juntao <juntaox.yuan@intel.com>
>>> Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
>>> ---
>>>    drivers/mmc/core/debugfs.c | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
>>> index 154aced0b91b..bdfce774d848 100644
>>> --- a/drivers/mmc/core/debugfs.c
>>> +++ b/drivers/mmc/core/debugfs.c
>>> @@ -220,7 +220,7 @@ static int mmc_clock_opt_set(void *data, u64
>> val)
>>>    	struct mmc_host *host = data;
>>>
>>>    	/* We need this check due to input value is u64 */
>>> -	if (val > host->f_max)
>>> +	if (val > host->f_max || val < host->f_min)
>>
>> Hmm... how about if I want to disable clk from sysfs and pass ZERO to
>> mmc_clock_opt_set, doesn't that case make sense? :)
>>
>
> So maybe something like this?
> if (val != 0 && (val > host->f_max || val < host->f_min))

yep.

>
diff mbox

Patch

diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
index 154aced0b91b..bdfce774d848 100644
--- a/drivers/mmc/core/debugfs.c
+++ b/drivers/mmc/core/debugfs.c
@@ -220,7 +220,7 @@  static int mmc_clock_opt_set(void *data, u64 val)
 	struct mmc_host *host = data;
 
 	/* We need this check due to input value is u64 */
-	if (val > host->f_max)
+	if (val > host->f_max || val < host->f_min)
 		return -EINVAL;
 
 	mmc_claim_host(host);