All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Mohammed, Afzal" <afzal@ti.com>
To: Mike Turquette <mturquette@linaro.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Subject: RE: [PATCH v2 1/2] clk: divider: prepare for minimum divider
Date: Thu, 24 Jan 2013 11:29:15 +0000	[thread overview]
Message-ID: <C8443D0743D26F4388EA172BF4E2A7A93EA92ABC@DBDE01.ent.ti.com> (raw)
In-Reply-To: <20130123214053.9205.49804@quantum>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 2184 bytes --]

Hi Mike,

On Thu, Jan 24, 2013 at 03:10:53, Mike Turquette wrote:
> Quoting Afzal Mohammed (2013-01-23 03:38:52)

> > Some of clocks can have a limit on minimum divider value that can be
> > programmed, prepare for such a support.

> > Add a new field min_div for the basic divider clock and a new dynamic
> > clock divider registration function where minimum divider value can
> > be specified. Keep behaviour of existing divider clock registration
> > functions, static initialization helpers as was earlier.

> My first question is whether the minimum divider you plan to use is an
> actual constraint of the hardware (e.g. the clock controller ip only
> lets program two bits which divide by 4, 5, 6 or 7, where 4 is the
> minimum divider) or if this is a functional constraint (e.g. the clock
> hardware can divide by a lower value, but you never want that since it
> results in non-functional video/audio/whatever).  If this is more of a
> functional constraint then perhaps a new api like clk_set_min_rate makes
> more sense.

It is a functional constraint: divider has 8 bits and it can have
all possible values (0 to 255) and divider value corresponds to
value set in the 8 bits. But depending on the modes the minimum
value that can be configured (to get display working) varies.
Eg. For raster mode (which the driver is presently supporting), it
can take a minimum value of 2, while in LIDD (LCD interface display
driver) mode it can take a min value of 1.

Here min rate is not a constraint w.r.t divider in LCDC IP, but
rather min divider.

As it is the case, you prefer a clk_divider_set_min_div()?

> 
> Secondly, have you looked into using the rate-table option provided by
> the basic divider clock?  Can you explain how this is not a good fit for
> your needs?  Perhaps there are too many divisor values so the table
> would be large?

Divider values can range from 2-255 (254 possible values), so I believe
it is not a suitable candidate here (also divider to values have 1-to-1
mapping)

Regards
Afzal


ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

WARNING: multiple messages have this Message-ID (diff)
From: "Mohammed, Afzal" <afzal@ti.com>
To: Mike Turquette <mturquette@linaro.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Subject: RE: [PATCH v2 1/2] clk: divider: prepare for minimum divider
Date: Thu, 24 Jan 2013 11:29:15 +0000	[thread overview]
Message-ID: <C8443D0743D26F4388EA172BF4E2A7A93EA92ABC@DBDE01.ent.ti.com> (raw)
In-Reply-To: <20130123214053.9205.49804@quantum>

Hi Mike,

On Thu, Jan 24, 2013 at 03:10:53, Mike Turquette wrote:
> Quoting Afzal Mohammed (2013-01-23 03:38:52)

> > Some of clocks can have a limit on minimum divider value that can be
> > programmed, prepare for such a support.

> > Add a new field min_div for the basic divider clock and a new dynamic
> > clock divider registration function where minimum divider value can
> > be specified. Keep behaviour of existing divider clock registration
> > functions, static initialization helpers as was earlier.

> My first question is whether the minimum divider you plan to use is an
> actual constraint of the hardware (e.g. the clock controller ip only
> lets program two bits which divide by 4, 5, 6 or 7, where 4 is the
> minimum divider) or if this is a functional constraint (e.g. the clock
> hardware can divide by a lower value, but you never want that since it
> results in non-functional video/audio/whatever).  If this is more of a
> functional constraint then perhaps a new api like clk_set_min_rate makes
> more sense.

It is a functional constraint: divider has 8 bits and it can have
all possible values (0 to 255) and divider value corresponds to
value set in the 8 bits. But depending on the modes the minimum
value that can be configured (to get display working) varies.
Eg. For raster mode (which the driver is presently supporting), it
can take a minimum value of 2, while in LIDD (LCD interface display
driver) mode it can take a min value of 1.

Here min rate is not a constraint w.r.t divider in LCDC IP, but
rather min divider.

As it is the case, you prefer a clk_divider_set_min_div()?

> 
> Secondly, have you looked into using the rate-table option provided by
> the basic divider clock?  Can you explain how this is not a good fit for
> your needs?  Perhaps there are too many divisor values so the table
> would be large?

Divider values can range from 2-255 (254 possible values), so I believe
it is not a suitable candidate here (also divider to values have 1-to-1
mapping)

Regards
Afzal



WARNING: multiple messages have this Message-ID (diff)
From: afzal@ti.com (Mohammed, Afzal)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/2] clk: divider: prepare for minimum divider
Date: Thu, 24 Jan 2013 11:29:15 +0000	[thread overview]
Message-ID: <C8443D0743D26F4388EA172BF4E2A7A93EA92ABC@DBDE01.ent.ti.com> (raw)
In-Reply-To: <20130123214053.9205.49804@quantum>

Hi Mike,

On Thu, Jan 24, 2013 at 03:10:53, Mike Turquette wrote:
> Quoting Afzal Mohammed (2013-01-23 03:38:52)

> > Some of clocks can have a limit on minimum divider value that can be
> > programmed, prepare for such a support.

> > Add a new field min_div for the basic divider clock and a new dynamic
> > clock divider registration function where minimum divider value can
> > be specified. Keep behaviour of existing divider clock registration
> > functions, static initialization helpers as was earlier.

> My first question is whether the minimum divider you plan to use is an
> actual constraint of the hardware (e.g. the clock controller ip only
> lets program two bits which divide by 4, 5, 6 or 7, where 4 is the
> minimum divider) or if this is a functional constraint (e.g. the clock
> hardware can divide by a lower value, but you never want that since it
> results in non-functional video/audio/whatever).  If this is more of a
> functional constraint then perhaps a new api like clk_set_min_rate makes
> more sense.

It is a functional constraint: divider has 8 bits and it can have
all possible values (0 to 255) and divider value corresponds to
value set in the 8 bits. But depending on the modes the minimum
value that can be configured (to get display working) varies.
Eg. For raster mode (which the driver is presently supporting), it
can take a minimum value of 2, while in LIDD (LCD interface display
driver) mode it can take a min value of 1.

Here min rate is not a constraint w.r.t divider in LCDC IP, but
rather min divider.

As it is the case, you prefer a clk_divider_set_min_div()?

> 
> Secondly, have you looked into using the rate-table option provided by
> the basic divider clock?  Can you explain how this is not a good fit for
> your needs?  Perhaps there are too many divisor values so the table
> would be large?

Divider values can range from 2-255 (254 possible values), so I believe
it is not a suitable candidate here (also divider to values have 1-to-1
mapping)

Regards
Afzal

  reply	other threads:[~2013-01-24 11:29 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-23 11:38 [PATCH v2 1/2] clk: divider: prepare for minimum divider Afzal Mohammed
2013-01-23 11:38 ` Afzal Mohammed
2013-01-23 11:38 ` Afzal Mohammed
2013-01-23 11:39 ` [PATCH v2 2/2] clk: divider: handle " Afzal Mohammed
2013-01-23 11:39   ` Afzal Mohammed
2013-01-23 11:39   ` Afzal Mohammed
2013-01-23 21:40 ` [PATCH v2 1/2] clk: divider: prepare for " Mike Turquette
2013-01-23 21:40   ` Mike Turquette
2013-01-23 21:40   ` Mike Turquette
2013-01-24 11:29   ` Mohammed, Afzal [this message]
2013-01-24 11:29     ` Mohammed, Afzal
2013-01-24 11:29     ` Mohammed, Afzal
2013-01-24 17:06     ` Mike Turquette
2013-01-24 17:06       ` Mike Turquette
2013-01-24 17:06       ` Mike Turquette
2013-01-25 12:06       ` Mohammed, Afzal
2013-01-25 12:06         ` Mohammed, Afzal
2013-01-25 12:06         ` Mohammed, Afzal
2013-01-25 22:35         ` Mike Turquette
2013-01-25 22:35           ` Mike Turquette
2013-01-25 22:35           ` RE: " Mike Turquette
2013-01-28  9:18           ` Mohammed, Afzal
2013-01-28  9:18             ` Mohammed, Afzal
2013-01-28  9:18             ` RE: " Mohammed, Afzal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C8443D0743D26F4388EA172BF4E2A7A93EA92ABC@DBDE01.ent.ti.com \
    --to=afzal@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=mturquette@linaro.org \
    --cc=sboyd@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.