From: Alexander Aring <alex.aring@gmail.com>
To: linux-wpan@vger.kernel.org
Cc: kernel@pengutronix.de, mkl@pengutronix.de,
Alexander Aring <alex.aring@gmail.com>,
Werner Almesberger <werner@almesberger.net>,
Thomas Stilwell <stilwellt@openlabs.co>
Subject: [PATCHv4 bluetooth-next 0/2] at86rf230: add support for xtal trim register
Date: Tue, 24 Feb 2015 16:54:59 +0100 [thread overview]
Message-ID: <1424793301-29931-1-git-send-email-alex.aring@gmail.com> (raw)
Hi,
I want to clarify how xtal_trim value is calculated now.
First of all the xtal_mode set to 0x5 will require a 16 Mhz clock signal at
pin 26. I don't have such at86rf2xx board which can do that, so I don't want
to support it right now.
IMPORTANT:
The xtal_mode for external frequency differs per at86rf2xx transceiver. For
at86rf230/at86rf231 it's 0x4. For at86rf233 it's 0x5. (Thanks Werner
Almesberger who pointed this out). That doesn't matter right now, because we
don't change the "normal" mode.
The xtal_trim is only necesarry for external crystal, when xtal_mode == 0xF.
The xtal_trim value is calculated by:
CL = capacitor of used crystal
CX = connected capacitors at xtal pins
CPAR = in all at86rf2xx datasheets this is a constant value 3 pF,
but this is different on each board setup. You need to fine
tuning this value via CTRIM.
CTRIM = variable capacitor setting. Resolution is 0.3 pF range is
0 pF upto 4.5 pF.
CL = 0.5 * (CX + CTRIM + CPAR)
Examples:
On atben [0]:
CL = 8 pF
CX = 12 pF
CPAR = 3 pF (We assume the magic constant from datasheet)
CTRIM = 0.9 pF
(12+0.9+3)/2 = 7.95 which is nearly at 8 pF
openlabs [1]:
CL = 16 pF
CX = 22 pF
CPAR = 3 pF (We assume the magic constant from datasheet)
CTRIM = 4.5 pF
(22+4.5+3)/2 = 14.75 which is the nearest value to 16 pF
For more information it's the section "Integrated Oscillator Setup" inside
the at86rf2xx datasheets. (In my case 8111C–MCU Wireless–09/09).
For a better calculation of the CPAR value, Werner Almesberger developed some
diagnostic tool [2], which I don't tried out yet.
- Alex
[0] http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atben
(atben.sch, requires kicad tool)
[1] http://openlabs.co/OSHW/Raspberry-Pi-802.15.4-radio-files/rpi802154-r1.pdf
[2] http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/tools/atrf-xtal
changes since v4:
- remove platform data from at86rf230_local
- add note in cover-letter because at86rf2xx have different xtal_mode values
changes since v3:
- remove setting of xtal_mode. Instead we setting xtal_trim only.
changes since v2:
- copy platform data to driver allocated space
Cc: Werner Almesberger <werner@almesberger.net>
Cc: Thomas Stilwell <stilwellt@openlabs.co>
Alexander Aring (2):
at86rf230: copy pdata to driver allocated space
at86rf230: add support for external xtal trim
.../bindings/net/ieee802154/at86rf230.txt | 3 +
drivers/net/ieee802154/at86rf230.c | 66 +++++++++++++---------
include/linux/spi/at86rf230.h | 1 +
3 files changed, 42 insertions(+), 28 deletions(-)
--
2.3.0
next reply other threads:[~2015-02-24 15:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-24 15:54 Alexander Aring [this message]
2015-02-24 15:55 ` [PATCHv4 bluetooth-next 1/2] at86rf230: copy pdata to driver allocated space Alexander Aring
2015-02-24 15:55 ` [PATCHv4 bluetooth-next 2/2] at86rf230: add support for external xtal trim Alexander Aring
2015-02-24 16:17 ` [PATCHv4 bluetooth-next 0/2] at86rf230: add support for xtal trim register Marcel Holtmann
2015-02-24 16:50 ` Alexander Aring
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=1424793301-29931-1-git-send-email-alex.aring@gmail.com \
--to=alex.aring@gmail.com \
--cc=kernel@pengutronix.de \
--cc=linux-wpan@vger.kernel.org \
--cc=mkl@pengutronix.de \
--cc=stilwellt@openlabs.co \
--cc=werner@almesberger.net \
/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