From: Patrick Boettcher <patrick.boettcher@posteo.de>
To: "Ulrich Ölmann" <u.oelmann@pengutronix.de>
Cc: Barebox List <barebox@lists.infradead.org>
Subject: Re: barebox state is not fixed up into kernel-device-tree
Date: Mon, 5 Nov 2018 10:20:24 +0100 [thread overview]
Message-ID: <20181105102024.5a1b54a5@yaise-pc1> (raw)
In-Reply-To: <20181105094151.262ed3fd@yaise-pc1>
On Mon, 5 Nov 2018 09:41:51 +0100
Patrick Boettcher <patrick.boettcher@posteo.de> wrote:
> Hi Ulrich,
>
> On Mon, 05 Nov 2018 09:28:53 +0100
> Ulrich Ölmann <u.oelmann@pengutronix.de> wrote:
>
> > Hi Patrick,
> >
> > Patrick Boettcher <patrick.boettcher@posteo.de> writes:
> > > I'm using a device-state (for bootchooser) which is stored in an
> > > eeprom.
> > >
> > > Works fine from within barebox - read and write.
> > >
> > > Userspace does not see the state:
> > >
> > > Neither /aliases/state nor /state found
> > >
> > > The displayed device-tree when booting with 'boot -v -v <name>'
> > > does not contain the state-entry.
> > >
> > > However, there is a warning of a failed fixup:
> > >
> > > Failed to fixup node in of_state_fixup+0x1/0x1ac: No such device
> > >
> > > Could it be that the eeprom-alias is missing? I'm still learning
> > > device-tree and stuff and I'm not yet entirely sure how everything
> > > is related.
> > >
> > > The partition is created within a
> > >
> > > &eeprom {
> > > [..]
> > > }
> > >
> > > section and eeprom is defined as
> > >
> > > eeprom: eeprom@52 {
> > >
> > > }
> > >
> > > (I added the 'eeprom: '- name/alias)
> > >
> > > Where am I missing the link?
> >
> > there was a patch recently that fixed a bug in the context of
> > partition fixups and as a result repaired the state fixup as well
> > for some setups:
> >
> > http://lists.infradead.org/pipermail/barebox/2018-October/035091.html
> >
> > Please check if it solves your problem. If not then please provide
> > more insight into your devicetrees (barebox & kernel) and post a
> > little bit more context of the state node as well as the eeprom and
> > the aliases nodes.
>
> I investigated further (still doing right now). In my kernel
> device-tree the eeprom does not have the partition definition. So
> of_state_fixup() does not find it (I added some debug prints to
> analyze):
>
> of_find_node_by_path_from:
> /soc/aips-bus@02100000/i2c@021a0000/eeprom@52/partitions/state@0
> not found
>
> I wrongly assumed from mails I found in the archive that barebox is
> fixing up even the partitions.
>
> Does your patch from above will be helpful in my case?
>
> Do I need to change the kernel-device-tree to insert the partitions
> manually? If so, how should it look like if the state-partition in
> barebox is defined like this:
>
> &eeprom {
> status = "okay";
> partitions {
> compatible = "fixed-partitions";
> #size-cells = <1>;
> #address-cells = <1>;
> backend_update_eeprom: state@0 {
> reg = <0x0 0x100>;
> label = "barebox-state-eeprom";
> };
> };
> };
After adding the partition the kernel-device-tree
&eeprom {
status = "okay";
partitions {
backend_update_eeprom: state@0 {
reg = <0x0 0x100>;
};
};
};
The barebox-fixup error disappear, the dumped device tree at boot-time
contains the state-node.
However, barebox-state, run from userspace gives
of_get_devicepath: no 'label' property found
in /soc/aips-bus@02100000/i2c@021a0000/eeprom@52/partitions/state@0
Cannot find backend path in /state
Do I need to copy all of the partition-description into the
kernel-device-tree? Is this, what your patch addresses?
--
Patrick.
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next prev parent reply other threads:[~2018-11-05 9:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-04 22:39 Patrick Boettcher
2018-11-05 8:28 ` Ulrich Ölmann
2018-11-05 8:41 ` Patrick Boettcher
2018-11-05 9:20 ` Patrick Boettcher [this message]
2018-11-06 5:42 ` Ulrich Ölmann
2018-11-05 9:26 ` Ulrich Ölmann
2018-11-05 18:21 ` Patrick Boettcher
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=20181105102024.5a1b54a5@yaise-pc1 \
--to=patrick.boettcher@posteo.de \
--cc=barebox@lists.infradead.org \
--cc=u.oelmann@pengutronix.de \
/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