Hi, Guennadi

Thank you. I will send v4 version to apply your suggestion.

On Tuesday, January 10, 2012 7:29 PM, Guennadi Liakhovetski wrote:

> Hi Josh

> Right, sorry, I missed this one, I somehow developed an idea, that it
has 
> been merged into the original patch, adding ISI_MCK handling. Now, I
also 
> notice one detail, that we could improve:

> On Tue, 10 Jan 2012, Josh Wu wrote:

>> Signed-off-by: Josh Wu <[email protected]>
>> Acked-by: Nicolas Ferre <[email protected]>
>> ---
>> Hi, Mauro
>> 
>> The first patch of this serie, [PATCH 1/2 v3] V4L: atmel-isi: add
code to enable/disable ISI_MCK clock, is already queued in media tree. 
>> But this patch (the second one of this serie) is not acked yet. Would
it be ok to for you to ack this patch?
>> 
>> Best Regards,
>> Josh Wu
>> 
>> v2: made the label name to be consistent.
>> 
>>  drivers/media/video/atmel-isi.c |   15 +++++++++++++++
>>  1 files changed, 15 insertions(+), 0 deletions(-)
>> 
>> diff --git a/drivers/media/video/atmel-isi.c
b/drivers/media/video/atmel-isi.c
>> index ea4eef4..91ebcfb 100644
>> --- a/drivers/media/video/atmel-isi.c
>> +++ b/drivers/media/video/atmel-isi.c
>> @@ -922,7 +922,9 @@ static int __devexit atmel_isi_remove(struct
platform_device *pdev)
>>                      isi->fb_descriptors_phys);
>>  
>>      iounmap(isi->regs);
>> +    clk_unprepare(isi->mck);
>>      clk_put(isi->mck);
>> +    clk_unprepare(isi->pclk);
>>      clk_put(isi->pclk);
>>      kfree(isi);
>>  
>> @@ -955,6 +957,12 @@ static int __devinit atmel_isi_probe(struct
platform_device *pdev)
>>      if (IS_ERR(pclk))
>>              return PTR_ERR(pclk);
>>  
>> +    ret = clk_prepare(pclk);
>> +    if (ret) {
>> +            clk_put(pclk);
>> +            return ret;

> Don't think it's a good idea here. You already have clk_put(pclk) on
the 
> error handling path below. So, just put a "goto err_clk_prepare_pclk"
here 
> and the respective error below.

Right. I'll fix it in v4.

> Thanks
> Guennadi

>> +    }
>> +
>>      isi = kzalloc(sizeof(struct atmel_isi), GFP_KERNEL);
>>      if (!isi) {
>>              ret = -ENOMEM;
>> @@ -978,6 +986,10 @@ static int __devinit atmel_isi_probe(struct
platform_device *pdev)
>>              goto err_clk_get;
>>      }
>>  
>> +    ret = clk_prepare(isi->mck);
>> +    if (ret)
>> +            goto err_clk_prepare_mck;
>> +
>>      /* Set ISI_MCK's frequency, it should be faster than pixel clock
*/
>>      ret = clk_set_rate(isi->mck, pdata->mck_hz);
>>      if (ret < 0)
>> @@ -1059,10 +1071,13 @@ err_alloc_ctx:
>>                      isi->fb_descriptors_phys);
>>  err_alloc_descriptors:
>>  err_set_mck_rate:
>> +    clk_unprepare(isi->mck);
>> +err_clk_prepare_mck:
>>      clk_put(isi->mck);
>>  err_clk_get:
>>      kfree(isi);
>>  err_alloc_isi:
>> +    clk_unprepare(pclk);
>>      clk_put(pclk);
>>  
>>      return ret;
>> -- 
>> 1.6.3.3
>> 

> ---
> Guennadi Liakhovetski, Ph.D.
> Freelance Open-Source Software Developer
> http://www.open-technology.de/

Best Regards,
Josh Wu
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to