devicetree-compiler.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Frank Rowand <frowand.list-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Frederik Lotter
	<frederik.lotter-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: DTB file appears to have corrupted node property according to fdtdump and kernel?
Date: Thu, 2 Feb 2017 18:28:14 -0800	[thread overview]
Message-ID: <5893EABE.10009@gmail.com> (raw)
In-Reply-To: <CAPBAm7QSB_-LrAwouztLYLaC0mWF2V4QQ_Yz98p6jVw07SfT6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 02/02/17 09:53, Frederik Lotter wrote:
> Hi,
> 
> I have a particular device tree node property which refuses to reach
> the Linux kernel without corruption:
> 
>  interrupts = <0xc 0x1>;
> 
>>From the extract below from the preprocessed file:
> 
>    i2c1: i2c@f0018000 {
>     compatible = "atmel,at91sam9x5-i2c";
>     reg = <0xf0018000 0x4000>;
>     interrupts = <0x13 0x4 0x6>;
>     dmas = <0x2 0x2 0x9 0x2 0x2 0xa>;
>     dma-names = "tx", "rx";
>     pinctrl-names = "default";
>     pinctrl-0 = <0x12>;
>     #address-cells = <0x1>;
>     #size-cells = <0x0>;
>     clocks = <0x13>;
>     status = "okay";
>     clock-frequency = <0x61a80>;
>     atmel,recover-scl = <0x14 0x1b 0x0>;
>     atmel,recover-sda = <0x14 0x1a 0x0>;
> 
>     lsm6ds3@6b {
>      compatible = "st,lsm6ds3";
>      reg = <0x6b>;
>      pinctrl-names = "default";
>      pinctrl-0 = <0x15>;
>      interrupt-parent = <0x16>;
>      interrupts = <0xc 0x1>;
>      interrupt-names = "lsm6ds_int1";
>      st,drdy-int-pin = <0x1>;
>     };
>    };
> 
> Version: DTC 1.4.0 (ubuntu package) for manual testing.
> 
> (1)  fdtdump mix6000.dtb | grep interrupts
> 
> Thsi returns the interrupt line as:
> 
> interrupts = <0x0000000c 0x000001d0>;
> 
> (2) In the linux kernel the of_platform_populate() reads the same property as:
> 
> 0x0000000c 0x00000000 with lenth=8
> 
> (3) If I take the DTS file and manually compile the DTB with the dtc
> compiler, and convert it back to the DTS the correct values are shown
> 
> (4) If I change the interrupt value:
> 
> interrupts = <0xc 0x0>;
> 
> and I do:
> 
> cat <file-old.dtb> | od -t x1 > file1.txt
> cat <file-mod.dtb> | od -t x1 > file2.txt
> kdiff3 file1.txt file2.txt
> 
> I actually see a single hex byte change from 0x1 to 0x0.
> 
> If it was not for the faulty fdtdump output (in conjuection with the
> Linux kernel zero at the same place) I would have said its definately
> a kernel issue.
> 
> Any ideas?

You can see what the dtb looked like when given to the kernel. Take
/sys/firmware/fdt and decompile that with dtc.

If it already looks bad at this point, does your bootloader have any
way to look at the dtb?

-Frank

  parent reply	other threads:[~2017-02-03  2:28 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-02 17:53 DTB file appears to have corrupted node property according to fdtdump and kernel? Frederik Lotter
     [not found] ` <CAPBAm7QSB_-LrAwouztLYLaC0mWF2V4QQ_Yz98p6jVw07SfT6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-02-02 22:56   ` David Gibson
2017-02-03  2:28   ` Frank Rowand [this message]
     [not found]     ` <5893EABE.10009-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-03  8:35       ` Frederik Lotter

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=5893EABE.10009@gmail.com \
    --to=frowand.list-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=frederik.lotter-Re5JQEeQqe8AvxtiuMwx3w@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).