History log of /freebsd-current/usr.bin/dtc/fdt.cc
Revision Date Author Comments
# 29a55fd0 25-Sep-2023 Jose Luis Duran <jlduran@gmail.com>

dtc: Sync with upstream commit 26a0fe5

- 0206c0f ("Handle top-level /delete-node/ directives.")
- d612a9e ("Remove C++11 standard constrain")
- Remove extra white lines after the $FreeBSD$ tag removal

Reviewed by: kevans (earlier), theraven, emaste
Differential Revision: https://reviews.freebsd.org/D41482


# b3e76948 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix


# 1c44d2bf 09-Jun-2022 John Baldwin <jhb@FreeBSD.org>

usr.bin/dtc: Include <limits> for std::numeric_limits<>.

This is needed when building natively as a cross-tool on hosts such as
Linux using more recent versions of libstdc++.

Co-authored-by: Alexander Richardson <arichardson@FreeBSD.org>
Obtained from: CheriBSD


# 89f5bc46 28-Feb-2022 Jessica Clarke <jrtc27@FreeBSD.org>

dtc: Sync with upstream version e9a77451cdd8

1c231509cf88 ("Validate integers fit in cells") is the only change
missing from our copy.

Reviewed by: manu, imp
Differential Revision: https://reviews.freebsd.org/D34368


# d16c90f5 14-Feb-2020 Kyle Evans <kevans@FreeBSD.org>

dtc: re-apply r353961, r354115

I missed in final review of r357923's diff that these ones hadn't yet been
sent upstream and inadvertently reverted them. =-( Re-apply now.


# aac4229a 14-Feb-2020 Kyle Evans <kevans@FreeBSD.org>

Pull in latest fixes from dtc, up to 0060471

This includes a small battery of /memreserve/ fixes to make sure dtc is
properly writing these regions into the output file and reading them back
out.

As of this update, dtc will now also assume common defaults for -I/-O if
only one is specified; namely, dts for one implies dtb for the other and
vice versa (Requested by: jhibbits, preserves GPL dtc behavior too).

MFC after: 1 week


# c571e05c 26-Oct-2019 Emmanuel Vadot <manu@FreeBSD.org>

dtc: Allow multiple dts-v1 tag

Some dts are including dtsi that also contain a /dts-v1/ tag at the
top. GNU DTC doesn't seems to have a problem with that so fix our
dtc to behave the same.

Reviewed by: kevans
MFC after: 1 week


# 7251c2d8 20-Apr-2019 Kyle Evans <kevans@FreeBSD.org>

dtc(1): Pull in fix for segfault-upon-error condition

Specifically, parse errors within a node would lead to a segfault due to
an unconditional dereference after emitting the error.

Obtained from: https://github.com/davidchisnall/dtc/commit/e5ecf9319fd3f
MFC after: 3 days


# d37eb02e 27-Mar-2019 Kyle Evans <kevans@FreeBSD.org>

dtc(1): Update to 1a79f5f26631

Highlights:
- Bugfix for order in which /delete-node/ and /delete-property/ are
processed [0]
- /omit-if-no-ref/ support has been added (used only by U-Boot at this
point, in theory)
- GPL dtc compat version bumped to 1.4.7
- Various small fixes and compatibility improvements

Reported by: strejda [0]
MFC after: 1 week


# 1a36f105 17-Aug-2018 Kyle Evans <kevans@FreeBSD.org>

dtc(1): Update to 97d2d5715eeb45108cc60367fdf6bd5b2046b050

Notable fixes:
- Overlays may now be generated properly without -@
- /__local_fixups__ were not including unit address in their structure
- The error reporting a magic token was misleading, reporting
"Bad magic token in header. Got d00dfeed expected 0xd00dfeed"
if the token was missing. This has been split out into a separate message.

MFC after: 1 week


# e69f3934 13-Apr-2018 Kyle Evans <kevans@FreeBSD.org>

dtc(1): Update to upstream 006664a

Highlights:

- Passing "-" to -o will now cause output to go to stdout
- Path-based syntactic sugar for overlays is now accepted. This looks like:

/dts-v1/;
/plugin/;

&{/soc} {
sid: eeprom@1c14000 {
compatible = "allwinner,sun8i-h3-sid";
reg = <0x1c14000 0x400>;
status = "okay";
};
};

MFC after: 3 days


# ca84c67c 19-Jan-2018 Kyle Evans <kevans@FreeBSD.org>

dtc(1): Update to upstream ea3c233

Highlights of this update:
- /__local_fixups__ is now generated to be GPL dtc and libfdt compliant
- Compiling with -@ will now cause dtc to assign phandles to all labelled
nodes
- /include/ and /incbin/ now handle absolute paths correctly
- The manpage now has information about overlays, including how to apply
them and how to generate them
- Syntactic sugar for overlays is now supported, allowing an overlay DTS
like:

=
/dts-v1/;
/plugin/;

&foo {
foo,status = "okay";
};
=

to generate a fragment targetting <&foo>.


# 1de7b4b8 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

various: general adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.


# b2dba1f6 23-Jun-2017 Emmanuel Vadot <manu@FreeBSD.org>

dtc: Update to upstream 9ce35ff8

- Add "compatible with gpl dtc X.Y.Z" to version output so U-Boot doesn't complain
- Fix cross reference node

This fixes some Allwinner DTS (and probably others).


# 21d5d37b 17-Apr-2017 Ed Maste <emaste@FreeBSD.org>

dtc: update to upstream 227d6a3

- Report missing includes at the correct location.
- Add initial support for the -@ option emitting a symbol table.
- Add support for running tests with and without -@
- Add support for generating __fixups__ and __local_fixups__
- Attach the to-string transform to the node path.


# be5d5a33 25-Nov-2016 Raphael Kubo da Costa <rakuco@FreeBSD.org>

fdt: Expect strchr() to return a const char*

In C, strchr(3) returns a char*, whereas C++ defines two overloads:
* const char *strchr(const char*, int)
* char *strchr(char*, int)

Building fdt.cc (with the WITHOUT_GPL_DTC knob set) with libc++ 3.9.0 (imported
in r309124) was failing because libc++ r260377 added the first overload to
string.h, leading to failures such as:

fdt.cc:1638:8: error: cannot initialize a variable of type 'char *' with an
rvalue of type 'const char *'

Just define val as a const char* to fix it.

Upstreamed in https://github.com/davidchisnall/dtc/pull/14

Reviewed by: emaste
Approved by: emaste


# bbe31b70 06-Oct-2016 Ed Maste <emaste@FreeBSD.org>

Improvements to BSD-licensed DTC.

- Numerous crash and bug fixes
- Improved warning and error messages
- Permit multiple labels on nodes and properties
- Fix node@address references
- Add support for /delete-node/
- Consume whitespace after a node
- Read the next token before the second /memreserve/
- Fix parsing of whitespace
- Clean up /delete-node/ and add support for /delete-property/
- Handle /delete-node/ specifying a unit address

Obtained from: https://github.com/davidchisnall/dtc @df5ede4


# c64a3eaf 29-Dec-2015 David Chisnall <theraven@FreeBSD.org>

Improvements to BSD-licensed DTC.

- Added an expression parser so that expressions from headers are now working
- Fixed missing null terminators on cross references
- Disabled exceptions / RTTI in the build for smaller binaries
- Changed phandle order generation to be identical to GPL'd dtc


# a0706eb4 25-Oct-2015 David Chisnall <theraven@FreeBSD.org>

Lots of improvements to the BSD-licensed dtc

- Various fixes to includes (including recursive includes)
- Lots of testing that the output exactly matches GPL'd dtc
- Lots of bug fixes to merging
- Fix incorrect mmap usage
- Ad-hoc memory management replaced with C++11 unique_ptr and similar

Patrick Wildt has successfully run many (all?) of the GPL dtc test suite.


# 23afbfa9 10-Jun-2014 Rui Paulo <rpaulo@FreeBSD.org>

dtc: don't crash if the argument is a directory.


# dbb83b6a 14-Mar-2014 Warner Losh <imp@FreeBSD.org>

Fix cut-and-paste error message.


# aaeeeec3 23-Feb-2014 David Chisnall <theraven@FreeBSD.org>

Fix parsing multiple roots with whitespace between them.

Patch by: Patrick Wildt


# e00bea9e 12-Dec-2013 David Chisnall <theraven@FreeBSD.org>

Some more cleanups and bug fixes in dtc for property printing / parsing.

Submitted by: Patrick Wildt


# ae893e1a 12-Dec-2013 David Chisnall <theraven@FreeBSD.org>

Fix the version string in dts emission.

Reported by: Patrick Wildt
MFC after: 1 week


# 5ad287fa 05-Nov-2013 David Chisnall <theraven@FreeBSD.org>

When writing DTS to a file, don't write some of it to stderr.

Reported by: ray


# 88169e03 18-Aug-2013 David Chisnall <theraven@FreeBSD.org>

Add support for parameterised device tree sources to the device tree compiler.

Reviewed by: brooks
Sponsored by: DARPA, AFRL


# 3334a617 10-Jul-2013 David Chisnall <theraven@FreeBSD.org>

Report error for out-of-range numerical inputs. Requested by brooks.


# 009f7b42 23-Jan-2013 David Chisnall <theraven@FreeBSD.org>

Explicitly include headers that are implicitly included by libstdc++. Fixes
building dtc with libc++.


# af0dd31f 22-Jan-2013 David Chisnall <theraven@FreeBSD.org>

Import new (BSDL) device tree compiler. Now built by default, so that it can't
be used on the host system (and not installed on the device, if required). The
GPL'd one is still available if there are any devices that need it (make
universe passes with it, including kernels that use fdt, but there may be some
out-of-tree ones). WITH_GPL_DTC can be used to select the old one, for now.

Probably won't be MFC'd, but we'll remove the GPL'd version in head after the
new one has had a lot more testing and ship it in 10.0.