Commit Graph

1210 Commits

Author SHA1 Message Date
Andrew Boie e444825ee3 irq: formalize external zephyr interrupt API
The app-facing interface for configuring interrupts was never
formally defined, instead it was defined separately for each arch
in their respective arch-specific header files. Occasionally these
would go out of sync.

Now there is a single irq.h header which defines this interface.
To avoid runtime overhead, these map to _arch_* implementations of
each that must be defined in headers pulled in by arch/cpu.h.

Change-Id: I69afbeff31fd07f981b5b291f3c427296b00a4ef
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-26 15:53:22 +00:00
Arkadiusz Lichwa 7d03eec8d3 Bluetooth: BR/EDR: Add HCI SSP exchange IO Capa defines
Adds values to be validated during examining Secure Simple Pairing exchange IO
capabilities and bond types.

Change-Id: I3f25fa863b9a8a46c0a0e3c366e8b915c7db0bc7
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
2016-02-26 13:41:31 +00:00
Arkadiusz Lichwa 847a1f6628 Bluetooth: BR/EDR: Add initial SSP Complete
Adds HCI protocol type for Secure Simple Pair Complete event and enables the
event in controller.
Then implements the initial SSP Complete event handler with catching
the status of SSP process.

Change-Id: Ic7cc5b4cab8a1b4120285815c24eeb6483d748df
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
2016-02-26 08:43:31 +00:00
Arkadiusz Lichwa 2697d4fd5e Bluetooth: BR/EDR: Initial IO Capability reply to remote
Enables IO Capability Request event in controller.
Adds handler to react on controller's IO Capability Request event during
incoming pairing.
As a initial case respond to the request with negative reply setting
reason as 'pairing not allowed'.

Change-Id: I161c7ab7f1031a78cfa50444f41624232e5c5146
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
2016-02-26 08:42:57 +00:00
Arkadiusz Lichwa dd8bf892f3 Bluetooth: BR/EDR: Handle IO Capability Response event
Enables IO Capability Response event in controller and adds remote IO Capability
and authentication fields to connection object.
Initializes them using IO exchange values delivered in SSP IO Capability
Response event data set representing remote as a part of incoming pairing
process.

Change-Id: Ia73a912f6fb633d1d1bb086ef3af9a280ac5a864
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
2016-02-26 06:22:54 +00:00
Arkadiusz Lichwa 73e201cbce Bluetooth: BR/EDR: Enable SSP mode in controller
Turns on Secure Simple Pairing mode in controller. Since there's a prerequisite
the controller is 4.0+, turning the mode is unconditional.

Change-Id: Id4a10ccf8892a430b0daaa6750835516b17b7e8a
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
2016-02-26 06:05:31 +00:00
Benjamin Walsh fcfb4b6bda kernel: add fiber_wakeup()
Like for the other context-specific APIs, also provide a
context-agnostic wrapper.

Change-Id: Icf0a62f4c06aec42f0febc298edbd8bdeec63749
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-25 11:06:09 -05:00
Peter Mitsis b4313cef6f nanokernel: Add routines for waking a fiber
Adds the following routines for waking a fiber that was previously
put to sleep using fiber_sleep().
    isr_fiber_wakeup()
    fiber_fiber_wakeup()
    task_fiber_wakeup()

Change-Id: I7d78ee6997163d71b92f388a7b4c484f2e97862b
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-23 10:48:54 -05:00
Peter Mitsis cee79a7ca9 nanokernel: Change fiber_start() return type
The fiber_start() family of routines now return a nanokernel
thread id (nano_thread_id_t).  This is a pre-requisite step for
allowing fiber_sleep() operations to be cancelled.

Change-Id: I74a3885eda3252c158f4a48e90244569633469c3
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-23 10:48:54 -05:00
Peter Mitsis 06e2b4e129 nanokernel: Change fiber_delayed_start() return type
Instead of returning a 'void *', the nanokernel fiber_delayed_start()
family of routines now return a handle of type nano_thread_id_t.

Consequently, the nanokernel fiber_delayed_start_cancel() family of
routines now accept a parameter of type nano_thread_id_t instead of
'void *'.

The complete list of affected nanokernel routines is:
    fiber_delayed_start()        fiber_delayed_start_cancel()
    fiber_fiber_delayed_start()  fiber_fiber_delayed_start_cancel()
    task_fiber_delayed_start()   task_fiber_delayed_start_cancel()

Change-Id: Ibd4658df3ef07e79a81b7643a8be9ea5ffe08ba0
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-23 10:48:54 -05:00
Johan Hedberg bab3b49fdb Bluetooth: Change GATT callback return values to ssize_t
Since the return value of these callbacks is a number of bytes ssize_t
is more appropriate than int.

Change-Id: I3406fb382975d62f51e7a195666d0ae88364fd2c
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-20 15:39:33 +00:00
Tomasz Bursztyka 050ec13556 net: ip: Make sure CONFIG_NETWORKING_WITH_LOGGING is properly handled
If the user unsets CONFIG_NETWORKING_WITH_LOGGING, it will mean he
really doesn't want to get any network stack logging output.

Change-Id: I0629a045adbf8916327a8a9ba69b6e6e9ee2e7d9
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-19 12:33:45 +00:00
Daniel Leung 7096981791 gpio: clarify API doc
() Add brief descriptions for #defines.
() Hides internal only API typedefs and struct.

Change-Id: I452c5d7fe56d57ba05338639986e2fff44a89244
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-18 18:25:50 +00:00
Daniel Leung f6646e2688 i2c: clarify API doc
() Add brief descriptions for #defines.
() Remove the callback enums as they are not being used.
() Hides internal only API typedefs and struct.

Change-Id: I62bc38890a7b49b3ec613064f7574e2f5b75b70c
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-18 17:54:03 +00:00
Luiz Augusto von Dentz 5676fb012d Bluetooth: L2CAP: Add proper documentation for callbacks
Document callbacks included in structs since they are also public API.

Change-Id: I8eda02b12172c54e8076208d8ea5ae246c650a3c
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2016-02-18 14:14:30 +00:00
Johan Hedberg 8cf5a5080c Bluetooth: GATT: Provide documentation for the attribute callbacks
Document the parameters and expected return values of the read, write
and flush attribute callbacks.

Change-Id: I600da2ed64944986395520d7fae77fcb05b58e86
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-18 10:38:45 +02:00
Johan Hedberg a72d967d33 Bluetooth: GATT: Expose ATT error codes to application callbacks
Introduce BT_GATT_ERR macro to make it possible for application
callbacks to return exact ATT error codes.

Change-Id: I971536508e75036fbddc40b3f33e5201e11940bc
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-17 15:05:34 +00:00
Johan Hedberg 15ac9992a9 Bluetooth: ATT: Add Common Profile Error Codes
These are specified in the Core Specification Supplement.

Change-Id: Ieaa9f061666119bb430d77b0fd40b4891e515b81
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-17 15:05:16 +00:00
Johan Hedberg 96f9831304 Bluetooth: Add public att.h header file
For now this only exposes the various ATT error codes.

Change-Id: If568782e90dca22871681d2d3b2d81ae4cb8e5e4
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-17 15:05:08 +00:00
Szymon Janc 4dfb50e514 Bluetooth: Fix not calling connected callback on connect failed
If LE Create Connection fails notify application that connection
failed.

Change-Id: I3993bcb1bf3f8bd8fc08546e1fe683326b47db5b
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
2016-02-17 13:07:46 +00:00
Mariusz Skamra 7acdf884cf Bluetooth: Add Cycling Speed and Cadence Service related UUID defs
This adds CSC Service related UUID definitions.

Change-Id: I3fc77cd6561ccfd7de0d906c7ddcd5d8dac5bff9
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
2016-02-16 10:49:50 +00:00
Anas Nashif 3320df7949 docs: fixed API linking
Change-Id: If9daa0e11c967ee19684dd9d08438f749abf9d5e
2016-02-16 06:16:48 +00:00
Anas Nashif 4090f0e5a7 docs: doxygen: group driver APIs
Make device APIs a group to enable in raw doxygen output and group
all IO drivers into one category.

Change-Id: I1f9338d3b977bd08a6a1b8d8b396ce1fba33aada
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-16 06:16:47 +00:00
Mariusz Skamra d768527930 Bluetooth: Add Environmental Sensing Service related UUID defs
This adds Environmental Sensing Service related UUID definitions.

Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
Change-Id: Idd87139971fb3c992b7fb7e346ce2ea90553ad38
2016-02-15 11:53:13 +00:00
Rodrigo Caballero 8a454e690a doc: Edit the UART driver APIs
Edit public API details for clarity, grammar, punctuation found
on file uart.h

Amost all elements in this driver are now documented.

Made consistent use of @retval to document return values.

Made all verbs in the brief descriptions imperative.

Change-Id: Ied3a80ea636855ba42b33877c0ac7ac66d42e458
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-12 17:20:46 -06:00
Johan Hedberg 9d6aaa1cc7 net: buf: Add net_buf_pull_u8() helper API
A helper for the (fairly common) task of decoding individual 8-bit
values.

Change-Id: Id7e97df152232d5dd9861cf1e107877f1b8febaa
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-12 15:10:20 +00:00
Rodrigo Caballero a3edcaa816 doc: Edit the Event Logger APIs
Edit public API details for clarity, grammar, punctuation found
on file event_logger.h

Includes the event logger information in the ReST documentation.
Modifies doxygen.config to include the event logger.

Made consistent use of @retval to document return values.

Used imperative verbs for all @brief descriptions.

Change-Id: I88b8672a527138e2b4f7df4b4b0495a0d871cad3
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-12 01:41:20 +00:00
Benjamin Walsh 038790a945 sys_clock/microkernel: do not announce ticks until microkernel is up
This is a prologue to reverting:

	commit 3c66686
	Author: Benjamin Walsh <benjamin.walsh@windriver.com>
	Date:   Tue Feb 9 17:34:02 2016 -0500

		sys_clock: start the microkernel ticker in the MICROKERNEL init level

to allow the devices initializing in pre-MICROKERNEL init levels to poll
the hi-res clock (sys_cycle_get_32()), which relies on the system clock
having been started.

This change allows starting the system clock in the NANOKERNEL init
level by delaying announcing the ticks until the MICROKERNEL init level.

Change-Id: I43d54bb5e2f182d4edd880da0124a0817f911943
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-11 17:10:49 -05:00
Gerardo Aceves 974c88513c doc: Edit nanokernel API
Edited:
Punctuation.
Grammar correctness.
Clarity.

Change-Id: Idae45a795b235218535e6c18f9ef6e64048ba12c
Signed-off-by: Gerardo Aceves <gerardo.aceves@intel.com>
2016-02-11 22:08:25 +00:00
Rodrigo Caballero c70c851ded doc: API doc edits for microkernel event.h
Review and edit public API details for clarity, consistency,
and punctuation.

Made consistent use of @retval to document return values.

Used imperative verbs for all @brief descriptions.

Change-Id: I7f1ec25ceddacedcc7a9c63e7efd0621e80ad0de
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-11 20:12:31 +00:00
Peter Mitsis 61f7a13cfc net doc: Fix parameter names in documentation
Change-Id: I3a58e500d691254a09c922c248beaca0c5569e09
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 20:11:03 +00:00
Peter Mitsis 173877cff3 bluetooth doc: Fix parameter name in documentation
Change-Id: If537f3557dfc75ca2999f977ca8c2e7dbad36d5a
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 20:11:03 +00:00
Peter Mitsis e4090ee176 doc: Fix warning about unsupported xml/html tag
Change-Id: I721b87076ddb6a5b97ed7a219d39b20697a89e74
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 20:11:03 +00:00
Peter Mitsis 87b6665592 doc: Fix doxygen build warnings in device.h
Change-Id: I2555f050f652d15cd43aac7202cb2abd4bf53f63
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 20:11:03 +00:00
Peter Mitsis 8413e1f872 doc: Fix misuse of @file doxygen tag
Summary lines follow the @brief tag instead of the @file tag.

This prevents doxygen build warnings such as ...

    The name xxx supplied as the second argument in the \file
    statement is not an input file

Change-Id: I1014586ad21be12e14aa1d2a942e6b8a11211795
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 20:11:03 +00:00
Sergio Rodriguez 4dee326306 tickless idle x86: Tickless idle support on nanokernel for x86
Modifications to timer drivers and interrupt setup, to manage
the tickless idle for the x86 architecture

Change-Id: Ie02d484b7e5636de6ea382ba2eeed57e704c8498
Signed-off-by: Sergio Rodriguez <sergio.sf.rodriguez@intel.com>
2016-02-11 19:10:24 +00:00
Johan Hedberg ecff186a82 Bluetooth: Add HCI defines for common 1-byte values
Change-Id: Ib3646497177098af4bc3e36c054fd16a3b120b84
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-11 14:48:03 +02:00
Johan Hedberg 500513b5f0 Bluetooth: Add connection role to bt_conn_info
This can be useful for both LE and BR/EDR connections so it sits
outside of those specific structs. The values are intentionally
matching the HCI values so for the HCI case we can just do a direct
assignment.

Change-Id: Id78d304bb61e5fd941f2c35351758c1eecc6ab6a
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-11 14:48:03 +02:00
Rodrigo Caballero 465cd01d9f doc: API edits for microkernel semaphore.h
Review and edit API notes for punctuation and to make explanations about
conditional routines the same throughout microkernel APIs.

Made consistent use of @retval to document return values.

Used imperative verbs for all @brief descriptions.

Change-Id: I2da0ea869151f3bdd5846f86d31dfd899e1ca1fc
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-11 12:16:23 +00:00
Johan Hedberg 754248aedc net: buf: Add convenience API for adding 8-bit integers
There are many situations when encoding data when we need to insert
single bytes to the buffer. With this helper the encoding code stays a
bit more readable.

Change-Id: Ibc0ce43af5ae25a1baa0f1adbc5816ae7c04e3bb
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-11 11:14:20 +02:00
Peter Mitsis 43579b39d2 bluetooth doc: Fix typos in uuid documentation
Change-Id: Id5c91e2a257a79fc18ebbe459b0261daaa156672
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 07:55:06 +00:00
Peter Mitsis d663e873f5 bluetooth doc: Fix unsupported xml/html tag warnings
Uses the correct doxygen formatting tags to identify variables.

Change-Id: Ia46d4e008eb7790383682ac33bd3d6dbc2a66a9d
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-11 06:31:52 +00:00
L.S. Cook 4d5b1aced4 doc: Edit API documentation on microkernel task.h
Reviewed for consistency, punctuation, parallelism among all
the microkernel API docs.

Change-Id: Ia40761694081f40d3ee9821058a6691cba98fc08
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:46:42 +00:00
L.S. Cook 96283e3a81 doc: Edit API documentation on microkernel memory_pool.h
Review and update for parallelism and consistency in formatting,
punctuation, and phrasing among all the microkernel APIs.

Change-Id: I4677cfafd8dffa75b5b19db3d16f5b90ad41b70f
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:46:37 +00:00
L.S. Cook 8e6fc98203 doc: Edit API documentation on microkernel task_irq.h
Reviewed for clarity and consistency in punctuation and style among
all the microkernel APIs.

Change-Id: I61548a906b4e89f2fbed214dbf7cda9fadac217d
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:46:17 +00:00
L.S. Cook a56fae8e80 doc: Edit API documentation on microkernel pipe.h
Editing for consistency in punctuation and formatting among
the microkernel APIs.

Change-Id: I69b0541fbb45cdc0eb9368cf386d51c2a03a85f9
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:46:17 +00:00
Aceves 806d2a767e doc: Edit microkernel mailbox
Edit the API for grammar, punctuation, clarity and doxygen format.

Change-Id: Iddf0a4f123658ece8313ab401718c77fcc715acd
Signed-off-by: Aceves <gerardo.aceves@intel.com>
2016-02-11 01:21:51 +00:00
Aceves 9dea8dbde9 doc: Edit the microkernel FIFO
Edit the API for grammar, punctuation, clarity and doxygen format.

Change-Id: I122f1993943f58d7262b239b887103f50ef8ddc7
Signed-off-by: Aceves <gerardo.aceves@intel.com>
2016-02-11 01:21:19 +00:00
L.S. Cook 3075a44e00 doc: Edit API documentation on microkernel ticks.h
Punctuation and style consistent among the microkernel APIs; made
sure imperative verb on @brief descriptions.

Change-Id: I0f270fdb9db4eeb45f65e483b3cafdcbc5c09418
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:15:43 +00:00
L.S. Cook d385e9abff doc: Edit API documentation on microkernel mutex.h
Punctuation and style consistent among the microkernel APIs; made
sure imperative on @brief descriptions.

Change-Id: I79f107dccedc8e3468640b3c9066f838687d35c8
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-11 01:15:43 +00:00