Date   

Re: [Zephyr-devel] CMake migration complete

Nashif, Anas
 

Conf is coming from SDK now (on Linux)

-----Original Message-----
From: zephyr-devel-bounces@lists.zephyrproject.org [mailto:zephyr-devel-bounces@lists.zephyrproject.org] On Behalf Of Kumar Gala
Sent: Thursday, November 9, 2017 9:09 AM
To: Cufi, Carles <Carles.Cufi@nordicsemi.no>
Cc: zephyr-users@lists.zephyrproject.org; zephyr-devel@lists.zephyrproject.org
Subject: Re: [Zephyr-devel] CMake migration complete

Curious why on OS-X we need conf build before hand instead of doing what we do on linux?

Or are we getting conf from the SDK on linux?

- k
_______________________________________________
Zephyr-devel mailing list
Zephyr-devel@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-devel


Re: [Zephyr-devel] CMake migration complete

Kumar Gala
 

Curious why on OS-X we need conf build before hand instead of doing what we do on linux?

Or are we getting conf from the SDK on linux?

- k


6loWPAN IPSP devices fail to communicate (bluetooth-next 4.14.0-rc7 )

Dogiel Pawel <Pawel.Dogiel@...>
 

Hello,

I have issue with IPSP devices over 6loWPAN on kernel 4.14.0-rc7.

The thing is that when I connect My Linux machine to one IPSP device using 'debugfs' interface the communication is OK. Pings are working.
But when second IPSP device is connected no pings are received from IPSP devices ('resource unreachable').

Regards,
Pawel


Re: [Zephyr-devel] CMake migration complete

Carles Cufi
 

Hi Erwin,

-----Original Message-----
From: zephyr-devel-bounces@lists.zephyrproject.org [mailto:zephyr-devel-
bounces@lists.zephyrproject.org] On Behalf Of Erwin Rol
Sent: 09 November 2017 10:56
To: Bøe, Sebastian <Sebastian.Boe@nordicsemi.no>; zephyr-
devel@lists.zephyrproject.org; zephyr-users@lists.zephyrproject.org
Subject: Re: [Zephyr-devel] CMake migration complete

Well that kind of sucks, cause the on Redhat 7.X the newest cmake is
3.6.x.

Will the needed cmake be part of the toolchain ?
No, but it's quite simple to install a recent version of CMake manually:

http://docs.zephyrproject.org/getting_started/installation_linux.html#installing-requirements-and-dependencies

$ mkdir $HOME/work_dir && cd $HOME/work_dir
$ wget https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh
$ yes | sh cmake-3.8.2-Linux-x86_64.sh | cat
$ echo "export PATH=$PWD/cmake-3.8.2-Linux-x86_64/bin:\$PATH" >> $HOME/.zephyrrc
$ bash
$ cmake --version

Regards,

Carles



- Erwin


On Thu, 2017-11-09 at 08:57 +0000, Bøe, Sebastian wrote:
PS: Correction; install cmake 3.8.2 or later.
From: Bøe, Sebastian
Sent: Thursday, 9 November 2017 9:42:27 AM
To: zephyr-devel@lists.zephyrproject.org; zephyr-users@lists.zephyrpr
oject.org
Subject: CMake migration complete

Hi all,

Zephyr has finally migrated to CMake.

This migration is an important step in a larger effort to make Zephyr
easy to use for application developers working on different platforms
with different development environment needs.

Simplified, this change retains Kconfig as-is, and replaces all
Makefiles with CMakeLists.txt. The DSL-like Make language that KBuild
offers is replaced by a set of CMake extentions. These extentions have
either provided simple one-to-one translations of KBuild features or
introduced new concepts that replace KBuild concepts.

This is a breaking change for existing test infrastructure and build
scripts that are maintained out-of-tree. But for FW itself, no porting
should be necessary.

For users that just want to continue their work with minimal
disruption the following should suffice:

Install CMake 3.8.2 exactly

Port any out-of-tree Makefiles to CMake.

Learn the absolute minimum about the new command line interface:

# To do a clean build;

$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -DBOARD=nrf52_pca10040 ..

# For incremental builds;

$ cd build
$ make

PR: https://github.com/zephyrproject-rtos/zephyr/pull/4692
_______________________________________________
Zephyr-devel mailing list
Zephyr-devel@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-devel
_______________________________________________
Zephyr-devel mailing list
Zephyr-devel@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-devel


Re: [Zephyr-devel] CMake migration complete

Erwin Rol <mailinglists@...>
 

Well that kind of sucks, cause the on Redhat 7.X the newest cmake is
3.6.x.

Will the needed cmake be part of the toolchain ?

- Erwin

On Thu, 2017-11-09 at 08:57 +0000, Bøe, Sebastian wrote:
PS: Correction; install cmake 3.8.2 or later.
From: Bøe, Sebastian
Sent: Thursday, 9 November 2017 9:42:27 AM
To: zephyr-devel@lists.zephyrproject.org; zephyr-users@lists.zephyrpr
oject.org
Subject: CMake migration complete
 
Hi all,

Zephyr has finally migrated to CMake.

This migration is an important step in a larger effort to make Zephyr
easy to use for application developers working on different platforms
with different development environment needs.

Simplified, this change retains Kconfig as-is, and replaces all
Makefiles with CMakeLists.txt. The DSL-like Make language that KBuild
offers is replaced by a set of CMake extentions. These extentions
have
either provided simple one-to-one translations of KBuild features or
introduced new concepts that replace KBuild concepts.

This is a breaking change for existing test infrastructure and build
scripts that are maintained out-of-tree. But for FW itself, no
porting
should be necessary.

For users that just want to continue their work with minimal
disruption the following should suffice:

Install CMake 3.8.2 exactly

Port any out-of-tree Makefiles to CMake.

Learn the absolute minimum about the new command line interface:

# To do a clean build;

$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -DBOARD=nrf52_pca10040 ..

# For incremental builds;

$ cd build
$ make

PR: https://github.com/zephyrproject-rtos/zephyr/pull/4692
_______________________________________________
Zephyr-devel mailing list
Zephyr-devel@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-devel


Re: CMake migration complete

Bøe, Sebastian <Sebastian.Boe@...>
 

PS: Correction; install cmake 3.8.2 or later.


From: Bøe, Sebastian
Sent: Thursday, 9 November 2017 9:42:27 AM
To: zephyr-devel@...; zephyr-users@...
Subject: CMake migration complete
 

Hi all,

Zephyr has finally migrated to CMake.

This migration is an important step in a larger effort to make Zephyr
easy to use for application developers working on different platforms
with different development environment needs.

Simplified, this change retains Kconfig as-is, and replaces all
Makefiles with CMakeLists.txt. The DSL-like Make language that KBuild
offers is replaced by a set of CMake extentions. These extentions have
either provided simple one-to-one translations of KBuild features or
introduced new concepts that replace KBuild concepts.

This is a breaking change for existing test infrastructure and build
scripts that are maintained out-of-tree. But for FW itself, no porting
should be necessary.

For users that just want to continue their work with minimal
disruption the following should suffice:

Install CMake 3.8.2 exactly

Port any out-of-tree Makefiles to CMake.

Learn the absolute minimum about the new command line interface:

# To do a clean build;

$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -DBOARD=nrf52_pca10040 ..

# For incremental builds;

$ cd build
$ make

PR: https://github.com/zephyrproject-rtos/zephyr/pull/4692


CMake migration complete

Bøe, Sebastian <Sebastian.Boe@...>
 

Hi all,

Zephyr has finally migrated to CMake.

This migration is an important step in a larger effort to make Zephyr
easy to use for application developers working on different platforms
with different development environment needs.

Simplified, this change retains Kconfig as-is, and replaces all
Makefiles with CMakeLists.txt. The DSL-like Make language that KBuild
offers is replaced by a set of CMake extentions. These extentions have
either provided simple one-to-one translations of KBuild features or
introduced new concepts that replace KBuild concepts.

This is a breaking change for existing test infrastructure and build
scripts that are maintained out-of-tree. But for FW itself, no porting
should be necessary.

For users that just want to continue their work with minimal
disruption the following should suffice:

Install CMake 3.8.2 exactly

Port any out-of-tree Makefiles to CMake.

Learn the absolute minimum about the new command line interface:

# To do a clean build;

$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -DBOARD=nrf52_pca10040 ..

# For incremental builds;

$ cd build
$ make

PR: https://github.com/zephyrproject-rtos/zephyr/pull/4692


Re: Linking OS shared libs

Marti Bolivar
 

Hi Inaki,

From your message, I can't tell if you've taken a look at the docs on this:


Were you able to look at the sample app described there to see if it can be adapted for your purpose?

Thanks,
Marti


On Sat, Nov 4, 2017 at 11:48 AM, Inaki Malerba <ina@...> wrote:

Hi!

I've been strugling with this for a while and I can't make it work.

I need to link my project to a shared library (libcbor[1]), which is located on /usr/local/include.

Reading the project's Makefiles, i found the variable STDINCLUDE, so i fixed the `fatal error: cbor.h: No such file or directory` adding the following line to the app's Makefile

`export STDINCLUDE = -I/usr/local/include`

But the next problem I got is how to tell the linker to use that lib.

```

src/built-in.o: In function `main':
/somepath/src/main.c:8: undefined reference to `cbor_new_definite_map'
/somepath/src/main.c:11: undefined reference to `cbor_build_string'
/somepath/src/main.c:11: undefined reference to `cbor_move'
/somepath/src/main.c:12: undefined reference to `cbor_build_bool'
/somepath/src/main.c:12: undefined reference to `cbor_move'
/somepath/src/main.c:10: undefined reference to `cbor_map_add'
/somepath/src/main.c:15: undefined reference to `cbor_build_uint8'
/somepath/src/main.c:15: undefined reference to `cbor_move'
/somepath/src/main.c:16: undefined reference to `cbor_build_string'
/somepath/src/main.c:16: undefined reference to `cbor_move'
/somepath/src/main.c:14: undefined reference to `cbor_map_add'
/somepath/src/main.c:21: undefined reference to `cbor_serialize_alloc'
/somepath/src/main.c:24: undefined reference to `free'
/somepath/src/main.c:26: undefined reference to `fflush'
/somepath/src/main.c:27: undefined reference to `cbor_decref'

```

How can I tell the linker to _link_ that lib?

btw, compiling with `cc -lcbor src/main` works.


Thanks !


*[1] PJK/libcbor https://github.com/PJK/libcbor/

-- 
Martin Iñaki Malerba
inakimmalerba@... | +54 02945 15468443
inaki@...

_______________________________________________
Zephyr-users mailing list
Zephyr-users@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-users



Linking OS shared libs

Inaki Malerba
 

Hi!

I've been strugling with this for a while and I can't make it work.

I need to link my project to a shared library (libcbor[1]), which is located on /usr/local/include.

Reading the project's Makefiles, i found the variable STDINCLUDE, so i fixed the `fatal error: cbor.h: No such file or directory` adding the following line to the app's Makefile

`export STDINCLUDE = -I/usr/local/include`

But the next problem I got is how to tell the linker to use that lib.

```

src/built-in.o: In function `main':
/somepath/src/main.c:8: undefined reference to `cbor_new_definite_map'
/somepath/src/main.c:11: undefined reference to `cbor_build_string'
/somepath/src/main.c:11: undefined reference to `cbor_move'
/somepath/src/main.c:12: undefined reference to `cbor_build_bool'
/somepath/src/main.c:12: undefined reference to `cbor_move'
/somepath/src/main.c:10: undefined reference to `cbor_map_add'
/somepath/src/main.c:15: undefined reference to `cbor_build_uint8'
/somepath/src/main.c:15: undefined reference to `cbor_move'
/somepath/src/main.c:16: undefined reference to `cbor_build_string'
/somepath/src/main.c:16: undefined reference to `cbor_move'
/somepath/src/main.c:14: undefined reference to `cbor_map_add'
/somepath/src/main.c:21: undefined reference to `cbor_serialize_alloc'
/somepath/src/main.c:24: undefined reference to `free'
/somepath/src/main.c:26: undefined reference to `fflush'
/somepath/src/main.c:27: undefined reference to `cbor_decref'

```

How can I tell the linker to _link_ that lib?

btw, compiling with `cc -lcbor src/main` works.


Thanks !


*[1] PJK/libcbor https://github.com/PJK/libcbor/

-- 
Martin Iñaki Malerba
inakimmalerba@... | +54 02945 15468443
inaki@...


MicroPython Zephyr port v1.9.3 released

Paul Sokolovsky
 

Hello,

MicroPython, a small implementation of a Python language subset for
embedded systems, version 1.9.3 was released, which also includes a
Zephyr RTOS port.

The MicroPython Zephyr port provides basic functionality, like GPIO and
Socket-based networking. It may be useful for testing and
explorative/rapid prototyping tasks.

The code and instructions are available at
https://github.com/micropython/micropython/tree/master/ports/zephyr .
There's also additional "wip" branch with more in-progress code and
testing scripts, instructions for that are at
https://github.com/pfalcon/micropython/wiki/ZephyrSocket .


--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


[arduino_101/ARC] sensor_trigger_set not triggered from QMSI_SS

Carles Perello
 

Hi all

I am using the arduino 101 to trigger a sensor from the ARC part. But seems its not working.

To make it work I am forced to enable

CONFIG_GPIO_QMSI=y
CONFIG_GPIO_QMSI_INIT_PRIORITY=60
CONFIG_GPIO_QMSI_0=y
CONFIG_GPIO_QMSI_0_NAME="GPIO_2"
CONFIG_GPIO_QMSI_0_IRQ_PRI=1
CONFIG_GPIO_QMSI_1=y
CONFIG_GPIO_QMSI_1_NAME="GPIO_3"
CONFIG_GPIO_QMSI_1_IRQ_PRI=1

and use GPIO_3 as the sensor trigger.


Is this a known fact or am I missing something?

cheers

Carles


Re: Enabling bluetooth on K64F (Kconfig.defconfig options)

Priyanka
 

Hi k

Maureen did confirm to me that Bluetooth IPSP sample doesn't work out of the box for FRDM_K64F.
I looked at Kconfig options in Kconfig.defconfig . With simple overriding the defaults in prj.conf and Kconfig.defconfig, it didn't seem to work.
I will test it again to see if I missed something there.

I found instructions on bluetooth with 96b_carbon board, not with frdm_k64f
https://github.com/zephyrproject-rtos/zephyr/pull/1169

Thanks
Priyanka

-----Original Message-----
From: Kumar Gala [mailto:kumar.gala@linaro.org]
Sent: Monday, October 23, 2017 12:43 PM
To: Paul Sokolovsky <paul.sokolovsky@linaro.org>
Cc: Priyanka Rawat <priyanka.rawat@nxp.com>; zephyr-users@lists.zephyrproject.org; Maureen Helm <maureen.helm@nxp.com>
Subject: Re: [Zephyr-users] Enabling bluetooth on K64F (Kconfig.defconfig options)


On Oct 23, 2017, at 12:27 PM, Paul Sokolovsky <paul.sokolovsky@linaro.org> wrote:

Hello Priyanka,

On Sun, 22 Oct 2017 22:07:24 +0000
Priyanka Rawat <priyanka.rawat@nxp.com> wrote:

Hello

I want to run samples/bluetooth/ipsp on K64F board.

I understand that if networking is enabled, FRDM_K64F by default uses
Ethernet. So I should modify Kconfig.defconfig to disable Ethernet
and enable Bluetooth.

I add the following to /boards/arm/frdm_k64f/Kconfig.defconfig
[]


What is the proper clean way to disable NET_L2_ETHERNET and ETH_MCUX
and enable Bluetooth ?
The idea of any board defaults is just that - they're the defaults,
and should be overridable by a user. Did you you try to override those
defaults in your prj.conf? If that doesn't work after reasonable
effort, please submit the issue at
https://github.com/zephyrproject-rtos/zephyr/issues/new with detailed
steps and info to reproduce.
I feel like Maureen had written up instructions on bluetooth w/FRDM-K64F, but I can't seem to find them now.

- k


Re: Enabling bluetooth on K64F (Kconfig.defconfig options)

Kumar Gala
 

On Oct 23, 2017, at 12:27 PM, Paul Sokolovsky <paul.sokolovsky@linaro.org> wrote:

Hello Priyanka,

On Sun, 22 Oct 2017 22:07:24 +0000
Priyanka Rawat <priyanka.rawat@nxp.com> wrote:

Hello

I want to run samples/bluetooth/ipsp on K64F board.

I understand that if networking is enabled, FRDM_K64F by default uses
Ethernet. So I should modify Kconfig.defconfig to disable Ethernet
and enable Bluetooth.

I add the following to /boards/arm/frdm_k64f/Kconfig.defconfig
[]


What is the proper clean way to disable NET_L2_ETHERNET and ETH_MCUX
and enable Bluetooth ?
The idea of any board defaults is just that - they're the defaults, and
should be overridable by a user. Did you you try to override those
defaults in your prj.conf? If that doesn't work after reasonable effort,
please submit the issue at
https://github.com/zephyrproject-rtos/zephyr/issues/new with detailed
steps and info to reproduce.
I feel like Maureen had written up instructions on bluetooth w/FRDM-K64F, but I can’t seem to find them now.

- k


Re: Testing with Zephyr

Paul Sokolovsky
 

Hello Johannes,

On Wed, 18 Oct 2017 17:31:28 +0200
Johannes Hutter <johannes.5494@gmail.com> wrote:

Hello everyone,


I'd be interested in the way you all are testing your applications on
top of Zephyr. It seems like the Zephyr testing framework based on
the sanityscript is intended to test kernel components, but isn't a
good fit for application testing.
Depends on requirements for the testing. Zephyr's ztest framework is
of course first of all a unit testing framework, and "sanitycheck" is a
runner for it, optimized to run across wide array of boards with
different features. Otherwise, "kernel components" are pretty much just
"components" accessed by APIs, and tests exercise these APIs - as they
would for any other software system.

If "type: unit" is set in the
testcase.yaml, the test seems to be even completely ignored by the
script.

Does anyone have experiences in the combination of other test
frameworks like CUnit, CppUnit etc. and Zephyr?
I can just give few examples. MicroPython Zephyr port
https://github.com/micropython/micropython/tree/master/ports/zephyr runs
tests in a way any other MicroPython ports - by establishing a REPL
communication channel, and sending Python-level testcases and
receiving replies over it. Zephyr.js https://github.com/01org/zephyr.js
also runs tests in its own way, which is IIRC, building testcases one by
one into firmware binary, flashing, running, repeating.

So, I'd say the answer to your original question would be: "You can use
any testing framework with Zephyr (which fits into codesize
requirements). Also, there's the ztest test framework provided by
Zephyr."

[]

--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


Re: Enabling bluetooth on K64F (Kconfig.defconfig options)

Paul Sokolovsky
 

Hello Priyanka,

On Sun, 22 Oct 2017 22:07:24 +0000
Priyanka Rawat <priyanka.rawat@nxp.com> wrote:

Hello

I want to run samples/bluetooth/ipsp on K64F board.

I understand that if networking is enabled, FRDM_K64F by default uses
Ethernet. So I should modify Kconfig.defconfig to disable Ethernet
and enable Bluetooth.

I add the following to /boards/arm/frdm_k64f/Kconfig.defconfig
[]


What is the proper clean way to disable NET_L2_ETHERNET and ETH_MCUX
and enable Bluetooth ?
The idea of any board defaults is just that - they're the defaults, and
should be overridable by a user. Did you you try to override those
defaults in your prj.conf? If that doesn't work after reasonable effort,
please submit the issue at
https://github.com/zephyrproject-rtos/zephyr/issues/new with detailed
steps and info to reproduce.



Thanks
Priyanka
[]

--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


Enabling bluetooth on K64F (Kconfig.defconfig options)

Priyanka
 

Hello 

I want to run samples/bluetooth/ipsp on K64F board.
 
understand that if networking is enabled, FRDM_K64F by default uses Ethernet.
So I should modify Kconfig.defconfig to disable Ethernet and enable Bluetooth.

I add the following to  /boards/arm/frdm_k64f/Kconfig.defconfig 

if NETWORKING

config NET_L2_BT
	default y

config NET_L2_BT_ZEP1656
	default y

endif # NETWORKING

Do I need to modify nxp_kinetis/k6x/Kconfig.defconfig.mk64f12 as well ?

What is the proper clean way to disable NET_L2_ETHERNET and ETH_MCUX and enable Bluetooth ?


Thanks
Priyanka


---------------------

/zephyr-LTI$ sudo minicom -s
 
_v/eth_mcux]BG]et0_init: MAC 00:0:9f:4f:99:b2
[G] eth_0_init: AC:04:9f:b4:c7:1e
[dev/h_mux][DBG] eth_0_init: MAC 00:04:9f:bd:77:e6
[dev/emcx] [DB] e M 0:0ff[dev/etcu [ eth_0_init: MAC 00:04:9f:41:1e:1e
[dev/eth_mcux] [DB] eth_0_init: MC 004:f:4c:4a
[dev/eth_mc h_0_it: M0:4:9f:f:4:5e
[ipsp] [INF] init_app: Run IPSP sample:04:9f:b6:ee:5a
[ipsp] [ERR] get_context: Cannot bind IPv6 mcast (-2)                                 
[ipsp] [ERR] listen: Cannot get network contexts                                      
[dev/eth_mcux] [DBG] eth_0_init: MAC 00:04:9f:c4:5c:b6                                
[dev/eth_mcux] [DBG] eth_0_init: MAC 00:04:9f:bc:b8:3e


Testing with Zephyr

Johannes Hutter <johannes.5494@...>
 

Hello everyone,


I'd be interested in the way you all are testing your applications on top of Zephyr. It seems like the Zephyr testing framework based on the sanityscript is intended to test kernel components, but isn't a good fit for application testing. If "type: unit" is set in the testcase.yaml, the test seems to be even completely ignored by the script.

Does anyone have experiences in the combination of other test frameworks like CUnit, CppUnit etc. and Zephyr?


Thank you

Johannes


Re: k_poll usage

Luiz Augusto von Dentz
 

Hi Vakul,

I had plans to introduce k_poll support for other objects but that
would probably make CONFIG_POLL mandatory, though we the changes
introduced for userspace I think we might have to delay this a little
bit to see how the APIs will gonna look like at the end.

On Tue, Oct 17, 2017 at 1:18 PM, Vakul Garg <vakul.garg@nxp.com> wrote:
Hi Paul

Thanks for the reply. It seems quite restrictive that most of zephyr IPC
does not support k_poll. How applications can simultaneously poll on fifo,
mailbox?

Any reason why kernel kept limited usage for k_poll?

Vakul

Get Outlook for Android

________________________________
From: Paul Sokolovsky <paul.sokolovsky@linaro.org>
Sent: Tuesday, October 17, 2017 3:41:51 PM
To: Vakul Garg
Cc: zephyr-users@lists.zephyrproject.org
Subject: Re: [Zephyr-users] k_poll usage

Hello Vakul,

On Fri, 13 Oct 2017 05:48:22 +0000
Vakul Garg <vakul.garg@nxp.com> wrote:

Hi

The zephyr documentation says k_poll to operate on objects - kernel
fifo, poll signal, semaphore. Can't it also be used on mailboxes,
message queues etc?
Looking at the include/kernel.h, all k_poll'able object must have
a .poll_events member (either directly or via _POLL_EVENT macro).
Mailboxes and message queues don't have it. This can be confirmed by
looking at kernel/poll.c:register_event(), which handles each of the
supported pollable objects via a switch statement.


Regards

Vakul


--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog

_______________________________________________
Zephyr-users mailing list
Zephyr-users@lists.zephyrproject.org
https://lists.zephyrproject.org/mailman/listinfo/zephyr-users
--
Luiz Augusto von Dentz


Re: k_poll usage

Vakul Garg <vakul.garg@...>
 

Hi Paul

Thanks for the reply. It seems quite restrictive that most of zephyr IPC does not support k_poll. How applications can simultaneously poll on fifo, mailbox?

Any reason why kernel kept limited usage for k_poll?

Vakul


From: Paul Sokolovsky <paul.sokolovsky@...>
Sent: Tuesday, October 17, 2017 3:41:51 PM
To: Vakul Garg
Cc: zephyr-users@...
Subject: Re: [Zephyr-users] k_poll usage
 
Hello Vakul,

On Fri, 13 Oct 2017 05:48:22 +0000
Vakul Garg <vakul.garg@...> wrote:

> Hi
>
> The zephyr documentation says k_poll to operate on objects - kernel
> fifo, poll signal, semaphore. Can't it also be used on mailboxes,
> message queues etc?

Looking at the include/kernel.h, all k_poll'able object must have
a .poll_events member (either directly or via _POLL_EVENT macro).
Mailboxes and message queues don't have it. This can be confirmed by
looking at kernel/poll.c:register_event(), which handles each of the
supported pollable objects via a switch statement.

>
> Regards
>
> Vakul



--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


Re: k_poll usage

Paul Sokolovsky
 

Hello Vakul,

On Fri, 13 Oct 2017 05:48:22 +0000
Vakul Garg <vakul.garg@nxp.com> wrote:

Hi

The zephyr documentation says k_poll to operate on objects - kernel
fifo, poll signal, semaphore. Can't it also be used on mailboxes,
message queues etc?
Looking at the include/kernel.h, all k_poll'able object must have
a .poll_events member (either directly or via _POLL_EVENT macro).
Mailboxes and message queues don't have it. This can be confirmed by
looking at kernel/poll.c:register_event(), which handles each of the
supported pollable objects via a switch statement.


Regards

Vakul


--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog

2361 - 2380 of 2604