Re: [PATCH] Fix copyright notice of kernel space headers

2022-05-18 Thread Chris Johns
On 18/5/2022 4:57 pm, Sebastian Huber wrote:
> Use the copyright notice of the associated header file from FreeBSD if the
> kernel space header file contains a substantial amount of imported code.
> 
> Add include guard checks to all header files.

OK.

Just a comment ... is the guard change more important when searching the commit
history that the copyright change?

Chris
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH] Fix copyright notice of kernel space headers

2022-05-18 Thread Sebastian Huber

On 18/05/2022 09:23, Chris Johns wrote:

Just a comment ... is the guard change more important when searching the commit
history that the copyright change?


I did split the commit into three commits.

--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

[PATCH] linkers: Speed up reading large executables for all cases except inlining

2022-05-18 Thread chrisj
From: Chris Johns 

- Only load the function DWARF data if checking inlines
---
 linkers/rtems-exeinfo.cpp  | 45 ++
 rtemstoolkit/rld-dwarf.cpp |  2 +-
 2 files changed, 27 insertions(+), 20 deletions(-)

diff --git a/linkers/rtems-exeinfo.cpp b/linkers/rtems-exeinfo.cpp
index e54f9b2..0900812 100644
--- a/linkers/rtems-exeinfo.cpp
+++ b/linkers/rtems-exeinfo.cpp
@@ -144,7 +144,7 @@ namespace rld
   /**
* Load the executable file.
*/
-  image (const std::string exe_name);
+  image (const std::string exe_name, bool load_functions);
 
   /**
* Clean up.
@@ -283,7 +283,7 @@ namespace rld
   }
 }
 
-image::image (const std::string exe_name)
+image::image (const std::string exe_name, bool load_functions)
   : exe (exe_name),
 init (0),
 fini (0)
@@ -321,7 +321,11 @@ namespace rld
   debug.load_debug ();
   debug.load_types ();
   debug.load_variables ();
-  debug.load_functions ();
+  if (load_functions)
+  {
+std::cout << "May take a while ..." << std::endl;
+debug.load_functions ();
+  }
   symbols.globals (addresses);
   symbols.weaks (addresses);
   symbols.locals (addresses);
@@ -610,23 +614,26 @@ namespace rld
   uint32_t address;
   symbols::symbol* sym;
   sec.data >> address;
-  sym = addresses[address];
-  std::cout << "  "
-<< std::hex << std::setfill ('0')
-<< "0x" << std::setw (8) << address
-<< std::dec << std::setfill ('0');
-  if (sym)
-  {
-std::string label = sym->name ();
-if (rld::symbols::is_cplusplus (label))
-  rld::symbols::demangle_name (label, label);
-std::cout << " " << label;
-  }
-  else
+  if (address != 0)
   {
-std::cout << " no symbol";
+sym = addresses[address];
+std::cout << "  "
+  << std::hex << std::setfill ('0')
+  << "0x" << std::setw (8) << address
+  << std::dec << std::setfill ('0');
+if (sym)
+{
+  std::string label = sym->name ();
+  if (rld::symbols::is_cplusplus (label))
+rld::symbols::demangle_name (label, label);
+  std::cout << " " << label;
+}
+else
+{
+  std::cout << " no symbol (maybe static to a module)";
+}
+std::cout << std::endl;
   }
-  std::cout << std::endl;
 }
   }
 
@@ -1114,7 +1121,7 @@ main (int argc, char* argv[])
 /*
  * Open the executable and read the symbols.
  */
-rld::exeinfo::image exe (exe_name);
+rld::exeinfo::image exe (exe_name, inlined | dwarf_data);
 
 std::cout << "exe: " << exe.exe.name ().full () << std::endl
   << std::endl;
diff --git a/rtemstoolkit/rld-dwarf.cpp b/rtemstoolkit/rld-dwarf.cpp
index e41be8c..c11a13e 100644
--- a/rtemstoolkit/rld-dwarf.cpp
+++ b/rtemstoolkit/rld-dwarf.cpp
@@ -1812,7 +1812,7 @@ namespace rld
 debug_info_entry next (die.get_debug ());
 
 if (die.get_child (next))
-  load_functions (next);
+  load_variables (next);
 
 if (!die.get_sibling (next))
   break;
-- 
2.19.1

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH] ISL, MPC, MPFR: fix configuration issues on ARM64/Darwin host

2022-05-18 Thread Chris Johns
On 18/5/2022 1:21 pm, Joel Sherrill wrote:
> On Tue, May 17, 2022, 6:27 PM Chris Johns  > wrote:
> 
> On 18/5/2022 4:33 am, Joel Sherrill wrote:
> > Looked good to me and I pushed it.
> 
> Thanks to all who helped get this change done. It is great to see hosts 
> other
> than Linux being used in our community.
> 
> > Thanks for suffering through all that.  Managing patches to upstream
> > projects is a balancing act. We don't want to hold patches forever and 
> we
> > want to switch to new versions of upstream packages that don't need 
> them as
> > soon as we can.
> 
> Yeap. Branches do live on and so the URL need to always exist.
> 
> Does this leave the rtems-tools needing to be updated the latest commit?
> 
> Yes..please go ahead
> 

Done.

Chris
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

[PATCH] user/bsps/arm: improve stm32h7 BSP description

2022-05-18 Thread Karel Gardas
This patch adds kind of HOWTO to the stm32h7 BSP description. The howto
discusses various tools from STM tool-chain and how to use them in order
to configure board for RTEMS and to upload RTEMS application binary
to the board. The patch also adds more supported boards to the table.

Sponsored-By:   Precidata
---
 user/bsps/arm/stm32h7.rst | 544 --
 1 file changed, 528 insertions(+), 16 deletions(-)

diff --git a/user/bsps/arm/stm32h7.rst b/user/bsps/arm/stm32h7.rst
index b508595..ec7440f 100644
--- a/user/bsps/arm/stm32h7.rst
+++ b/user/bsps/arm/stm32h7.rst
@@ -2,16 +2,36 @@
 
 .. Copyright (C) 2020 embedded brains GmbH
 
+.. Copyright (C) 2022 Karel Gardas 
+
 stm32h7
 ===
 
 This BSP supports the
 `STM32H7 Series 
`_.
 
-The BSP is known to run on these boards:
+The BSP is known to run on these boards on specified core with using specified 
BSP variant.
+
+.. table::
+
+  
+--+---++
+  | Board name 
  | Core name |  BSP variant name  |
+  
+==+===++
+  |`STM32H743I-EVAL 2 
`_| M7| 
arm/stm32h7|
+  
+--+---++
+  |`STM32H743ZI-Nucleo 
`_ | M7| 
arm/nucleo-h743zi  |
+  
+--+---++
+  |`STM32H7B3I-DK 
`_  | M7
| arm/stm32h7b3i-dk  |
+  
+--+---++
+  |`STM32H757I-EVAL 
`_  | M7| 
arm/stm32h757i-eval|
+  |
  +---++
+  |
  | M4| arm/stm32h757i-eval-m4 |
+  
+--+---++
+  |`STM32H747I-DISCO 
`_| M7| 
arm/stm32h747i-disco   |
+  |
  +---++
+  |
  | M4| arm/stm32h747i-disco-m4|
+  
+--+---++
 
-* `STM32H743I-EVAL 2 
`_
-* `STM32H743ZI-Nucleo 
`_
 
 Clock Driver
 
@@ -23,20 +43,28 @@ boards, so it is recommended to check the default values of 
the BSP.
 Console Driver
 --
 
-The console driver supports the on-chip UART and USART modules.
-Different board variations use different GPIO pins and blocks for the default
-communication UART and it is recommended to check whether the default
-configuration provided is valid in the BSP.
+The console driver supports the on-chip UART and USART modules. Even
+the MCU supports about 10 U(S)ARTs, only those supported by the chosen
+board are enabled by default configuration. The board needs to support
+some kind of connector-based connection to the U(S)ART in order for the
+feature to be considered supported here.
+..
+.. Leaving previous notes here as a comment. They may still be useful
+.. and incorporated into the later version of the document.
+..
+.. Different board variations use different GPIO pins and blocks for the 
default
+.. communication UART and it is recommended to check whether the default
+.. configuration provided is valid in the BSP.
 
-To specify that the BSP should be built for the STM32H743ZI-Nucleo board,
-users can supply ``STM32H743ZI_NUCLEO = True`` to ``config.ini`` when
-building the BSP.
+.. To specify that the BSP should be built for the STM32H743ZI-Nucleo board,
+.. users can supply ``STM32H743ZI_NUCLEO = True`` to ``config.ini`` when
+.. building the BSP.
 
-Alternatively, users can supply the configuration structs defined in ``hal.h``
-in the application for other boards. For the console driver, the
-``stm32h7_usartX_config`` structs are used to configure the GPIO pins and other
-parameters. The de