From: Jon Loeliger <jdl@jdl.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Ian Campbell <Ian.Campbell@citrix.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
linuxppc-dev@lists.ozlabs.org, Michal Marek <mmarek@suse.cz>,
Stephen Warren <swarren@nvidia.com>,
Rob Herring <rob.herring@calxeda.com>,
linux-kbuild@vger.kernel.org
Subject: Re: DTB build failure due to preproccessing
Date: Fri, 31 May 2013 08:01:59 -0500 [thread overview]
Message-ID: <E1UiOxz-0004ET-RE@jdl.com> (raw)
In-Reply-To: <20130531114824.60D223E0901@localhost>
> >
> > Line 374 is the "IDSEL 0x16..." line here:
> > interrupt-map = <
> > /* IRQ mapping for pci slots and ALI M1533
> > ...
> > * management core also isn't used.
> > */
> >
> > /* IDSEL 0x16 / dev=6, bus=0 / PCI slot 3 */
> > 0x3000 0 0 1 &xps_intc_0 3 2
> > 0x3000 0 0 2 &xps_intc_0 2 2
> > 0x3000 0 0 3 &xps_intc_0 5 2
> > 0x3000 0 0 4 &xps_intc_0 4 2
Can you show me the original source without mods here, please?
Or is the "..." purely elided comments?
> > Which gets preprocessed into:
> > interrupt-map = <
> > # 375 "arch/powerpc/boot/dts/virtex440-ml510.dts"
> > 0x3000 0 0 1 &xps_intc_0 3 2
> > 0x3000 0 0 2 &xps_intc_0 2 2
> > 0x3000 0 0 3 &xps_intc_0 5 2
> > 0x3000 0 0 4 &xps_intc_0 4 2
> dtc is only able to track line numbers when the native /include/
> directive is used. The #include directive doesn't help it. It should be
> added, but until it is the following patch solves the problem:
It's supposed to do better than that, I think.
This, from dtc-lexer.l
<*>^"#"(line)?{WS}+[0-9]+{WS}+{STRING}({WS}+[0-9]+)? {
char *line, *tmp, *fn;
/* skip text before line # */
line = yytext;
while (!isdigit(*line))
line++;
/* skip digits in line # */
tmp = line;
while (!isspace(*tmp))
tmp++;
/* "NULL"-terminate line # */
*tmp = '\0';
/* start of filename */
fn = strchr(tmp + 1, '"') + 1;
/* strip trailing " from filename */
tmp = strchr(fn, '"');
*tmp = 0;
/* -1 since #line is the number of the next line */
srcpos_set_line(xstrdup(fn), atoi(line) - 1);
}
Hrm. Is this a "that's not in the kernel's copy yet" problem?
Or did this fail to match the offending '# <line> <file>' somehow?
(Like, is that '# 375' really in column 1?)
Thanks,
jdl
WARNING: multiple messages have this Message-ID (diff)
From: Jon Loeliger <jdl@jdl.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Michal Marek <mmarek@suse.cz>,
Stephen Warren <swarren@nvidia.com>,
Ian Campbell <Ian.Campbell@citrix.com>,
linux-kbuild@vger.kernel.org,
linux-kernel <linux-kernel@vger.kernel.org>,
Rob Herring <rob.herring@calxeda.com>,
linuxppc-dev@lists.ozlabs.org
Subject: Re: DTB build failure due to preproccessing
Date: Fri, 31 May 2013 08:01:59 -0500 [thread overview]
Message-ID: <E1UiOxz-0004ET-RE@jdl.com> (raw)
In-Reply-To: <20130531114824.60D223E0901@localhost>
> >
> > Line 374 is the "IDSEL 0x16..." line here:
> > interrupt-map = <
> > /* IRQ mapping for pci slots and ALI M1533
> > ...
> > * management core also isn't used.
> > */
> >
> > /* IDSEL 0x16 / dev=6, bus=0 / PCI slot 3 */
> > 0x3000 0 0 1 &xps_intc_0 3 2
> > 0x3000 0 0 2 &xps_intc_0 2 2
> > 0x3000 0 0 3 &xps_intc_0 5 2
> > 0x3000 0 0 4 &xps_intc_0 4 2
Can you show me the original source without mods here, please?
Or is the "..." purely elided comments?
> > Which gets preprocessed into:
> > interrupt-map = <
> > # 375 "arch/powerpc/boot/dts/virtex440-ml510.dts"
> > 0x3000 0 0 1 &xps_intc_0 3 2
> > 0x3000 0 0 2 &xps_intc_0 2 2
> > 0x3000 0 0 3 &xps_intc_0 5 2
> > 0x3000 0 0 4 &xps_intc_0 4 2
> dtc is only able to track line numbers when the native /include/
> directive is used. The #include directive doesn't help it. It should be
> added, but until it is the following patch solves the problem:
It's supposed to do better than that, I think.
This, from dtc-lexer.l
<*>^"#"(line)?{WS}+[0-9]+{WS}+{STRING}({WS}+[0-9]+)? {
char *line, *tmp, *fn;
/* skip text before line # */
line = yytext;
while (!isdigit(*line))
line++;
/* skip digits in line # */
tmp = line;
while (!isspace(*tmp))
tmp++;
/* "NULL"-terminate line # */
*tmp = '\0';
/* start of filename */
fn = strchr(tmp + 1, '"') + 1;
/* strip trailing " from filename */
tmp = strchr(fn, '"');
*tmp = 0;
/* -1 since #line is the number of the next line */
srcpos_set_line(xstrdup(fn), atoi(line) - 1);
}
Hrm. Is this a "that's not in the kernel's copy yet" problem?
Or did this fail to match the offending '# <line> <file>' somehow?
(Like, is that '# 375' really in column 1?)
Thanks,
jdl
next prev parent reply other threads:[~2013-05-31 13:50 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-31 10:29 DTB build failure due to preproccessing Ian Campbell
2013-05-31 10:29 ` Ian Campbell
2013-05-31 10:29 ` Ian Campbell
2013-05-31 11:48 ` Grant Likely
2013-05-31 11:48 ` Grant Likely
2013-05-31 11:58 ` Ian Campbell
2013-05-31 11:58 ` Ian Campbell
2013-05-31 11:58 ` Ian Campbell
2013-05-31 13:01 ` Jon Loeliger [this message]
2013-05-31 13:01 ` Jon Loeliger
2013-05-31 13:07 ` Ian Campbell
2013-05-31 13:07 ` Ian Campbell
2013-05-31 13:07 ` Ian Campbell
2013-05-31 13:16 ` Ian Campbell
2013-05-31 13:16 ` Ian Campbell
2013-05-31 13:16 ` Ian Campbell
2013-05-31 16:04 ` Stephen Warren
2013-05-31 16:04 ` Stephen Warren
2013-05-31 16:31 ` Grant Likely
2013-05-31 16:31 ` Grant Likely
2013-06-03 9:44 ` Ian Campbell
2013-06-03 9:44 ` Ian Campbell
2013-06-03 9:44 ` Ian Campbell
2013-05-31 16:37 ` Stephen Warren
2013-05-31 16:37 ` Stephen Warren
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=E1UiOxz-0004ET-RE@jdl.com \
--to=jdl@jdl.com \
--cc=Ian.Campbell@citrix.com \
--cc=grant.likely@secretlab.ca \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mmarek@suse.cz \
--cc=rob.herring@calxeda.com \
--cc=swarren@nvidia.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.