Code refactor for ARM bsp MMU initialization

2015-07-08 Thread Rohini Kulkarni
Hi,

It has been suggested that the function bsp_memory_management_
initialize() in mminit.c be modified so that it is shareable between more
arm variants ( will be useful only for those that support cp15 model  ).
I think currently only the raspberry pi uses it, and was not suitable for
Pi 2 either.
I have made some changes. I request you to review it for further changes as
needed.

Thanks!
---
c/src/lib/libbsp/arm/
raspberrypi/include/bsp.h |3 ++
 .../libbsp/arm/raspberrypi/startup/bspstarthooks.c |8 ++---
 .../libbsp/arm/raspberrypi/startup/bspstartmmu.c   |   30 +
 c/src/lib/libbsp/arm/shared/mminit.c   |   35

 c/src/lib/libbsp/shared/include/mm.h   |4 +++
 5 files changed, 48 insertions(+), 32 deletions(-)
 create mode 100644 c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c

diff --git a/c/src/lib/libbsp/arm/raspberrypi/include/bsp.h
b/c/src/lib/libbsp/arm/raspberrypi/include/bsp.h
index c05a410..d9e86d8 100644
--- a/c/src/lib/libbsp/arm/raspberrypi/include/bsp.h
+++ b/c/src/lib/libbsp/arm/raspberrypi/include/bsp.h
@@ -47,3 +47,6 @@ extern C {
  * @brief Raspberry Pi support package
  *
  */
+
+void raspberrypi_setup_mmu_and_cache(void);
+
diff --git a/c/src/lib/libbsp/arm/raspberrypi/startup/bspstarthooks.c
b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstarthooks.c
index 047c8ad..107649f 100644
--- a/c/src/lib/libbsp/arm/raspberrypi/startup/bspstarthooks.c
+++ b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstarthooks.c
@@ -26,15 +26,15 @@
 #include bsp/start.h
 #include bsp/raspberrypi.h
 #include bsp/mm.h
+#include bsp.h

 void BSP_START_TEXT_SECTION bsp_start_hook_0(void)
-{
+{
 }

-
 void BSP_START_TEXT_SECTION bsp_start_hook_1(void)
 {
   bsp_start_copy_sections();
-  bsp_memory_management_initialize();
+  raspberrypi_setup_mmu_and_cache();
   bsp_start_clear_bss();
-}
+}
\ No newline at end of file
diff --git a/c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c
b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c
new file mode 100644
index 000..506346e
--- /dev/null
+++ b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c
@@ -0,0 +1,30 @@
+#define ARM_CP15_TEXT_SECTION BSP_START_TEXT_SECTION
+
+#include bsp/start.h
+#include bsp/arm-cp15-start.h
+#include bsp/linker-symbols.h
+#include libcpu/arm-cp15.h
+#include bsp/mm.h
+#include bsp.h
+
+uint32_t bsp_initial_mmu_ctrl_set;
+uint32_t bsp_initial_mmu_ctrl_clear;
+uint32_t domain_set;
+
+void raspberrypi_setup_mmu_and_cache(void)
+{
+#if (BSP_IS_RPI2 == 1)
+  /* Enable SMP in auxiliary control */
+  uint32_t actlr = arm_cp15_get_auxiliary_control();
+  actlr |= ARM_CORTEX_A9_ACTL_SMP;
+  arm_cp15_set_auxiliary_control(actlr);
+  bsp_initial_mmu_ctrl_clear = ARM_CP15_CTRL_A;
+  bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_Z;
+#else
+  bsp_initial_mmu_ctrl_clear = 0;
+  bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_S |
ARM_CP15_CTRL_XP;
+#endif
+  domain_set = ARM_MMU_DEFAULT_CLIENT_DOMAIN;
+
+  bsp_memory_management_initialize();
+}
\ No newline at end of file
diff --git a/c/src/lib/libbsp/arm/shared/mminit.c
b/c/src/lib/libbsp/arm/shared/mminit.c
index 96ca1ec..c9d42e4 100644
--- a/c/src/lib/libbsp/arm/shared/mminit.c
+++ b/c/src/lib/libbsp/arm/shared/mminit.c
@@ -11,42 +11,21 @@
 #include bsp/start.h
 #include bsp/arm-cp15-start.h
 #include bsp/linker-symbols.h
+#include libcpu/arm-cp15.h
 #include bsp/mm.h

-#if (BSP_IS_RPI2 == 1)
-BSP_START_TEXT_SECTION void bsp_memory_management_initialize(void)
-{
-  /* Enable SMP in auxiliary control */
-  uint32_t actlr = arm_cp15_get_auxiliary_control();
-  actlr |= ARM_CORTEX_A9_ACTL_SMP;
-  arm_cp15_set_auxiliary_control(actlr);

+BSP_START_TEXT_SECTION void bsp_memory_management_initialize()
+{
   uint32_t ctrl = arm_cp15_start_setup_mmu_and_cache(
-ARM_CP15_CTRL_A,
-ARM_CP15_CTRL_AFE| ARM_CP15_CTRL_Z
-  );
+bsp_initial_mmu_ctrl_clear,
+bsp_initial_mmu_ctrl_set  );

   arm_cp15_start_setup_translation_table_and_enable_mmu_and_cache(
 ctrl,
 (uint32_t *) bsp_translation_table_base,
-ARM_MMU_DEFAULT_CLIENT_DOMAIN,
-arm_cp15_start_mmu_config_table[0],
-arm_cp15_start_mmu_config_table_size
-  );
-}
-#else
-BSP_START_TEXT_SECTION void bsp_memory_management_initialize(void)
-{
-  uint32_t ctrl = arm_cp15_get_control();
-
-  ctrl |= ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_S | ARM_CP15_CTRL_XP;
-
-  arm_cp15_start_setup_translation_table_and_enable_mmu_and_cache(
-ctrl,
-(uint32_t *) bsp_translation_table_base,
-ARM_MMU_DEFAULT_CLIENT_DOMAIN,
+domain_set,
 arm_cp15_start_mmu_config_table[0],
 arm_cp15_start_mmu_config_table_size
   );
-}
-#endif
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/c/src/lib/libbsp/shared/include/mm.h
b/c/src/lib/libbsp/shared/include/mm.h
index 2152f68..299b6c5 100644
--- a/c/src/lib/libbsp/shared/include/mm.h
+++ b/c/src/lib/libbsp/shared/include/mm.h
@@ -33,6 +33,10 @@ extern 

Re: SMP support for Raspberry Pi 2

2015-07-08 Thread Sebastian Huber



On 08/07/15 14:54, Rohini Kulkarni wrote:
This piece of code gets the configured number of CPUs. I suppose this 
number is not specified and will have to be specified by me somewhere 
in the configurations. But I am unable to find out where.


For examples, please have a look at testsuite/smptests.

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

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


Re: Code refactor for ARM bsp MMU initialization

2015-07-08 Thread Sebastian Huber



On 08/07/15 15:10, Rohini Kulkarni wrote:



On Wed, Jul 8, 2015 at 6:29 PM, Sebastian Huber
sebastian.hu...@embedded-brains.de
mailto:sebastian.hu...@embedded-brains.de wrote:

Hello Rohini,

please use git format-patch to generate the patches.

Actually,that is what I have used. I pasted the patch here from the
resulting file.


Better use git send-email, or send the file as is since this will 
preserve the commit message and author.





On 08/07/15 14:44, Rohini Kulkarni wrote:

+++ b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c
@@ -0,0 +1,30 @@
+#define ARM_CP15_TEXT_SECTION BSP_START_TEXT_SECTION
+
+#include bsp/start.h
+#include bsp/arm-cp15-start.h
+#include bsp/linker-symbols.h
+#include libcpu/arm-cp15.h
+#include bsp/mm.h
+#include bsp.h
+
+uint32_t bsp_initial_mmu_ctrl_set;
+uint32_t bsp_initial_mmu_ctrl_clear;
+uint32_t domain_set;
+
+void raspberrypi_setup_mmu_and_cache(void)
+{
+#if (BSP_IS_RPI2 == 1)
+  /* Enable SMP in auxiliary control */
+  uint32_t actlr = arm_cp15_get_auxiliary_control();
+  actlr |= ARM_CORTEX_A9_ACTL_SMP;
+  arm_cp15_set_auxiliary_control(actlr);
+  bsp_initial_mmu_ctrl_clear = ARM_CP15_CTRL_A;
+  bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_Z;
+#else
+  bsp_initial_mmu_ctrl_clear = 0;
+  bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE |
ARM_CP15_CTRL_S | ARM_CP15_CTRL_XP;
+#endif
+  domain_set = ARM_MMU_DEFAULT_CLIENT_DOMAIN;
+
+  bsp_memory_management_initialize();
+}


Is there a reason, why you use global variables instead of
function parameters?

I have set them as extern in mm.h and are directly used in mminit.c
instead of being passed to bsp_memory_management_initialize. They will
be set by the bsp the source is being compiled for.


You should avoid global variables and functions in general. I don't see 
a necessity for them here.


--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

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

Re: SMP support for Raspberry Pi 2

2015-07-08 Thread Joel Sherrill



On 7/8/2015 9:51 AM, Hesham ALMatary wrote:

Hi Rohini,

On Wed, Jul 8, 2015 at 1:54 PM, Rohini Kulkarni krohini1...@gmail.com wrote:

Hi,

I found this piece of code in confdefs.h

#if defined(RTEMS_SMP)

   /*
*  If configured for SMP, then we need to know the maximum CPU cores.
*/
   #if !defined(CONFIGURE_SMP_APPLICATION)
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #define CONFIGURE_SMP_MAXIMUM_PROCESSORS 1
 #endif
   #else
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #error CONFIGURE_SMP_MAXIMUM_PROCESSORS not specified for SMP
Application
 #endif
   #endif
#endif

This piece of code gets the configured number of CPUs. I suppose this number
is not specified and will have to be specified by me somewhere in the
configurations. But I am unable to find out where.


Every BSP that supports SMP should define the number of
cores/processors in its linkcmds file. For example have a look at
Realview linkcmds file here [1]


The pc386 treats the configured value as the maximum to be supported.
It does not hard code the number on the hardware but probes at run-time.
See libbsp/i386/shared/smp.

The key is that the BSP can set a hard limit or determine the available
set at run-time.

There are two factors:

+ number RTEMS is configured for
+ number present in hardware
  - BSP can probe
  - can be hard-coded

An RTEMS SMP application configured for 2 CPUs on a quad-core system
will simply ignore the other two.


[1] 
https://github.com/RTEMS/rtems/blob/master/c/src/lib/libbsp/arm/realview-pbx-a9/startup/linkcmds.realview_pbx_a9_qemu_smp#L1

Thanks!


On Sat, Jul 4, 2015 at 4:07 PM, Rohini Kulkarni krohini1...@gmail.com
wrote:




On Fri, Jul 3, 2015 at 10:43 PM, Joel Sherrill joel.sherr...@oarcorp.com
wrote:




On July 3, 2015 11:53:07 AM CDT, Rohini Kulkarni krohini1...@gmail.com
wrote:

Any help that I can with this?

On 1 Jul 2015 16:59, Rohini Kulkarni krohini1...@gmail.com wrote:

Hi all,

I wish to know where the maximum number of processors for a variant are
configured. I took a look at some configure scripts. I could see the
processor count defined for xilinx-zynq in its configuration file as
ZYNQ_CPUS=2.


   This looks to be BSP specific and could originate in configure.ac or a
.h file.
I found this under ~/libbsp/arm/xilinx-zynq/configure
# Check whether --enable-smp was given.
if test $rtems_cv_HAS_SMP = yes; then :
   ZYNQ_CPUS=2
fi



It is likely that each BSP has an underlying hardware limit.


Yes





rtems_configuration_get_maximum_processors() called in gets this
configured number. But I don't know from where.


This is set initially based on the confdefs.h parameter
CONFIGURE_SMP_MAXIMUM_PROCESSORS or something close to that (on phone).


Ya, I found this piece of code in confdefs.h
#if defined(RTEMS_SMP)
   /*
*  If configured for SMP, then we need to know the maximum CPU cores.
*/
   #if !defined(CONFIGURE_SMP_APPLICATION)
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #define CONFIGURE_SMP_MAXIMUM_PROCESSORS 1
 #endif
   #else
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #error CONFIGURE_SMP_MAXIMUM_PROCESSORS not specified for SMP
Application
 #endif
   #endif
#endif

This piece of code gets the configured number of CPUs. I suppose this
number is not specified and will have to be specified by me somewhere in the
configurations. But I am unable to find out where.


Ultimately the maximum CPUs for an application is the lower of those
available or RTEMS is configured for.


Yes.




Also where is RTEMS_SMP defined for a bsp?


A side-effect of building with --enable-smp.


Oh,alright.





Thanks.


--

Rohini Kulkarni


--joel





--
Rohini Kulkarni





--
Rohini Kulkarni

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






--
Joel Sherrill, Ph.D. Director of Research  Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: SMP support for Raspberry Pi 2

2015-07-08 Thread Rohini Kulkarni
On Wed, Jul 8, 2015 at 6:25 PM, Sebastian Huber 
sebastian.hu...@embedded-brains.de wrote:



 On 08/07/15 14:54, Rohini Kulkarni wrote:

 This piece of code gets the configured number of CPUs. I suppose this
 number is not specified and will have to be specified by me somewhere in
 the configurations. But I am unable to find out where.


 For examples, please have a look at testsuite/smptests.

Umm,I don't see how the smptests will help figure out where to configure
the number of processors. Don't they just use the number already configured
for the variant.


 --
 Sebastian Huber, embedded brains GmbH

 Address : Dornierstr. 4, D-82178 Puchheim, Germany
 Phone   : +49 89 189 47 41-16
 Fax : +49 89 189 47 41-09
 E-Mail  : sebastian.hu...@embedded-brains.de
 PGP : Public key available on request.

 Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

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




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

Re: SMP support for Raspberry Pi 2

2015-07-08 Thread Hesham ALMatary
Hi Rohini,

On Wed, Jul 8, 2015 at 1:54 PM, Rohini Kulkarni krohini1...@gmail.com wrote:
 Hi,

 I found this piece of code in confdefs.h

 #if defined(RTEMS_SMP)

   /*
*  If configured for SMP, then we need to know the maximum CPU cores.
*/
   #if !defined(CONFIGURE_SMP_APPLICATION)
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #define CONFIGURE_SMP_MAXIMUM_PROCESSORS 1
 #endif
   #else
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #error CONFIGURE_SMP_MAXIMUM_PROCESSORS not specified for SMP
 Application
 #endif
   #endif
 #endif

 This piece of code gets the configured number of CPUs. I suppose this number
 is not specified and will have to be specified by me somewhere in the
 configurations. But I am unable to find out where.

Every BSP that supports SMP should define the number of
cores/processors in its linkcmds file. For example have a look at
Realview linkcmds file here [1]

[1] 
https://github.com/RTEMS/rtems/blob/master/c/src/lib/libbsp/arm/realview-pbx-a9/startup/linkcmds.realview_pbx_a9_qemu_smp#L1
 Thanks!


 On Sat, Jul 4, 2015 at 4:07 PM, Rohini Kulkarni krohini1...@gmail.com
 wrote:



 On Fri, Jul 3, 2015 at 10:43 PM, Joel Sherrill joel.sherr...@oarcorp.com
 wrote:



 On July 3, 2015 11:53:07 AM CDT, Rohini Kulkarni krohini1...@gmail.com
 wrote:
 Any help that I can with this?
 
 On 1 Jul 2015 16:59, Rohini Kulkarni krohini1...@gmail.com wrote:
 
 Hi all,
 
 I wish to know where the maximum number of processors for a variant are
 configured. I took a look at some configure scripts. I could see the
 processor count defined for xilinx-zynq in its configuration file as
 ZYNQ_CPUS=2.

   This looks to be BSP specific and could originate in configure.ac or a
 .h file.
 I found this under ~/libbsp/arm/xilinx-zynq/configure
 # Check whether --enable-smp was given.
 if test $rtems_cv_HAS_SMP = yes; then :
   ZYNQ_CPUS=2
 fi


 It is likely that each BSP has an underlying hardware limit.

 Yes


 
 rtems_configuration_get_maximum_processors() called in gets this
 configured number. But I don't know from where.

 This is set initially based on the confdefs.h parameter
 CONFIGURE_SMP_MAXIMUM_PROCESSORS or something close to that (on phone).

 Ya, I found this piece of code in confdefs.h
 #if defined(RTEMS_SMP)
   /*
*  If configured for SMP, then we need to know the maximum CPU cores.
*/
   #if !defined(CONFIGURE_SMP_APPLICATION)
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #define CONFIGURE_SMP_MAXIMUM_PROCESSORS 1
 #endif
   #else
 #if !defined(CONFIGURE_SMP_MAXIMUM_PROCESSORS)
   #error CONFIGURE_SMP_MAXIMUM_PROCESSORS not specified for SMP
 Application
 #endif
   #endif
 #endif

 This piece of code gets the configured number of CPUs. I suppose this
 number is not specified and will have to be specified by me somewhere in the
 configurations. But I am unable to find out where.

 Ultimately the maximum CPUs for an application is the lower of those
 available or RTEMS is configured for.

 Yes.


 Also where is RTEMS_SMP defined for a bsp?

 A side-effect of building with --enable-smp.

 Oh,alright.



 Thanks.
 
 
 --
 
 Rohini Kulkarni

 --joel




 --
 Rohini Kulkarni




 --
 Rohini Kulkarni

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



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


Re: GSoC 2015 RPi USB Support

2015-07-08 Thread Yurii Shevtsov
No I haven't. I tried to write driver stub, but I got same issueson
RPi. What are the qemu args? Can I run qemu in terminal?
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


RPI graphic text console test invitation

2015-07-08 Thread QIAO YANG
Hi all mentors and rpi bap student developers ,

First of all, I’ve written a blog to explicite how I to use the mailbox 
interfaces, and I would like to invite other students to try it out. If anyone 
need the mailbox related functions that I didn’t implement, you can ask me for 
them. 

https://yangqiao.wordpress.com/2015/07/05/rtems-board-support-packages-raspberry-pi-mailbox-and-framebuffer-implementation/
 

As Pavel Pisa reported to me that he didn’t managed to get the video console to 
display, I would like to invite you to try it out and report the status to me. 
The setup of memory table might need to update, I’ve explained in the last 
paragraph of the blog. It’s just a quick test and the feedback will help me a 
lot. Thanks everyone in advance :).

Here is a blog about how to setup the graphic console, where is the code source 
and which version to test:

https://yangqiao.wordpress.com/2015/07/05/rtems-bsp-raspberry-pi-graphic-text-console-with-frame-buffer/


I've got the graphic output work with my rpi B and samsung 27 display. But 
I've found something wired that in serial console mode, my serial console 
stoped early:


The word Corporation isn't event displayed completely.

While in graphic console mode, the output stopped at :


It bothers me and I'm trying to figure out the bug. But for the moment I've got 
no idea and how to debug it. 
But anyway the display should work and display something.

Since I can’t test it with different display by my self. I would be glad if you 
can join me to test the driver and send me feedback, so that I can improve it .

Thank you in advance!

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

Re: GSoC 2015 RPi USB Support

2015-07-08 Thread Yurii Shevtsov
And what to debug, if problem is on linkage stage? Or I misunderstood something?

2015-07-08 22:32 GMT+03:00 Yurii Shevtsov unge...@gmail.com:
 No I haven't. I tried to write driver stub, but I got same issueson
 RPi. What are the qemu args? Can I run qemu in terminal?
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: GSoC 2015 RPi USB Support

2015-07-08 Thread Sebastian Huber

- Yurii Shevtsov unge...@gmail.com schrieb:
 No I haven't. I tried to write driver stub, but I got same issueson
 RPi. What are the qemu args? Can I run qemu in terminal?

You have to figure out how the linker set mechanism works in general.

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de
PGP : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Status of QorIQ

2015-07-08 Thread Joel Sherrill

Hi

I noticed the modification to qoriq_t2080rdb.cfg and wondered
how things were going. How many cores have you all seen running?
Any scaling issues?

The t4240 certainly has a lot of cores. :)

--
Joel Sherrill, Ph.D. Director of Research  Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: GSoC 2015 RPi USB Support

2015-07-08 Thread Yurii Shevtsov
ping

2015-07-01 17:20 GMT+03:00 Yurii Shevtsov unge...@gmail.com:
 Any news?

 2015-06-29 19:50 GMT+03:00 Yurii Shevtsov unge...@gmail.com:
 So, it is empty.

  .rtemsroset.bsd.nexus.begin
 0x001104bc0x0 ./libbsd.a(rtems-bsd-nexus.c.16.o)
 0x001104bc_bsd__start_set_nexus
  .rtemsroset.bsd.nexus.end
 0x001104bc0x0 ./libbsd.a(rtems-bsd-nexus.c.16.o)
 0x001104bc_bsd__stop_set_nexus

 What will be next step? My repo:
 https://github.com/gtament/rtems-libbsd/commit/cf3f0fcafef3bcb9b0ec80d8c57e1304689ebace

 2015-06-29 9:43 GMT+03:00 Sebastian Huber 
 sebastian.hu...@embedded-brains.de:
 You can debug this issue on Qemu. The Nexus childes are registered in a
 linker set, so I would consult the linker map file.  It should look like
 this:

  .rtemsroset.bsd.nexus.begin
 0x0052ef7c0x0 libbsd.a(rtems-bsd-nexus.o)
 0x0052ef7c _bsd__start_set_nexus
  .rtemsroset.bsd.nexus.content
 0x0052ef7c   0x28
 testsuite/telnetd01/test_main.o
  .rtemsroset.bsd.nexus.end
 0x0052efa40x0 libbsd.a(rtems-bsd-nexus.o)
 0x0052efa4 _bsd__stop_set_nexus

 The  .rtemsroset.bsd.nexus.content section must be non-empty.


 On 27/06/15 16:39, Yurii Shevtsov wrote:

 Any ideas? Maybe I did some typo? Maybe you can compile and try it in
 qemu?

 2015-06-26 17:05 GMT+03:00 Yurii Shevtsov unge...@gmail.com:

 2015-06-25 16:00 GMT+03:00 Sebastian Huber
 sebastian.hu...@embedded-brains.de:

 I would set a break point to nexus_probe(). In this loop

  SET_FOREACH(nd, nexus) {
  device_add_child(dev, nd-name, nd-unit);
  }

 your device must get added. I would also set break points to the probe
 and
 attach functions of your device.

 Added printfs()

  printf(before setforeach\n);

  SET_FOREACH(nd, nexus) {
  printf(setforeach: %s\n, nd-name);
  device_add_child(dev, nd-name, nd-unit);
  }

 Got only 'before setforeach' in console. So it doesn't step into loop.
 Any ideas? Also I already had printfs in my driver's probe and attach,
 also got no output.

 On 25/06/15 14:50, Yurii Shevtsov wrote:

 This is ping message, with small update: the problem is not on the
 linking stage, driver is linked to testsuite (checked with objdump)

 2015-06-21 17:57 GMT+03:00 Yurii Shevtsov unge...@gmail.com:

 Hello)
 Now I have apps from libbsd testsuite running. But DWC OTG driver
 doesn't
 loads.
 I added this lines to init01/test_main.c:

 +SYSINIT_NEED_USB_CORE;
 +SYSINIT_DRIVER_REFERENCE(bcm283x_dwcotg, nexus);

 (I know it's bad hardcode)

 If I run it. I get only this:
 nexus0: RTEMS Nexus device
 devctl: +nexus0 at   on root0
 devctl: !system=IFNET subsystem=lo0 type=ATTACH

 Of course, I modified rtemsbsd/include/machine/rtems-bsd-sysinit.h and
 rtemsbsd/include/bsp/nexus-devices.h (took vlues from working DTS) and
 did other nexus-related changes to drivers. You can find changes in my
 repo https://github.com/gtament/rtems-libbsd/
 So I need some kind of code review, please.
 P.S. All testsuites (netshell01, usb01) with shell hangs without any
 output.

 Thanks in advance!

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


 --
 Sebastian Huber, embedded brains GmbH

 Address : Dornierstr. 4, D-82178 Puchheim, Germany
 Phone   : +49 89 189 47 41-16
 Fax : +49 89 189 47 41-09
 E-Mail  : sebastian.hu...@embedded-brains.de
 PGP : Public key available on request.

 Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.


 --
 Sebastian Huber, embedded brains GmbH

 Address : Dornierstr. 4, D-82178 Puchheim, Germany
 Phone   : +49 89 189 47 41-16
 Fax : +49 89 189 47 41-09
 E-Mail  : sebastian.hu...@embedded-brains.de
 PGP : Public key available on request.

 Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

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