From: "Noralf Trønnes" <notro-L59+Z2yzLopAfugRpC6u6w@public.gmane.org>
To: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Initial register settings in Device Tree?
Date: Sun, 22 Jun 2014 21:27:52 +0200 [thread overview]
Message-ID: <53A72E38.8040307@tronnes.org> (raw)
In-Reply-To: <4560059.E2lhedgi9o@wuerfel>
Den 22.06.2014 20:18, skrev Arnd Bergmann:
> On Sunday 22 June 2014 19:37:56 Noralf Trønnes wrote:
>> I see two possibilities:
>> * add a special marker value to separate the registers, as I do now
>> * add a flag to indicate a register number. So far I've only seen 8 and
>> 16-bit register number widths: register 20h could thus be written as
>> 10000020, 1000020, 100020 or 10020
>>
>> Example (skipped state changes from previous example):
>> <100B1 01 2C 2D
>> 100B2 01 2C 2D
>> 100B3 01 2C 2D 01 2C 2D
>> 100B4 07 C0 A2 02 84
>> 100C1 C5 C2 0A 00
>> 100C3 8A 2A
>> 100C4 8A EE
>> 100C5 0E
>> 10020
>> 10036 C0
>> 1003A 05
>> 100E0 0f 1a 0f 18 2f 28 20 22 1f 1b 23 37 00 07 02 10
>> 100E1 0f 1b 0f 17 33 2c 29 2e 30 30 39 3f 00 07 03 10>
>>
>> Is this a viable solution?
> We normally use high-level descriptions of the timings that the driver
> then converts into register-level settings. See
> Documentation/devicetree/bindings/video/display-timing.txt and
> other files in that directory for how existing drivers handle this.
>
> Arnd
>
OK, that takes care of the timings. But what about power control, and
gamma registers?
The power registers usually have bitfields that map to voltages, factors
(0.7x, 1x,..) and levels (low,medium,high).
Should all these bitfiels have their own property in DT?
For some controllers this would be 20+ properties.
Should the properties have the same name as the register and bitfield
from the datasheet?
st7735r,pwctr1-avdd
st7735r,pwctr1-vrhp
st7735r,pwctr1-vrhn
st7735r,pwctr1-mode
Should the value map directly to the bitfield or should a string be used?
st7735r,pwctr1-avdd = <6> /* 5.1v - Power pin for analog circuits */
st7735r,pwctr1-avdd = "5.1"
Or should each register have it's own property?
st7735r,pwctr1 = <C5 C2 0A 00>
The gamma registers have several values that control a resistor network
that sets grayscale values.
Would this suffice?
st7735r,gamma-positive = <0f 1a 0f 18 2f 28 20 22 1f 1b 23 37 00 07 02 10>
st7735r,gamma-negative = <0f 1b 0f 17 33 2c 29 2e 30 30 39 3f 00 07 03 10>
Usually when buying these displays, they come with an initialization
sequence.
Having register values in the DT, a user will be up and running in
minutes with a new display.
If one has to read the datasheet and map the register values to
bitfields and properties, it takes a lot of time and not the least, it's
error prone.
Noralf.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2014-06-22 19:27 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-22 17:37 Initial register settings in Device Tree? Noralf Trønnes
[not found] ` <53A71474.7030704-L59+Z2yzLopAfugRpC6u6w@public.gmane.org>
2014-06-22 18:18 ` Arnd Bergmann
2014-06-22 19:27 ` Noralf Trønnes [this message]
[not found] ` <53A72E38.8040307-L59+Z2yzLopAfugRpC6u6w@public.gmane.org>
2014-06-23 13:38 ` Arnd Bergmann
2014-06-24 16:52 ` Noralf Tronnes
[not found] ` <53A9ACE4.9040506-L59+Z2yzLopAfugRpC6u6w@public.gmane.org>
2014-06-25 10:06 ` Arnd Bergmann
2014-06-27 13:50 ` Noralf Tronnes
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=53A72E38.8040307@tronnes.org \
--to=notro-l59+z2yzlopafugrpc6u6w@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).