commit | 722ab03b9216aaa4d8633ad47eca7042f9043df8 | [log] [tgz] |
---|---|---|
author | Abdulla Kamar <abdulla@google.com> | Sun Dec 09 20:53:37 2018 +0000 |
committer | CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> | Sun Dec 09 21:12:22 2018 +0000 |
tree | 2db55459cbc2006a4059560feb53ee06babb2e77 | |
parent | 85f23c7e772aa5abb17131347c7ce9ef57f678e4 [diff] |
Revert "[usb proto]Add complete cb as a parameter" This reverts commit 9b5ac003952b1581ab1d7eee83da08e44d359576. Reason for revert: This breaks global integration, due to the Broadcom drivers in Garnet. ../../garnet/drivers/wlan/third_party/broadcom/brcmfmac/usb.c:271:44: error: too few arguments to function call, expected 4, have 2 usb_request_queue(usb_proto, urb->zxurb); ~~~~~~~~~~~~~~~~~ ^ ../../zircon/system/ulib/ddk/include/ddk/protocol/usb.h:191:1: note: 'usb_request_queue' declared here static inline void usb_request_queue(const usb_protocol_t* usb, usb_request_t* usb_request, ^ 1 error generated. Original change's description: > [usb proto]Add complete cb as a parameter > > With usb request having private regions for each layer in the stack, > the complete callback and their contexts should not be part of the public > part of the usb-request. This changeset modifies usb protocol so that > the complete_cb and its context are passed in as parameters. > > Test: zircon build. Will be changing garnet also and then will do basic > sanity test. > > Change-Id: I42ab688b3db2aaca56f05d67a69d94b61199c256 TBR=voydanoff@google.com,jocelyndang@google.com,ravoorir@google.com,surajmalhotra@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I886923ac032e3713a9426b992a2dd542357c25c9
Zircon is the core platform that powers the Fuchsia OS. Zircon is composed of a microkernel (source in kernel/...) as well as a small set of userspace services, drivers, and libraries (source in system/...) necessary for the system to boot, talk to hardware, load userspace processes and run them, etc. Fuchsia builds a much larger OS on top of this foundation.
The canonical Zircon Git repository is located at: https://fuchsia.googlesource.com/zircon
A read-only mirror of the code is present at: https://github.com/fuchsia-mirror/zircon
The Zircon Kernel provides syscalls to manage processes, threads, virtual memory, inter-process communication, waiting on object state changes, and locking (via futexes).
Currently there are some temporary syscalls that have been used for early bringup work, which will be going away in the future as the long term syscall API/ABI surface is finalized. The expectation is that there will be about 100 syscalls.
Zircon syscalls are generally non-blocking. The wait_one, wait_many port_wait and thread sleep being the notable exceptions.
This page is a non-comprehensive index of the zircon documentation.