[RTEMS Project] #4150: Delete or fix shell command fdt (rtems-fdt.c is dead code)
RTEMS trac
trac at rtems.org
Thu Oct 15 15:08:44 UTC 2020
#4150: Delete or fix shell command fdt (rtems-fdt.c is dead code)
-----------------------------+------------------------
Reporter: Frank Kuehndel | Owner: (none)
Type: enhancement | Status: assigned
Priority: low | Milestone: Indefinite
Component: shell | Version:
Severity: normal | Keywords: shell, fdt
Blocked By: | Blocking:
-----------------------------+------------------------
The shell seems to once have a command 'fdt' (flattened device tree). Its
code resides in
{{{
cpukit/libmisc/rtems-fdt/rtems-fdt.c
cpukit/libmisc/rtems-fdt/rtems-fdt-shell.c
cpukit/include/rtems/rtems-fdt-shell.h
}}}
At the time of writing, this code is not used. No code calls this and it
is not part of the shell anymore. It is not even listed in the shell
command macros in cpukit/include/rtems/shellconfig.h.
Note that RTEMS has a large set of fdt functions which are also used - in
cpukit/include/libfdt.h. Yet, these are not a shell command.
I tried to test the 'fdt' shell command but loading the flattened device
tree blob from testsuites/libtests/libfdt01/some.c (see
testsuites/libtests/libfdt01/some.dts) with 'fdt ld <blob-filename>'
resulted in an infinite loop. Yet, maybe I made something wrong. (RTEMS 6,
HEAD at df9cc1aee87da6c6ba41d52454fa5f45fba74501,
arm/realview_pbx_a9_qemu)
See also bug #3156 "rtems-fdt probably not supported on 64-bit PowerPC"
I suggest to either fix this code and make it a working shell command
again (by for example replacing the functions in rtems-fdt.c by those from
libfdt.h) or to delete the dead code.
Why not simply letting dead code hang around in the sources?
Because even dead code needs maintenance. New compiler versions, compiler
flags, code analysis tools etc. report warnings or errors even in dead
code and these issues must be fixed and - if possible - tested. Moreover,
some dead code (not 'rtems-fdt.c') uses internals from other "living"
RTEMS code. If that living code is changed, the dead code needs to be
adapted to these changes. Conclusion: Dead code wastes efforts and makes
maintenance harder.
--
Ticket URL: <http://devel.rtems.org/ticket/4150>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list