Re: [PATCH RTEMS] mvme3100: Add BSP fatal extension

2023-08-01 Thread Vijay Kumar Banerjee
On Tue, Aug 1, 2023, 15:30 Joel Sherrill  wrote:

>
>
> On Tue, Aug 1, 2023 at 2:52 PM Vijay Kumar Banerjee 
> wrote:
>
>>
>>
>> On Tue, Aug 1, 2023, 12:20 Joel Sherrill  wrote:
>>
>>>
>>>
>>> On Tue, Aug 1, 2023, 11:41 AM Vijay Kumar Banerjee 
>>> wrote:
>>>
 ---
  bsps/powerpc/mvme3100/start/bspclean.c| 25 +++
  .../bsps/powerpc/mvme3100/bspmvme3100.yml |  1 +
  2 files changed, 26 insertions(+)
  create mode 100644 bsps/powerpc/mvme3100/start/bspclean.c

 diff --git a/bsps/powerpc/mvme3100/start/bspclean.c
 b/bsps/powerpc/mvme3100/start/bspclean.c
 new file mode 100644
 index 00..251d47a46d
 --- /dev/null
 +++ b/bsps/powerpc/mvme3100/start/bspclean.c
 @@ -0,0 +1,25 @@

>>>
>>> There is no copyright, licence, or Doxygen file header block.
>>>
>>> +#include 
 +#include 
 +#include 
 +
 +void bsp_fatal_extension(
 +  rtems_fatal_source source,
 +  bool always_set_to_false,
 +  rtems_fatal_code error
 +)
 +{
 +  printk("fatal source: %s\n", rtems_fatal_source_text(source));
 +
 +  if (source == RTEMS_FATAL_SOURCE_EXCEPTION) {
 +rtems_exception_frame_print((const rtems_exception_frame *) error);
 +  }
 +
 +  /* We can't go back to MotLoad since we blew it's memory area
 +   * and vectors. Just pull the reset line...
 +   */
 +  printk(
 +"bsp_fatal_extension(): RTEMS terminated -- no way back to MotLoad
 "
 +  "so I reset the card\n"
 +  );
 +  bsp_reset();
 +}

>>>
>>> What does Motorola PowerPC or the other similar bsps do?
>>>
>>> Can the behaviour be unified and shared?
>>>
>>
>> Thanks for the suggestion!
>> Motorola powerpc uses bspfatal-default.c from bsps/shared. It was not
>> working with mvme3100 because it added the bspreset-empty in the build.
>> Just removing the empty reset makes it work. This patch is no longer
>> needed. I'll send a smaller patch with this much neater solution using the
>> shared defaults.
>>
>
> Wow! Good to hear. Probably should check beatnik and the other mvme* ppc
> BSPs  as well,
>

At least two bsps (mvme5500 and beatnik) has this issue. I will test on the
hardware and post patches for other boards too.

>
>>
>> Thanks!
>>
>
> No problem.
>
> --joel
>
>>
>>
>>> diff --git a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
 b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
 index 1667c1617a..dc04e4dd36 100644
 --- a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
 +++ b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
 @@ -64,6 +64,7 @@ source:
  - bsps/powerpc/mvme3100/pci/detect_host_bridge.c
  - bsps/powerpc/mvme3100/rtc/todcfg.c
  - bsps/powerpc/mvme3100/start/bspstart.c
 +- bsps/powerpc/mvme3100/start/bspclean.c
  - bsps/powerpc/mvme3100/start/misc.c
  - bsps/powerpc/shared/btimer/btimer-ppc-dec.c
  - bsps/powerpc/shared/cache/cache.c
 --
 2.39.3

 ___
 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: [PATCH RTEMS] mvme3100: Add BSP fatal extension

2023-08-01 Thread Joel Sherrill
On Tue, Aug 1, 2023 at 2:52 PM Vijay Kumar Banerjee  wrote:

>
>
> On Tue, Aug 1, 2023, 12:20 Joel Sherrill  wrote:
>
>>
>>
>> On Tue, Aug 1, 2023, 11:41 AM Vijay Kumar Banerjee 
>> wrote:
>>
>>> ---
>>>  bsps/powerpc/mvme3100/start/bspclean.c| 25 +++
>>>  .../bsps/powerpc/mvme3100/bspmvme3100.yml |  1 +
>>>  2 files changed, 26 insertions(+)
>>>  create mode 100644 bsps/powerpc/mvme3100/start/bspclean.c
>>>
>>> diff --git a/bsps/powerpc/mvme3100/start/bspclean.c
>>> b/bsps/powerpc/mvme3100/start/bspclean.c
>>> new file mode 100644
>>> index 00..251d47a46d
>>> --- /dev/null
>>> +++ b/bsps/powerpc/mvme3100/start/bspclean.c
>>> @@ -0,0 +1,25 @@
>>>
>>
>> There is no copyright, licence, or Doxygen file header block.
>>
>> +#include 
>>> +#include 
>>> +#include 
>>> +
>>> +void bsp_fatal_extension(
>>> +  rtems_fatal_source source,
>>> +  bool always_set_to_false,
>>> +  rtems_fatal_code error
>>> +)
>>> +{
>>> +  printk("fatal source: %s\n", rtems_fatal_source_text(source));
>>> +
>>> +  if (source == RTEMS_FATAL_SOURCE_EXCEPTION) {
>>> +rtems_exception_frame_print((const rtems_exception_frame *) error);
>>> +  }
>>> +
>>> +  /* We can't go back to MotLoad since we blew it's memory area
>>> +   * and vectors. Just pull the reset line...
>>> +   */
>>> +  printk(
>>> +"bsp_fatal_extension(): RTEMS terminated -- no way back to MotLoad "
>>> +  "so I reset the card\n"
>>> +  );
>>> +  bsp_reset();
>>> +}
>>>
>>
>> What does Motorola PowerPC or the other similar bsps do?
>>
>> Can the behaviour be unified and shared?
>>
>
> Thanks for the suggestion!
> Motorola powerpc uses bspfatal-default.c from bsps/shared. It was not
> working with mvme3100 because it added the bspreset-empty in the build.
> Just removing the empty reset makes it work. This patch is no longer
> needed. I'll send a smaller patch with this much neater solution using the
> shared defaults.
>

Wow! Good to hear. Probably should check beatnik and the other mvme* ppc
BSPs  as well,

>
>
> Thanks!
>

No problem.

--joel

>
>
>> diff --git a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>>> b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>>> index 1667c1617a..dc04e4dd36 100644
>>> --- a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>>> +++ b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>>> @@ -64,6 +64,7 @@ source:
>>>  - bsps/powerpc/mvme3100/pci/detect_host_bridge.c
>>>  - bsps/powerpc/mvme3100/rtc/todcfg.c
>>>  - bsps/powerpc/mvme3100/start/bspstart.c
>>> +- bsps/powerpc/mvme3100/start/bspclean.c
>>>  - bsps/powerpc/mvme3100/start/misc.c
>>>  - bsps/powerpc/shared/btimer/btimer-ppc-dec.c
>>>  - bsps/powerpc/shared/cache/cache.c
>>> --
>>> 2.39.3
>>>
>>> ___
>>> 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: [PATCH RTEMS] mvme3100: Add BSP fatal extension

2023-08-01 Thread Vijay Kumar Banerjee
On Tue, Aug 1, 2023, 12:20 Joel Sherrill  wrote:

>
>
> On Tue, Aug 1, 2023, 11:41 AM Vijay Kumar Banerjee 
> wrote:
>
>> ---
>>  bsps/powerpc/mvme3100/start/bspclean.c| 25 +++
>>  .../bsps/powerpc/mvme3100/bspmvme3100.yml |  1 +
>>  2 files changed, 26 insertions(+)
>>  create mode 100644 bsps/powerpc/mvme3100/start/bspclean.c
>>
>> diff --git a/bsps/powerpc/mvme3100/start/bspclean.c
>> b/bsps/powerpc/mvme3100/start/bspclean.c
>> new file mode 100644
>> index 00..251d47a46d
>> --- /dev/null
>> +++ b/bsps/powerpc/mvme3100/start/bspclean.c
>> @@ -0,0 +1,25 @@
>>
>
> There is no copyright, licence, or Doxygen file header block.
>
> +#include 
>> +#include 
>> +#include 
>> +
>> +void bsp_fatal_extension(
>> +  rtems_fatal_source source,
>> +  bool always_set_to_false,
>> +  rtems_fatal_code error
>> +)
>> +{
>> +  printk("fatal source: %s\n", rtems_fatal_source_text(source));
>> +
>> +  if (source == RTEMS_FATAL_SOURCE_EXCEPTION) {
>> +rtems_exception_frame_print((const rtems_exception_frame *) error);
>> +  }
>> +
>> +  /* We can't go back to MotLoad since we blew it's memory area
>> +   * and vectors. Just pull the reset line...
>> +   */
>> +  printk(
>> +"bsp_fatal_extension(): RTEMS terminated -- no way back to MotLoad "
>> +  "so I reset the card\n"
>> +  );
>> +  bsp_reset();
>> +}
>>
>
> What does Motorola PowerPC or the other similar bsps do?
>
> Can the behaviour be unified and shared?
>

Thanks for the suggestion!
Motorola powerpc uses bspfatal-default.c from bsps/shared. It was not
working with mvme3100 because it added the bspreset-empty in the build.
Just removing the empty reset makes it work. This patch is no longer
needed. I'll send a smaller patch with this much neater solution using the
shared defaults.


Thanks!


> diff --git a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>> b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>> index 1667c1617a..dc04e4dd36 100644
>> --- a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>> +++ b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
>> @@ -64,6 +64,7 @@ source:
>>  - bsps/powerpc/mvme3100/pci/detect_host_bridge.c
>>  - bsps/powerpc/mvme3100/rtc/todcfg.c
>>  - bsps/powerpc/mvme3100/start/bspstart.c
>> +- bsps/powerpc/mvme3100/start/bspclean.c
>>  - bsps/powerpc/mvme3100/start/misc.c
>>  - bsps/powerpc/shared/btimer/btimer-ppc-dec.c
>>  - bsps/powerpc/shared/cache/cache.c
>> --
>> 2.39.3
>>
>> ___
>> 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: [PATCH RTEMS] mvme3100: Add BSP fatal extension

2023-08-01 Thread Joel Sherrill
On Tue, Aug 1, 2023, 11:41 AM Vijay Kumar Banerjee  wrote:

> ---
>  bsps/powerpc/mvme3100/start/bspclean.c| 25 +++
>  .../bsps/powerpc/mvme3100/bspmvme3100.yml |  1 +
>  2 files changed, 26 insertions(+)
>  create mode 100644 bsps/powerpc/mvme3100/start/bspclean.c
>
> diff --git a/bsps/powerpc/mvme3100/start/bspclean.c
> b/bsps/powerpc/mvme3100/start/bspclean.c
> new file mode 100644
> index 00..251d47a46d
> --- /dev/null
> +++ b/bsps/powerpc/mvme3100/start/bspclean.c
> @@ -0,0 +1,25 @@
>

There is no copyright, licence, or Doxygen file header block.

+#include 
> +#include 
> +#include 
> +
> +void bsp_fatal_extension(
> +  rtems_fatal_source source,
> +  bool always_set_to_false,
> +  rtems_fatal_code error
> +)
> +{
> +  printk("fatal source: %s\n", rtems_fatal_source_text(source));
> +
> +  if (source == RTEMS_FATAL_SOURCE_EXCEPTION) {
> +rtems_exception_frame_print((const rtems_exception_frame *) error);
> +  }
> +
> +  /* We can't go back to MotLoad since we blew it's memory area
> +   * and vectors. Just pull the reset line...
> +   */
> +  printk(
> +"bsp_fatal_extension(): RTEMS terminated -- no way back to MotLoad "
> +  "so I reset the card\n"
> +  );
> +  bsp_reset();
> +}
>

What does Motorola PowerPC or the other similar bsps do?

Can the behaviour be unified and shared?

diff --git a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
> b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
> index 1667c1617a..dc04e4dd36 100644
> --- a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
> +++ b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
> @@ -64,6 +64,7 @@ source:
>  - bsps/powerpc/mvme3100/pci/detect_host_bridge.c
>  - bsps/powerpc/mvme3100/rtc/todcfg.c
>  - bsps/powerpc/mvme3100/start/bspstart.c
> +- bsps/powerpc/mvme3100/start/bspclean.c
>  - bsps/powerpc/mvme3100/start/misc.c
>  - bsps/powerpc/shared/btimer/btimer-ppc-dec.c
>  - bsps/powerpc/shared/cache/cache.c
> --
> 2.39.3
>
> ___
> 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

[PATCH RTEMS] mvme3100: Add BSP fatal extension

2023-08-01 Thread Vijay Kumar Banerjee
---
 bsps/powerpc/mvme3100/start/bspclean.c| 25 +++
 .../bsps/powerpc/mvme3100/bspmvme3100.yml |  1 +
 2 files changed, 26 insertions(+)
 create mode 100644 bsps/powerpc/mvme3100/start/bspclean.c

diff --git a/bsps/powerpc/mvme3100/start/bspclean.c 
b/bsps/powerpc/mvme3100/start/bspclean.c
new file mode 100644
index 00..251d47a46d
--- /dev/null
+++ b/bsps/powerpc/mvme3100/start/bspclean.c
@@ -0,0 +1,25 @@
+#include 
+#include 
+#include 
+
+void bsp_fatal_extension(
+  rtems_fatal_source source,
+  bool always_set_to_false,
+  rtems_fatal_code error
+)
+{
+  printk("fatal source: %s\n", rtems_fatal_source_text(source));
+
+  if (source == RTEMS_FATAL_SOURCE_EXCEPTION) {
+rtems_exception_frame_print((const rtems_exception_frame *) error);
+  }
+
+  /* We can't go back to MotLoad since we blew it's memory area
+   * and vectors. Just pull the reset line...
+   */
+  printk(
+"bsp_fatal_extension(): RTEMS terminated -- no way back to MotLoad "
+  "so I reset the card\n"
+  );
+  bsp_reset();
+}
diff --git a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml 
b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
index 1667c1617a..dc04e4dd36 100644
--- a/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
+++ b/spec/build/bsps/powerpc/mvme3100/bspmvme3100.yml
@@ -64,6 +64,7 @@ source:
 - bsps/powerpc/mvme3100/pci/detect_host_bridge.c
 - bsps/powerpc/mvme3100/rtc/todcfg.c
 - bsps/powerpc/mvme3100/start/bspstart.c
+- bsps/powerpc/mvme3100/start/bspclean.c
 - bsps/powerpc/mvme3100/start/misc.c
 - bsps/powerpc/shared/btimer/btimer-ppc-dec.c
 - bsps/powerpc/shared/cache/cache.c
-- 
2.39.3

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