Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upAdd support for UWP5661 SoC and IVY5661 board #20548
Conversation
This comment has been minimized.
This comment has been minimized.
|
Some checks failed. Please fix and resubmit. checkpatch (informational only, not a failure)
Nits issues
Tip: The bot edits this comment instead of posting a new one, so you can check the comment's history to see earlier messages. |
cb50d99
to
a0682c1
a0682c1
to
b85a825
|
doc changes LGTM, thanks. |
This comment has been minimized.
This comment has been minimized.
|
I haven't looked closely at the port, but in preparation for doing so I have a couple questions:
Having recently spent time dealing with in-tree drivers for sensors that are so past end-of-life that the vendor doesn't even provide documentation for them anymore, I'm concerned about spending effort moving something into Zephyr---and taking on the upstream responsibility for basic maintenance---if no member companies have the hardware and are willing to devote resources to supporting it. I personally would not want to approve a new platform without being able to verify for myself that it passes basic tests, but if the concerns above are mistaken and I can get hardware I'm happy to take a more in-depth look. |
This comment has been minimized.
This comment has been minimized.
I believe that this board is also available on Toabao. I'm not sure if it will be available on Seed studio, but I can check with board vendor.
Please see below comment.
Yes, Unisoc is working on public documentation for this SoC and it will be available soon. The reason for closing #10626 is that Unisoc has no interest in doing the upstreaming by themselves. But they are happy if someone from the community does it.
This statement doesn't make sense to me. Is Zephyr going to host only the SoC/boards of the member companies? If that's the case, it needs to be written somewhere so that people don't spend time on upstreaming the non-member platforms. And where does the community contribution comes here? This is purely a community contribution and even if the board is not going to be available in future, we should support the existing users. This is what Linux kernel is doing. The developer who submits the SoC/board/driver support takes the sole responsibility of testing regularly with releases and making sure that there is no regression present. Or even if someone reports some regression, then the developer is responsible for fixing it. If he fails to do so for a long time, then the platform can be considered stale and can be removed with notice. And for basic upstreaming maintenance, we only care about build check, didn't we?
Again, this is not going to work well. Is it a requirement now that the platform support has to be verified by you in order to be upstreamed? |
This comment has been minimized.
This comment has been minimized.
|
I'm just a contributor, so please don't take anything I say as being anything more than my opinion.
I didn't intend to imply that. I'm unaware of any clearly defined Zephyr policy and process for determining whether a new platform /device is acceptable or when an old platform/device can be removed.
In practice as Zephyr evolves keeping something building means maintainers making source code changes to code in other areas when API or tooling changes, which is risky when the changes can't be verified because nobody has the hardware. I've been spending a lot of time recently doing this for sensors that use GPIO, so I'm possibly a little too sensitive to the costs and risks of untested code.
Somebody has to approve it; it certainly doesn't have to be me. I was asked to give my review, and I believe that involves more than a cursory "looks like it might work", which is all I could say without hardware and documentation to evaluate it. I have no problem with buying an interesting and inexpensive board like this in order to support Zephyr's capabilities, so I wanted to know whether it was going to be available so I could give this contribution the careful attention it deserves. |
Add SoC support for UNISOC UWP5661 SoC, which is a highly integrated connectivity single chip. This chip includes 2.4GHz and 5GHz WLAN IEEE 802.11 a/b/g/n/ac, Bluetooth 5.0 with supporting high power mode, Direction Finding and Long Range. More information about this chip can be found in Unisoc's site: https://unisoc.github.io/chips/UWP5661/ Signed-off-by: Dong Xiang <dong.xiang@unisoc.com> Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add serial driver support for UNISOC UWP5661 SoC. Signed-off-by: Dong Xiang <dong.xiang@unisoc.com> Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add support for IVY5661 96Boards based on UNISOC UWP5661 SoC. This board is one of the IoT Edition boards of the 96Boards family manufactured by UCRobotics. More information about this board can be found in 96Boards website: https://www.96boards.org/product/ivy5661/ Signed-off-by: Dong Xiang <dong.xiang@unisoc.com> Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add interrupt controller ICTL support for UWP5661 SoC. This interrupt controller is a multi level interrupt controller chained to the NVIC. Signed-off-by: Dong Xiang <dong.xiang@unisoc.com> Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add myself as the codeowner for all UNISOC stuffs. Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add vendor prefix for UNISOC Communications, Inc. Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Add Unisoc HAL module. Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Mani-Sadhasivam commentedNov 9, 2019
Hello,
This is the second attempt on adding UNISOC UWP5661 SoC and 96Boards IVY5661 board support to zephyr. The first attempt was made by UNISOC (#10626) but the PR was closed and discontinued. Now, UNISOC has no intention to do the upstream by themselves but they are open for community contributions. Hence with their approval, I'm posting this PR and taken over the codebase from their previous PR. I've added my copyright for files I modified/created.
About SoC:
Unisoc UWP5661 is a highly integrated connectivity single chip which offers the lowest BOM in the industry for smart phone, PC, STB, OTT, IoT and automotive applications. This chip includes 2.4GHz and 5GHz WLAN IEEE 802.11 a/b/g/n/ac, Bluetooth 5.0 with supporting high power mode, Direction Finding and Long Range.
About Board:
96Boards IVY5661 is one of the IoT boards of the 96Boards family manufactured by UCRobotics. This board features UWP5661 SoC in 96Boards IoT form factor. More information about this board can be found in 96Boards website: https://www.96boards.org/product/ivy5661
The corresponding PR to add HAL is here: zephyrproject-rtos/hal_unisoc#1