Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CMake: syscall macro's are not generated for out of tree DTS_ROOT #20140

Closed
Laczen opened this issue Oct 25, 2019 · 4 comments · Fixed by #21268
Closed

CMake: syscall macro's are not generated for out of tree DTS_ROOT #20140

Laczen opened this issue Oct 25, 2019 · 4 comments · Fixed by #21268
Assignees

Comments

@Laczen
Copy link
Collaborator

Laczen commented Oct 25, 2019

Describe the bug
When using a custom device tree with:

west build -b <board name> -- -DDTS_ROOT=<path to dts root>

include files that are under the DTS_ROOT/include are not added to the syscall_macros list.

To Reproduce

  1. Create a out of tree devicetree with a header that uses __syscall declarations.
  2. Use above command to build
  3. The build command shows the error:#include <syscalls/your_header.h> no such file or directory

Expected behavior
It should be possible to add header that uses __syscall declarations in a out of tree devicetree.

Impact
The behavior makes it impossible to use out of tree dts.

@Laczen Laczen added the bug The issue is a bug, or the PR is fixing a bug label Oct 25, 2019
@SebastianBoe
Copy link
Collaborator

SebastianBoe commented Oct 25, 2019

Hi, I added support for this in #7328 , but at that time it was believed that we should not support out-of-tree declarations of syscalls.

Perhaps @andrewboie or @nashif could comment on if things have changed and we now want to support this or not.

Driver system calls are declared at the subsystem level and not the actual drivers themselves.
I do not see a use-case for having out-of-tree driver subsystems or out of tree system calls. You should still be able to create out-of-tree drivers without making new syscalls.

-- @andrewboie

@SebastianBoe SebastianBoe added question and removed bug The issue is a bug, or the PR is fixing a bug labels Oct 25, 2019
@Laczen
Copy link
Collaborator Author

Laczen commented Oct 25, 2019

@nashif, @andrewboie, supporting out-of-tree declarations of syscalls allows development of subsystems to take place before it is integrated into zephyr. This can avoid disturbances inside the tree, only when the development is mature enough it could be added to the tree. I think there are other use cases as well, e.g. development of subsystems that will never go into the tree because of licensing, ownership, ...

@andrewboie
Copy link
Contributor

I won't stand in the way if you choose to resurrect that patch.

@SebastianBoe
Copy link
Collaborator

Will get this supported then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants