Re: [RSB PATCH] 6/rtems-gcc: Revert to the gcc-13 release branch for MacOS fixes

2024-04-13 Thread Joel Sherrill
This is ok to push.

Unfortunate but this is the reality. A GCC 14 release is still future tense.

On Sat, Apr 13, 2024, 8:49 PM  wrote:

> From: Chris Johns 
>
> Change back to gcc-13 branch and a git version as gcc-13.2 does
> not build on MacOS 14.4. The fixes are on the gcc-13 release branch.
> ---
>  rtems/config/6/rtems-default.bset   | 2 +-
>  rtems/config/tools/rtems-gcc-13-newlib-head.cfg | 6 +++---
>  2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/rtems/config/6/rtems-default.bset
> b/rtems/config/6/rtems-default.bset
> index 2d7a223..2d51c50 100644
> --- a/rtems/config/6/rtems-default.bset
> +++ b/rtems/config/6/rtems-default.bset
> @@ -14,7 +14,7 @@
>  %defineifnot with_rtems_gmp  devel/gmp-6.3.0
>  %defineifnot with_rtems_gdb  tools/rtems-gdb-13.2
>  %defineifnot with_rtems_binutils tools/rtems-binutils-2.41
> -%defineifnot with_rtems_gcc  tools/rtems-gcc-13.2-newlib-head
> +%defineifnot with_rtems_gcc  tools/rtems-gcc-13-newlib-head
>  %defineifnot with_rtems_toolstools/rtems-tools-6
>
>  tools/rtems-default-tools.bset
> diff --git a/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
> b/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
> index c73d5a6..4dbbd9b 100644
> --- a/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
> +++ b/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
> @@ -1,12 +1,12 @@
>  %include %{_configdir}/checks.cfg
>  %include %{_configdir}/base.cfg
>
> -%define gcc_version 8c04837
> +%define gcc_version 54a235e
>  %define gcc_external 1
>  %define gcc_expand_name gnu-mirror-gcc-%{gcc_version}
>  %source set gcc --rsb-file=%{gcc_expand_name}.tar.gz
> https://codeload.github.com/RTEMS/gnu-mirror-gcc/tar.gz/%{gcc_version}
>  %hash sha512 %{gcc_expand_name}.tar.gz \
> -
> YSkX/JY61N+I4CPkJInUNGzwhb+uv+YNs9qcTxxJhg/HpGD5vI9duEPNw++F3y8J4re87DPJGIzV5DsFUBCJnA==
> +
> UAXjyfPP883wjLDnobDk4wmg/vAO0I4LjzzurLCKejj0FUSk0KvlkVj1CF+3XwFcdlCWRhN7z/Ls4fOunafe9w==
>
>  %define newlib_version 176b19f
>  %define newlib_external 1
> @@ -19,4 +19,4 @@
>  %define with_plugin 0
>  %define with_iconv 1
>
> -%include %{_configdir}/gcc-12.cfg
> +%include %{_configdir}/gcc-13.cfg
> --
> 2.39.3 (Apple Git-146)
>
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
>
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Re: Certificate of the documentation page expired yesterday

2024-04-13 Thread Chris Johns
Thanks, it should be fixed.

Chris

On 13/4/2024 12:41 am, Heinz Junkes wrote:
> Common Name (CN)
> docs.rtems.org
> Organisation (O)
> 
> Organisational Unit (OU)
> 
> Issued By
> Common Name (CN)
> R3
> Organisation (O)
> Let's Encrypt
> Organisational Unit (OU)
> 
> Validity Period
> Issued On
> Friday, 12 January 2024 at 20:02:57
> Expires On
> Thursday, 11 April 2024 at 21:02:56
> SHA-256 Fingerprints
> Certificate
> 9f6e41915a88f37a44627f92e459202504780eeab66109bfb4af1aa0f808ccc7
> Public key
> 8f203f1219335bee3b05d2a42e0e670e551cf7f69159463415a099580d8305fb
> 
> Heinz
> 
> 
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[RSB PATCH] 6/rtems-gcc: Revert to the gcc-13 release branch for MacOS fixes

2024-04-13 Thread chrisj
From: Chris Johns 

Change back to gcc-13 branch and a git version as gcc-13.2 does
not build on MacOS 14.4. The fixes are on the gcc-13 release branch.
---
 rtems/config/6/rtems-default.bset   | 2 +-
 rtems/config/tools/rtems-gcc-13-newlib-head.cfg | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/rtems/config/6/rtems-default.bset 
b/rtems/config/6/rtems-default.bset
index 2d7a223..2d51c50 100644
--- a/rtems/config/6/rtems-default.bset
+++ b/rtems/config/6/rtems-default.bset
@@ -14,7 +14,7 @@
 %defineifnot with_rtems_gmp  devel/gmp-6.3.0
 %defineifnot with_rtems_gdb  tools/rtems-gdb-13.2
 %defineifnot with_rtems_binutils tools/rtems-binutils-2.41
-%defineifnot with_rtems_gcc  tools/rtems-gcc-13.2-newlib-head
+%defineifnot with_rtems_gcc  tools/rtems-gcc-13-newlib-head
 %defineifnot with_rtems_toolstools/rtems-tools-6
 
 tools/rtems-default-tools.bset
diff --git a/rtems/config/tools/rtems-gcc-13-newlib-head.cfg 
b/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
index c73d5a6..4dbbd9b 100644
--- a/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
+++ b/rtems/config/tools/rtems-gcc-13-newlib-head.cfg
@@ -1,12 +1,12 @@
 %include %{_configdir}/checks.cfg
 %include %{_configdir}/base.cfg
 
-%define gcc_version 8c04837
+%define gcc_version 54a235e
 %define gcc_external 1
 %define gcc_expand_name gnu-mirror-gcc-%{gcc_version}
 %source set gcc --rsb-file=%{gcc_expand_name}.tar.gz 
https://codeload.github.com/RTEMS/gnu-mirror-gcc/tar.gz/%{gcc_version}
 %hash sha512 %{gcc_expand_name}.tar.gz \
-  
YSkX/JY61N+I4CPkJInUNGzwhb+uv+YNs9qcTxxJhg/HpGD5vI9duEPNw++F3y8J4re87DPJGIzV5DsFUBCJnA==
+  
UAXjyfPP883wjLDnobDk4wmg/vAO0I4LjzzurLCKejj0FUSk0KvlkVj1CF+3XwFcdlCWRhN7z/Ls4fOunafe9w==
 
 %define newlib_version 176b19f
 %define newlib_external 1
@@ -19,4 +19,4 @@
 %define with_plugin 0
 %define with_iconv 1
 
-%include %{_configdir}/gcc-12.cfg
+%include %{_configdir}/gcc-13.cfg
-- 
2.39.3 (Apple Git-146)

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


[PATCH] bsps/aarch64/raspberrypi: Add system timer support

2024-04-13 Thread Ning Yang
The clock from the ARM timer is derived from the system clock. This clock can 
change dynamically e.g. if the system goes into reduced power or in low power 
mode. Thus the clock speed adapts to the overall system performance 
capabilities. For accurate timing it is recommended to use the system timers.

if BSP_CLOCK_USE_SYSTEMTIMER = 1, use the System Timer, otherwise use the ARM 
Timer.
---
 bsps/aarch64/raspberrypi/include/bsp/irq.h| 14 ++---
 .../raspberrypi/include/bsp/raspberrypi.h |  9 ++
 spec/build/bsps/aarch64/grp.yml   |  3 --
 .../aarch64/raspberrypi/bspraspberrypi4.yml   |  6 ++--
 .../bsps/aarch64/raspberrypi/objclock.yml | 31 +++
 .../aarch64/raspberrypi/objsystemtimer.yml| 23 ++
 .../aarch64/raspberrypi/optsystemtimer.yml| 24 ++
 7 files changed, 100 insertions(+), 10 deletions(-)
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/objclock.yml
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/objsystemtimer.yml
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/optsystemtimer.yml

diff --git a/bsps/aarch64/raspberrypi/include/bsp/irq.h 
b/bsps/aarch64/raspberrypi/include/bsp/irq.h
index 1ff6ae80de..d493e83707 100644
--- a/bsps/aarch64/raspberrypi/include/bsp/irq.h
+++ b/bsps/aarch64/raspberrypi/include/bsp/irq.h
@@ -9,6 +9,7 @@
 /**
  * Copyright (c) 2013 Alan Cudmore
  * Copyright (c) 2022 Mohd Noor Aman
+ * Copyright (c) 2024 Ning Yang
  *
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -33,15 +34,18 @@
  * @brief Interrupt support.
  */
 
-#define BCM2835_INTC_TOTAL_IRQ   (64 + 8)
+#define BCM2835_INTC_TOTAL_IRQ   216
 
 #define BCM2835_IRQ_SET1_MIN 0
 #define BCM2835_IRQ_SET2_MIN 32
 
-#define BCM2835_IRQ_ID_GPU_TIMER_M0  0
-#define BCM2835_IRQ_ID_GPU_TIMER_M1  1
-#define BCM2835_IRQ_ID_GPU_TIMER_M2  2
-#define BCM2835_IRQ_ID_GPU_TIMER_M3  3
+#define BCM2711_IRQ_VC_PERIPHERAL_BASE 96
+
+/* Interrupt Vectors: System Timer */
+#define BCM2835_IRQ_ID_GPU_TIMER_M0(BCM2711_IRQ_VC_PERIPHERAL_BASE + 0)
+#define BCM2835_IRQ_ID_GPU_TIMER_M1(BCM2711_IRQ_VC_PERIPHERAL_BASE + 1)
+#define BCM2835_IRQ_ID_GPU_TIMER_M2(BCM2711_IRQ_VC_PERIPHERAL_BASE + 2)
+#define BCM2835_IRQ_ID_GPU_TIMER_M3(BCM2711_IRQ_VC_PERIPHERAL_BASE + 3)
 
 #define BCM2835_IRQ_ID_USB   9
 #define BCM2835_IRQ_ID_AUX   29
diff --git a/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h 
b/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
index 55dd9ed1e9..f185d1df57 100644
--- a/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
+++ b/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
@@ -8,6 +8,7 @@
 
 /*
  *  Copyright (c) 2022 Mohd Noor Aman
+ *  Copyright (c) 2024 Ning Yang
  *
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -44,6 +45,7 @@
 
 #define BCM2711_REG(x)   (*(volatile uint64_t *)(x))
 #define BCM2711_BIT(n)   (1 << (n))
+#define BCM2835_REG(addr)(*(volatile uint32_t*)(addr))
 
 /** @} */
 
@@ -198,6 +200,13 @@
 #define BCM2711_GPU_TIMER_C2 (BCM2711_GPU_TIMER_BASE + 0x14)
 #define BCM2711_GPU_TIMER_C3 (BCM2711_GPU_TIMER_BASE + 0x18)
 
+/**
+ * NOTE: compatible with the BCM2835 system timer
+ */
+#define BCM2835_GPU_TIMER_CS_M3  BCM2711_GPU_TIMER_CS_M3
+#define BCM2835_GPU_TIMER_C3 BCM2711_GPU_TIMER_C3
+#define BCM2835_GPU_TIMER_CLOBCM2711_GPU_TIMER_CLO
+#define BCM2835_GPU_TIMER_CS BCM2711_GPU_TIMER_CS
 /** @} */
 
 /**
diff --git a/spec/build/bsps/aarch64/grp.yml b/spec/build/bsps/aarch64/grp.yml
index 9428fb9435..8f40a9952e 100644
--- a/spec/build/bsps/aarch64/grp.yml
+++ b/spec/build/bsps/aarch64/grp.yml
@@ -12,9 +12,6 @@ install:
   source:
   - bsps/aarch64/include/bsp/linker-symbols.h
   - bsps/aarch64/include/bsp/start.h
-- destination: ${BSP_INCLUDEDIR}/dev/clock
-  source:
-  - bsps/include/dev/clock/arm-generic-timer.h
 - destination: ${BSP_INCLUDEDIR}/dev/irq
   source:
   - bsps/aarch64/include/dev/irq/arm-gic-arch.h
diff --git a/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml 
b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
index a579c094ba..7b6511a8cc 100644
--- a/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
+++ b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
@@ -19,6 +19,10 @@ install:
   - bsps/aarch64/raspberrypi/include/bsp/irq.h
   - bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
 links:
+- role: build-dependency
+  uid: objclock
+- role: build-dependency
+  uid: objsystemtimer
 - role: build-dependency
   uid: ../grp
 - role: build-dependency
@@ -50,10 +54,8 @@ source:
 - bsps/aarch64/raspberrypi/start/bspstart.c
 - bsps/aarch64/raspberrypi/start/bspstarthooks.c
 - bsps/aarch64/raspberrypi/start/bspstartmmu.c
-- bsps/aarch64/shared/clock/arm-generic-timer-aarch64.c
 - 

Re: [PATCH] bsps/aarch64/raspberrypi: Add system timer support

2024-04-13 Thread Sebastian Huber

On 13.04.24 12:13, Ning Yang wrote:

diff --git a/bsps/aarch64/raspberrypi/include/bsp/irq.h 
b/bsps/aarch64/raspberrypi/include/bsp/irq.h
index 1ff6ae80de..f2dd2f6c14 100644
--- a/bsps/aarch64/raspberrypi/include/bsp/irq.h
+++ b/bsps/aarch64/raspberrypi/include/bsp/irq.h
@@ -9,6 +9,7 @@
  /**
   * Copyright (c) 2013 Alan Cudmore
   * Copyright (c) 2022 Mohd Noor Aman
+ * Copyright (c) 2024 Ning Yang
   *
   *  The license and distribution terms for this file may be
   *  found in the file LICENSE in this distribution or at
@@ -24,6 +25,7 @@
  
  #include 

  #include 
+#include 


This is a legacy API, please don't include this header.

--
embedded brains GmbH & Co. KG
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] bsps/aarch64/raspberrypi: Add system timer support

2024-04-13 Thread Ning Yang
The clock from the ARM timer is derived from the system clock. This clock can 
change dynamically e.g. if the system goes into reduced power or in low power 
mode. Thus the clock speed adapts to the overall system performance 
capabilities. For accurate timing it is recommended to use the system timers.

if BSP_CLOCK_USE_SYSTEMTIMER = 1, use the System Timer, otherwise use the ARM 
Timer.
---
 bsps/aarch64/raspberrypi/include/bsp/irq.h| 15 ++---
 .../raspberrypi/include/bsp/raspberrypi.h |  9 ++
 spec/build/bsps/aarch64/grp.yml   |  3 --
 .../aarch64/raspberrypi/bspraspberrypi4.yml   |  6 ++--
 .../bsps/aarch64/raspberrypi/objclock.yml | 31 +++
 .../aarch64/raspberrypi/objsystemtimer.yml| 23 ++
 .../aarch64/raspberrypi/optsystemtimer.yml| 24 ++
 7 files changed, 101 insertions(+), 10 deletions(-)
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/objclock.yml
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/objsystemtimer.yml
 create mode 100644 spec/build/bsps/aarch64/raspberrypi/optsystemtimer.yml

diff --git a/bsps/aarch64/raspberrypi/include/bsp/irq.h 
b/bsps/aarch64/raspberrypi/include/bsp/irq.h
index 1ff6ae80de..f2dd2f6c14 100644
--- a/bsps/aarch64/raspberrypi/include/bsp/irq.h
+++ b/bsps/aarch64/raspberrypi/include/bsp/irq.h
@@ -9,6 +9,7 @@
 /**
  * Copyright (c) 2013 Alan Cudmore
  * Copyright (c) 2022 Mohd Noor Aman
+ * Copyright (c) 2024 Ning Yang
  *
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -24,6 +25,7 @@
 
 #include 
 #include 
+#include 
 
 /**
  * @defgroup raspberrypi_interrupt Interrrupt Support
@@ -33,15 +35,18 @@
  * @brief Interrupt support.
  */
 
-#define BCM2835_INTC_TOTAL_IRQ   (64 + 8)
+#define BCM2835_INTC_TOTAL_IRQ   216
 
 #define BCM2835_IRQ_SET1_MIN 0
 #define BCM2835_IRQ_SET2_MIN 32
 
-#define BCM2835_IRQ_ID_GPU_TIMER_M0  0
-#define BCM2835_IRQ_ID_GPU_TIMER_M1  1
-#define BCM2835_IRQ_ID_GPU_TIMER_M2  2
-#define BCM2835_IRQ_ID_GPU_TIMER_M3  3
+#define BCM2711_IRQ_VC_PERIPHERAL_BASE 96
+
+/* Interrupt Vectors: System Timer */
+#define BCM2835_IRQ_ID_GPU_TIMER_M0(BCM2711_IRQ_VC_PERIPHERAL_BASE + 0)
+#define BCM2835_IRQ_ID_GPU_TIMER_M1(BCM2711_IRQ_VC_PERIPHERAL_BASE + 1)
+#define BCM2835_IRQ_ID_GPU_TIMER_M2(BCM2711_IRQ_VC_PERIPHERAL_BASE + 2)
+#define BCM2835_IRQ_ID_GPU_TIMER_M3(BCM2711_IRQ_VC_PERIPHERAL_BASE + 3)
 
 #define BCM2835_IRQ_ID_USB   9
 #define BCM2835_IRQ_ID_AUX   29
diff --git a/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h 
b/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
index 55dd9ed1e9..f185d1df57 100644
--- a/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
+++ b/bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
@@ -8,6 +8,7 @@
 
 /*
  *  Copyright (c) 2022 Mohd Noor Aman
+ *  Copyright (c) 2024 Ning Yang
  *
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -44,6 +45,7 @@
 
 #define BCM2711_REG(x)   (*(volatile uint64_t *)(x))
 #define BCM2711_BIT(n)   (1 << (n))
+#define BCM2835_REG(addr)(*(volatile uint32_t*)(addr))
 
 /** @} */
 
@@ -198,6 +200,13 @@
 #define BCM2711_GPU_TIMER_C2 (BCM2711_GPU_TIMER_BASE + 0x14)
 #define BCM2711_GPU_TIMER_C3 (BCM2711_GPU_TIMER_BASE + 0x18)
 
+/**
+ * NOTE: compatible with the BCM2835 system timer
+ */
+#define BCM2835_GPU_TIMER_CS_M3  BCM2711_GPU_TIMER_CS_M3
+#define BCM2835_GPU_TIMER_C3 BCM2711_GPU_TIMER_C3
+#define BCM2835_GPU_TIMER_CLOBCM2711_GPU_TIMER_CLO
+#define BCM2835_GPU_TIMER_CS BCM2711_GPU_TIMER_CS
 /** @} */
 
 /**
diff --git a/spec/build/bsps/aarch64/grp.yml b/spec/build/bsps/aarch64/grp.yml
index 9428fb9435..8f40a9952e 100644
--- a/spec/build/bsps/aarch64/grp.yml
+++ b/spec/build/bsps/aarch64/grp.yml
@@ -12,9 +12,6 @@ install:
   source:
   - bsps/aarch64/include/bsp/linker-symbols.h
   - bsps/aarch64/include/bsp/start.h
-- destination: ${BSP_INCLUDEDIR}/dev/clock
-  source:
-  - bsps/include/dev/clock/arm-generic-timer.h
 - destination: ${BSP_INCLUDEDIR}/dev/irq
   source:
   - bsps/aarch64/include/dev/irq/arm-gic-arch.h
diff --git a/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml 
b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
index a579c094ba..7b6511a8cc 100644
--- a/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
+++ b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
@@ -19,6 +19,10 @@ install:
   - bsps/aarch64/raspberrypi/include/bsp/irq.h
   - bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
 links:
+- role: build-dependency
+  uid: objclock
+- role: build-dependency
+  uid: objsystemtimer
 - role: build-dependency
   uid: ../grp
 - role: build-dependency
@@ -50,10 +54,8 @@ source:
 - bsps/aarch64/raspberrypi/start/bspstart.c
 - bsps/aarch64/raspberrypi/start/bspstarthooks.c
 -