mirror of https://lore.kernel.org/linux-amlogic/
 help / color / mirror / Atom feed
From: marcel@holtmann.org (Marcel Holtmann)
To: linus-amlogic@lists.infradead.org
Subject: [RFC v2 7/9] bluetooth: btrtl: load the config blob from devicetree when available
Date: Fri, 5 Jan 2018 17:15:48 +0100	[thread overview]
Message-ID: <1F394D8B-CFB8-48BA-BC6B-15D1EE51DB08@holtmann.org> (raw)
In-Reply-To: <EC216531-81EC-4EE8-BAC4-C6954C222092@holtmann.org>

Hi Carlo,

>>>> As Marcel suggested we can assume that the information in the DSDT is
>>>> correct so that we can get rid of the config blob also for x86
>>>> platforms (assuming that the only useful information in the config
>>>> blobs is the UART configuration).
>>> in my tests I tried to send only the firmware without the config to my
>>> RTL8723BS. unfortunately the last firmware chunk (sent to the
>>> controller) times out in that case (even if I set a proper baudrate
>>> before or if I specify no baudrate at all and keep the serdev at
>>> 115200)
>> 
>> What's in the config blobs besides UART configuration?
> 
> is anybody writing a rtlfw.c tool (like nokfw.c) so that we can print out what we actually have in these config files?
> 
>> It's odd because reading into hciattach_rtk.c it seems that the config
>> file is actually only used by the userspace tools (hciattach) to
>> retrieve the UART configuration and nothing else, whereas in the
>> kernel driver the config blob is appended to the firmware.
> 
> Frankly, I am inclined to not use the config file even for DT based system and just allow specifying the UART settings via normal DT properties like we do for Broadcom and others.

so I googled for a few config files and this is what this turns into:

Analyzing rtl8723d_config_1000000_noflow.dms
Signature:   0x8723ab55
Data length: 41
len=1   offset=f4,{ 01 }
len=2   offset=f6,{ 81 00 }
len=2   offset=fa,{ 12 80 }
len=16  offset=0c,{ 04 50 00 00 50 c5 ea 19 e1 1b fd af 5b 01 a4 0b }
len=1   offset=d9,{ 0f }
len=1   offset=e4,{ 08 }
Analyzing rtl8723d_config.dms
Signature:   0x8723ab55
Data length: 41
len=1   offset=f4,{ 01 }
len=2   offset=f6,{ 81 00 }
len=2   offset=fa,{ 12 80 }
len=16  offset=0c,{ 02 80 92 04 50 c5 ea 19 e1 1b fd af 5f 01 a4 0b }
len=1   offset=d9,{ 0f }
len=1   offset=e4,{ 08 }
Analyzing rtl8822b_config.bin
Signature:   0x8723ab55
Data length: 8
len=1   offset=d9,{ 0f }
len=1   offset=e4,{ 08 }

The first two are some UART based ones and the last one is USB based.

So the 0x3c offset seems to be the BD_ADDR and 0x0c offset is the UART configuration. It would be good to know which settings the other ones control.

Also the 16 octet UART config blob seems to be decoded like this:

	uart_config {
		le32 baudrate;
		u8[8] reserved1;
		u8 flowctl;
		u8[3] reserved2;
	}

Actually hciattach_rtk just takes the baud rate and and hardware flow control bit out of this file. That is clearly two things that are better written in plain text in the DT file.

Regards

Marcel

  reply	other threads:[~2018-01-05 16:15 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-01 20:42 [RFC v2 0/9] Realtek Bluetooth serdev support (H5 protocol) Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 1/9] serdev: implement parity configuration Martin Blumenstingl
2018-01-02 11:16   ` Marcel Holtmann
2018-01-02 21:16     ` Martin Blumenstingl
2018-01-02 21:34       ` Martin Blumenstingl
2018-01-03  9:06         ` Johan Hovold
2018-01-03 12:37         ` Marcel Holtmann
2018-01-01 20:42 ` [RFC v2 2/9] dt-bindings: net: bluetooth: add support for Realtek Bluetooth chips Martin Blumenstingl
2018-01-02 11:16   ` Marcel Holtmann
2018-01-02 21:10     ` Martin Blumenstingl
2018-01-03 19:07       ` Rob Herring
2018-01-01 20:42 ` [RFC v2 3/9] Bluetooth: btrtl: add MODULE_FIRMWARE declarations Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 4/9] Bluetooth: btrtl: split the device initialization into smaller parts Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 5/9] Bluetooth: btrtl: add support for retrieving the UART settings Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 6/9] Bluetooth: btrtl: add support for the RTL8723BS and RTL8723DS chips Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 7/9] bluetooth: btrtl: load the config blob from devicetree when available Martin Blumenstingl
2018-01-02 11:11   ` Marcel Holtmann
2018-01-02 11:15     ` Carlo Caione
2018-01-02 11:19       ` Marcel Holtmann
2018-01-02 11:31         ` Carlo Caione
2018-01-02 11:38           ` Marcel Holtmann
2018-01-02 21:43             ` Martin Blumenstingl
2018-01-02 21:46           ` Martin Blumenstingl
2018-01-02 23:06             ` Carlo Caione
2018-01-03 20:50               ` Martin Blumenstingl
2018-01-04  9:46                 ` Carlo Caione
2018-01-05 14:57                   ` Marcel Holtmann
2018-01-05 16:15                     ` Marcel Holtmann [this message]
2018-01-05 20:44                       ` Marcel Holtmann
2018-01-07 20:07                         ` Martin Blumenstingl
2018-01-09 15:26                           ` Marcel Holtmann
2018-01-01 20:42 ` [RFC v2 8/9] Bluetooth: drop HCI_UART_INIT_PENDING support Martin Blumenstingl
2018-01-02 11:04   ` Marcel Holtmann
2018-01-02 21:06     ` Martin Blumenstingl
2018-01-03 17:14       ` Loic Poulain
2018-01-03 20:30         ` Martin Blumenstingl
2018-01-03 18:38   ` Rob Herring
2018-01-03 20:38     ` Martin Blumenstingl
2018-01-01 20:42 ` [RFC v2 9/9] Bluetooth: hci_h5: add support for Realtek UART Bluetooth modules Martin Blumenstingl
2018-01-02 11:11   ` Marcel Holtmann
2018-01-02 21:27     ` Martin Blumenstingl

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=1F394D8B-CFB8-48BA-BC6B-15D1EE51DB08@holtmann.org \
    --to=marcel@holtmann.org \
    --cc=linus-amlogic@lists.infradead.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

all inboxes | Powered by JetHome®