Hello Senthil,

On Wed,  6 Oct 2010 16:44:54 +0530
Guruswamy Senthilvadivu <svad...@ti.com> wrote:

> diff --git a/drivers/video/omap2/dss/rfbi.c b/drivers/video/omap2/dss/rfbi.c
> index 23598ea..9bee39d 100644
> --- a/drivers/video/omap2/dss/rfbi.c
> +++ b/drivers/video/omap2/dss/rfbi.c
> @@ -100,6 +100,7 @@ static int rfbi_convert_timings(struct rfbi_timings *t);
>  static void rfbi_get_clk_info(u32 *clk_period, u32 *max_clk_div);
>  
>  static struct {
> +     struct platform_device *pdev;
>       void __iomem    *base;
>  
>       unsigned long   l4_khz;
> @@ -142,11 +143,22 @@ static inline u32 rfbi_read_reg(const struct rfbi_reg 
> idx)
>  /* RFBI HW IP initialisation */
>  static int omap_rfbihw_probe(struct platform_device *pdev)
>  {
> -     return 0;
> +     int r;
> +     rfbi.pdev = pdev;
> +
> +     r = rfbi_init();
> +     if (r) {
> +             DSSERR("Failed to initialize rfbi\n");
> +             goto err_rfbi;
> +     }
> +
> +err_rfbi:
> +     return r;
>  }
>  
>  static int omap_rfbihw_remove(struct platform_device *pdev)
>  {
> +     rfbi_exit();
>       return 0;
>  }
>  

Instead of having probe() and remove() functions that call the existing
init() and exit(), why not making your driver look like most Linux
drivers here, and directly do the initialization in probe() and the
cleanup in remove() ?

Concerning the added pdev field to the rfbi structure, do you really it
at this point ?

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to