RE: [PATCH 10/13 v5] OMAP: GPIO: Implement GPIO as a platform device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Basak, Partha
> Sent: Thursday, August 12, 2010 5:35 PM
> To: 'Paul Walmsley'
> Cc: Kevin Hilman; Varadarajan, Charulatha; linux-omap@xxxxxxxxxxxxxxx;
> Cousson, Benoit; Nayak, Rajendra
> Subject: RE: [PATCH 10/13 v5] OMAP: GPIO: Implement GPIO as a platform
> device
> 
> 
> 
> > -----Original Message-----
> > From: Paul Walmsley [mailto:paul@xxxxxxxxx]
> > Sent: Wednesday, August 11, 2010 11:17 AM
> > To: Basak, Partha
> > Cc: Kevin Hilman; Varadarajan, Charulatha; linux-omap@xxxxxxxxxxxxxxx;
> > Cousson, Benoit; Nayak, Rajendra
> > Subject: RE: [PATCH 10/13 v5] OMAP: GPIO: Implement GPIO as a platform
> > device
> >
> > On Tue, 10 Aug 2010, Basak, Partha wrote:
> >
> > > As per our discussion with Paul & you during workshop, I believe,
> > > optional clock control should be done using clock APIs. So, I would go
> > > by your suggestion 1 of exposing an API to expose the optional clocks
> in
> > > the hwmod, something like:
> > >
> > > struct omap_hwmod_opt_clk * omap_hwmod_get_opt_clks(struct omap_hwmod
> > > *oh);
> > >
> > > If agreed, Charu will send updated patch.
> >
> > This should be done by modifying the hwmod code to call clk_add_alias()
> > for the clock names for the optional clocks.  I don't think any extra
> API
> > is needed.
> >
> 
> Lets see, if I got it right:
> 
> Refer to the OMAP3 hwmod data-base (omap_hwmod_3xxx.c):
> static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
> 	{ .role = "dbclk", .clk = "gpio1_dbck", },
> };
> Clock database(Clock3xxx_data.c):
> 	CLK(NULL,	"gpio1_dbck",	&gpio1_dbck,	CK_3XXX),
> 
> 
> Refer to the OMAP4 hwmod database(omap_hwmod_44xx.c):
> 	static struct omap_hwmod_opt_clk gpio1_opt_clks[] = {
> 		{ .role = "dbclk", .clk = "sys_32k_ck" },
> 
> Clock database(Clock44xx_data.c):
> 
> CLK(NULL,	"sys_32k_ck",			&sys_32k_ck,	CK_443X),
> 
> 
> /*int clk_add_alias(const char *alias, const char *alias_dev_name, char
> *id,
> 	struct device *dev);*/
> 
> I believe, you are suggesting to do the following in the hwmod framework,
> say _setup(?):
> 
> clk_add_alias ( <gpio1_>opt_clks.role,
> 			 oh->od.pdev.name,
> 			<gpio1_>opt_clks.clk,
> 			NULL);
> 
> Then, from the driver, we can simply do a
> 	clk_get(dev_ptr,
> 			<role-->"dbclk">); /*hard-coded in the driver to be same
> 			as in the hwmod database*/
> 
Sent patch [PATCH] OMAP: HWMOD: Handle opt clocks using clk_add_alias.
 
> >
> > - Paul
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux