mbox series

[U-Boot,0/5] REVERT Follow the Linux Kernel in building dtc as needed

Message ID 20170927141524.5920-1-wd@denx.de
Headers show
Series REVERT Follow the Linux Kernel in building dtc as needed | expand

Message

Wolfgang Denk Sept. 27, 2017, 2:15 p.m. UTC
This patch series reverts some patches that should never have been
merged into mainline at all:

- They were applied in violation of the well established rule that
  ALL patches must be posted on the mailing list before, and given
  enough time for review by the community.
- Obviously, these patches have not been Acked-by: by anybody.
- They implement a solution that probably does not represent the
  majority of the developers who discussed this issue. They were
  applied cutting short the ongoing discussion, without giving a
  good, comprehensible reason.  Alternative solutions were
  presented before, but this patch series ignores them.

U-Boot is a community project with an established and documented
development process.  No single person, not even a custodian or
maintainer, shall have the power to push through any changes without
or against the consent of the community.  If we want to maintain
these standards, we cannot accept this.  We therefore have only one
choice: revert these patches now, and let them undergo the necessary
review process on the mailing list, allowing for the usual grace
period of two weeks.  Sorry.

Signed-off-by: Wolfgang Denk <wd@denx.de>

Wolfgang Denk (5):
  Revert "tools/mkimage: Make the path to the dtc binary that mkimage
    calls configurable"
  Revert "dtc: Switch to building and using our own dtc unless provided"
  Revert "scripts/dtc: Update to upstream version
    v1.4.4-50-gfe50bd1ecc1d"
  Revert "scripts/dtc: Update to upstream version v1.4.4"
  Revert "scripts/dtc: Update to upstream version v1.4.3"

Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Alexander Graf <agraf@suse.de>
Cc: Alexey Brodkin <alexey.brodkin@synopsys.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Andre Przywara <andre.przywara@arm.com>,
Cc: Andreas Bießmann <andreas.devel@googlemail.com>
Cc: Angelo Dureghello <angelo@sysam.it>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Daniel Hellstrom <daniel@gaisler.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Heinrich Schuchardt <xypron.debian@gmx.de>
Cc: Huan Wang <alison.wang@freescale.com>
Cc: Jagan Teki <jteki@openedev.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Kim Phillips <kim.phillips@freescale.com>
Cc: Kyungmin Park <kmpark@infradead.org>
Cc: Lukasz Majewski <lukma@denx.de>
Cc: Macpaul Lin <macpaul@andestech.com>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Przemyslaw Marczak <p.marczak@samsung.com>
Cc: Robert Nelson <robertcnelson@gmail.com>
Cc: Scott Wood  <scottwood@freescale.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Sonic Zhang <sonic.adi@gmail.com>
Cc: Stanislav Galabov <sgalabov@gmail.com>
Cc: Stefan Roese <sr@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Thomas Chou <thomas@wytron.com.tw>
Cc: Tom Rini <trini@konsulko.com>
Cc: Tom Warren <TWarren@nvidia.com>
Cc: u-boot@lists.denx.de
Cc: Vagrant Cascadian <vagrant@debian.org>
Cc: Vipin Kumar <vk.vipin@gmail.com>
Cc: York Sun <yorksun@freescale.com>

 .travis.yml                          |    6 +-
 Makefile                             |   10 +-
 dts/Kconfig                          |   13 -
 scripts/Kbuild.include               |    5 +
 scripts/Makefile                     |    1 -
 scripts/Makefile.extrawarn           |   16 +-
 scripts/dtc/Makefile                 |   31 -
 scripts/dtc/Makefile.dtc             |   18 -
 scripts/dtc/checks.c                 | 1076 ----------------
 scripts/dtc/data.c                   |  269 ----
 scripts/dtc/dtc-lexer.l              |  306 -----
 scripts/dtc/dtc-lexer.lex.c_shipped  | 2255 ---------------------------------
 scripts/dtc/dtc-parser.tab.c_shipped | 2301 ----------------------------------
 scripts/dtc/dtc-parser.tab.h_shipped |  123 --
 scripts/dtc/dtc-parser.y             |  519 --------
 scripts/dtc/dtc.c                    |  365 ------
 scripts/dtc/dtc.h                    |  290 -----
 scripts/dtc/flattree.c               |  940 --------------
 scripts/dtc/fstree.c                 |   90 --
 scripts/dtc/libfdt/Makefile.libfdt   |   11 -
 scripts/dtc/libfdt/fdt.c             |  251 ----
 scripts/dtc/libfdt/fdt.h             |  111 --
 scripts/dtc/libfdt/fdt_empty_tree.c  |   83 --
 scripts/dtc/libfdt/fdt_ro.c          |  703 -----------
 scripts/dtc/libfdt/fdt_rw.c          |  505 --------
 scripts/dtc/libfdt/fdt_strerror.c    |  102 --
 scripts/dtc/libfdt/fdt_sw.c          |  300 -----
 scripts/dtc/libfdt/fdt_wip.c         |  139 --
 scripts/dtc/libfdt/libfdt.h          | 1899 ----------------------------
 scripts/dtc/libfdt/libfdt_env.h      |  112 --
 scripts/dtc/libfdt/libfdt_internal.h |   95 --
 scripts/dtc/livetree.c               |  981 ---------------
 scripts/dtc/srcpos.c                 |  302 -----
 scripts/dtc/srcpos.h                 |  117 --
 scripts/dtc/treesource.c             |  284 -----
 scripts/dtc/update-dtc-source.sh     |   81 --
 scripts/dtc/util.c                   |  474 -------
 scripts/dtc/util.h                   |  263 ----
 scripts/dtc/version_gen.h            |    1 -
 tools/Makefile                       |    2 +-
 40 files changed, 26 insertions(+), 15424 deletions(-)
 delete mode 100644 scripts/dtc/Makefile
 delete mode 100644 scripts/dtc/Makefile.dtc
 delete mode 100644 scripts/dtc/checks.c
 delete mode 100644 scripts/dtc/data.c
 delete mode 100644 scripts/dtc/dtc-lexer.l
 delete mode 100644 scripts/dtc/dtc-lexer.lex.c_shipped
 delete mode 100644 scripts/dtc/dtc-parser.tab.c_shipped
 delete mode 100644 scripts/dtc/dtc-parser.tab.h_shipped
 delete mode 100644 scripts/dtc/dtc-parser.y
 delete mode 100644 scripts/dtc/dtc.c
 delete mode 100644 scripts/dtc/dtc.h
 delete mode 100644 scripts/dtc/flattree.c
 delete mode 100644 scripts/dtc/fstree.c
 delete mode 100644 scripts/dtc/libfdt/Makefile.libfdt
 delete mode 100644 scripts/dtc/libfdt/fdt.c
 delete mode 100644 scripts/dtc/libfdt/fdt.h
 delete mode 100644 scripts/dtc/libfdt/fdt_empty_tree.c
 delete mode 100644 scripts/dtc/libfdt/fdt_ro.c
 delete mode 100644 scripts/dtc/libfdt/fdt_rw.c
 delete mode 100644 scripts/dtc/libfdt/fdt_strerror.c
 delete mode 100644 scripts/dtc/libfdt/fdt_sw.c
 delete mode 100644 scripts/dtc/libfdt/fdt_wip.c
 delete mode 100644 scripts/dtc/libfdt/libfdt.h
 delete mode 100644 scripts/dtc/libfdt/libfdt_env.h
 delete mode 100644 scripts/dtc/libfdt/libfdt_internal.h
 delete mode 100644 scripts/dtc/livetree.c
 delete mode 100644 scripts/dtc/srcpos.c
 delete mode 100644 scripts/dtc/srcpos.h
 delete mode 100644 scripts/dtc/treesource.c
 delete mode 100755 scripts/dtc/update-dtc-source.sh
 delete mode 100644 scripts/dtc/util.c
 delete mode 100644 scripts/dtc/util.h
 delete mode 100644 scripts/dtc/version_gen.h

Comments

Tom Rini Sept. 27, 2017, 2:31 p.m. UTC | #1
On Wed, Sep 27, 2017 at 04:15:19PM +0200, Wolfgang Denk wrote:

> This patch series reverts some patches that should never have been
> merged into mainline at all:
> 
> - They were applied in violation of the well established rule that
>   ALL patches must be posted on the mailing list before, and given
>   enough time for review by the community.
> - Obviously, these patches have not been Acked-by: by anybody.
> - They implement a solution that probably does not represent the
>   majority of the developers who discussed this issue. They were
>   applied cutting short the ongoing discussion, without giving a
>   good, comprehensible reason.  Alternative solutions were
>   presented before, but this patch series ignores them.
> 
> U-Boot is a community project with an established and documented
> development process.  No single person, not even a custodian or
> maintainer, shall have the power to push through any changes without
> or against the consent of the community.  If we want to maintain
> these standards, we cannot accept this.  We therefore have only one
> choice: revert these patches now, and let them undergo the necessary
> review process on the mailing list, allowing for the usual grace
> period of two weeks.  Sorry.

Well, NAK.  When you passed the "benevolent dictator" hat over, you
passed it over.  I value your input, and I don't lightly over-rule
feedback.  So, lets summarize things:
- We need a modern device tree compiler.
- Everyone needs a modern device tree compiler, because everyone should
  be running 'make tests'.
- This is not the first, or second, or possibly even third time we've
  hit problems of people using different versions of dtc and seeing
  different results / problems.
- The Linux Kernel has avoided this problem for forever by just bundling
  the minimum required parts of dtc in order to build things.

So, I've imported the infrastructure to keep things in sync, and
imported upstream dtc.

Now, the best argument I've heard against this is "bundling is bad".  I
don't disagree, and the best way to fix this problem would be for
distributions to start shipping a new enough version here that the
kernel can drop it out, just like they did for linux-firmware recently.
A whole lot more people care about the kernel than they do about U-Boot,
and that's a more viable path forward.  It would even make some kernel
folks happy.
Wolfgang Denk Sept. 27, 2017, 2:56 p.m. UTC | #2
Dear Tom,

In message <20170927143112.GT3112@bill-the-cat> you wrote:
> 
> Well, NAK.  When you passed the "benevolent dictator" hat over, you
> passed it over.  I value your input, and I don't lightly over-rule
> feedback.  So, lets summarize things:

These are all technical arguments. You could have raised these in the
ongoing discussion.  If they are good, convincing arguments, you
should have no problems to have them accepted.

What I'm complainiung about is not WHAT was commited, but HOW it was
committed.

Marek wrote:

| I believe we have a well-established process of submitting patches,
| getting a review and then applying them. If the head maintainer doesn't
| follow the process, why should anyone else ?

You have a role model function. Please stick to the rules!


Best regards,

Wolfgang Denk
Tom Rini Sept. 27, 2017, 3:23 p.m. UTC | #3
On Wed, Sep 27, 2017 at 04:56:27PM +0200, Wolfgang Denk wrote:
> Dear Tom,
> 
> In message <20170927143112.GT3112@bill-the-cat> you wrote:
> > 
> > Well, NAK.  When you passed the "benevolent dictator" hat over, you
> > passed it over.  I value your input, and I don't lightly over-rule
> > feedback.  So, lets summarize things:
> 
> These are all technical arguments. You could have raised these in the
> ongoing discussion.  If they are good, convincing arguments, you
> should have no problems to have them accepted.

To which I did for some of them, and others I was going to follow up
with, but left aside rather than further the thread.

> What I'm complainiung about is not WHAT was commited, but HOW it was
> committed.
> 
> Marek wrote:
> 
> | I believe we have a well-established process of submitting patches,
> | getting a review and then applying them. If the head maintainer doesn't
> | follow the process, why should anyone else ?
> 
> You have a role model function. Please stick to the rules!

Right.  And part of the job of the custodian is to, on occasion, put
their foot down, on technical grounds, and say when we must do X.  This
happens from time to time anyways.  It rarely happens between
custodians, and I think this is occurrence number 2 in just over 5
years.  And given the related issue of "everyone" being broken unless
they have a new DTC installed, I didn't want to wait nearly so long try
and convince Marek as I did with Albert and the unaligned access thing
last time.  Nor did I want to go with reverting the FDT changes so we
can continue cycling around on what amounts to correcting the previous
mistake of not just including dtc.