Commit graph

42249 commits

Author SHA1 Message Date
Juan Manuel Cruz
65ec185f79 logger: include task monitor in kernel event logger
Zephyr includes a Task Monitor feature that allows to
track events on the microkernel server scheduler.
Task monitor is integrated as a profiler point for the
Kernel Event Logger feature.

Change-Id: I7b8be5872439a333f976eada1aa3511d93b46388
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-09 13:53:41 -05:00
Javier B Perez
e7cf19bf1e doc: getting started: update SDK location
Change-Id: Iec3f73953c076dab75ae7a54344ad762dc83ac0a
Signed-off-by: Javier B Perez <javier.b.perez.hernandez@intel.com>
2016-02-09 18:11:51 +00:00
Anas Nashif
ef61a3e164 doc: simplify supported board page
Remove table which had redundant information and created a simple TOC
with boards. This will allow easy expansion of the list over time.

Change-Id: Ic94063cc99ddcb3d2140a4beef1067a9766d60a3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-09 18:04:37 +00:00
Anas Nashif
df8db31f53 doc: add brief description for Kconfig in the reference
Change-Id: I8ba54feb9d684945177c7ecfb08255aaf796734f
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-09 18:04:36 +00:00
Anas Nashif
dfee33269b doxygen: enable uart functions guarded by ifdef
Many of the UART interface functions are hidden behind ifdefs,
set those to 'y' when building documentation.

Change-Id: I1371e64b6fe4c269ce41c2c54e0f013d8088dbcf
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-09 18:04:36 +00:00
Anas Nashif
76bba72b97 trivial: fixed typo: sempahores -> semaphores
Change-Id: Ie119f8478c6a75c6ee8cab6277758b1cab85fcd6
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-09 18:04:36 +00:00
Juan Manuel Cruz
ee2b119877 doc: adds the task monitor documentation
Change-Id: I659bc206a636ffc723f3ac72b5b90f9a6ebcc565
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-09 13:03:19 -05:00
Juan Manuel Cruz
4601ccdbdf logger: updates logger sample to include task monitor events
Change-Id: I8fad34518d66194b349a6cac82e6a03332344132
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-09 13:03:19 -05:00
Juan Manuel Cruz
d481b3ff4c logger: removes TASK_MONITOR_CAPACITY symbol
Task monitor is being tracked as a profiler point of the kernel
event logger. Now, the capacity to register task monitor events
is dictated by KERNEL_EVENT_LOGGER_BUFFER_SIZE symbol.

Change-Id: Ia4fe04c7d46fe41524c53447ad51af2e03ea5a15
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-09 13:03:19 -05:00
Juan Manuel Cruz
a641710aea logger: removes old task monitor structures.
Kernel event logger keeps track of task monitor events.
Old structures are not needed anymore.

Change-Id: I2267bdb3c2f27ea87d8675c4ecf0646ea62761ae
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-09 13:03:19 -05:00
Juan Manuel Cruz
21b5da27ff adc: fixes unexpected error with interrupt handler
Interrupt handler needs to finish all the handler work before
returning to the sync call.
Before this fix, a call to the API read() method could unexpectedly
fail because a second read() call could start before the previous
read() call had not completely finished.

Change-Id: I74249a52b403e2a589d970fae05b9325b20fbe38
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-08 22:19:51 -05:00
Juan Manuel Cruz
ff8138595e adc: adjustments to dummy read
Per Curie documentation, the first sample from the Quark SE ADC
hardware after reset needs to be dropped.
This commits changes the location and the trigger event to do
a dummy read that drops the first sample.
Originally the driver did the dummy read on the API call enable()
and it was triggered if the ADC had awakened from suspend mode.
Because the SoC is not in suspend mode on power on and the API
enable() call has no information on the channels to be read the
dummy read could be missed.
Now the dummy read is done on the API call to read()
and triggered if it is the first time read() is called
since power on.

Change-Id: I1e1ad5f7f44d71ca88572ae242ad629471a9ab9b
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-08 22:19:51 -05:00
Andrew Boie
4455ee6d87 ARM: rebase available priority levels to 0
We have a new policy: users should not be able to configure
an interrupt with "forbidden" priority levels, and any priority
levels with special semantics will be activated by flags.

Change-Id: I757c19cfedcb1d0938eaf4da348ddafb71b3e001
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-08 21:47:35 -05:00
Genaro Saucedo Tejada
2b8673b571 doc: Linux Foundation registration steps
Updates Set Up steps from previous 01.org Gerrit to new Linux Foundation one.

Change-Id: Iab98864b405ff6dc4ea20d687fae77bd59284678
Signed-off-by: Genaro Saucedo Tejada <genaro.saucedo.tejada@intel.com>
2016-02-08 21:47:33 -05:00
Andrew Boie
b052bd282a x86: intconnect: convert some DEBUG to __ASSERT
DEBUG isn't tied to any config option. Just use assertions.
Most of the time return values aren't being checked anyway.

Change-Id: I7457dcf00e18505bd6bcd98d46288545c03b5fbc
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-08 21:45:07 -05:00
Andrew Boie
9fc3afc339 x86: rebase priority levels
Having priority levels 0 and 1 reserved on x86 due to implementation
details on how the CPU uses the vector table is confusing to users,
and makes it unnecessarily difficult to share drivers between arches.

Now on x86, priority levels 0 and 1 are available. Semantically, all
priority levels have had 2 subtracted from them.

It is no longer necessary to specify a priority level when the
vector itself is specified. If an IDT entry has a specific vector
associated with it, any priority argument is simply ignored.

In gen_idt, some simplifications have been made:
- The printed representation of a generated entry now fits on one line
- Some checks being done in validate_priority() were redundant, as
  generate_interrupt_vector_bitmap() also ensures that there are
  sufficient free vectors within a priority level.

Change-Id: I26669d8ee0a53f48fbc2283490a8c42d8b1daf8e
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
4f88ff49e1 spi: dw: Improve debug output
Available only when CONFIG_SPI_DEBUG is set:
- Print out all exported functions with relevant infos
- Remove superfluous messages
- Make counter in push/pull not being instanciated when not debugging

Change-Id: Iaa96a897008d360a14bc83da54152c264f42c60d
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
6ba201e288 spi: dw: If an error occurs, nothing should prevent to stop
It's a bug that did not happen, but is a valid one:
if there is an error, we should not care at all about current stage of
transmission, thus it will stop right away.

Change-Id: Iec2b519d8118233f570ded18d6c6eb4084371e5b
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
ca37a84c66 cc2520: Rework the logic of reading packets
This helps saving stack but also fixes an error when unrelevant packet
detection is made and thus calls read_packet recursively.

Change-Id: I5c1130a369b573f204f30230417e5bcbb97257bc
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
2a196eca8a cc2520: Reinstate the radio locking/unlocking logic
Original mechanism was useless, but it was due to the fact prototype
code was purely polling-based. Now that we are back to interrupt mode
only, it's actually required. It's done a different way than original
though as it was really redundant, and sometimes bogus (no release).

Change-Id: I36b55b072564ee2f9d331f49c69751d9d274bab2
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:45:07 -05:00
Jesus Sanchez-Palencia
636c46ce48 cc2520: Parametrize driver configs
The radio driver was using DW spi and gpio drivers hardcoded.
Now it will check if SPI_DW or SPI_QMSI is set.

Change-Id: I4e12ef7c071058218c1cc714c62fed90a9f5eb06
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
2016-02-08 21:45:07 -05:00
Andrew Boie
14308a9621 device: add DEVICE_DECLARE()
If an init or config function needs to configure a static interrupt or
otherwise do something that requires a build time reference to
a device with DEVICE_GET(), there is a dependency issue that so
far is usually resolved with a forward prototype of the init function.

In addition, there currently isn't a good way to declare a device in
a header so that DEVICE_GET() can be used in a different C file.

This patch should resolve both of these problems; the data structure
defined for the device is no longer static (the names have to be unique
anyway), and in cases where we need a forward declaration so that
DEVICE_GET() can be used, we have a new DEVICE_DECLARE() macro which
does this.

Change-Id: Ie8d53d0c344f61a130c735c86473562820190d70
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-08 21:45:07 -05:00
Vinicius Costa Gomes
42a8032fd9 samples: Add a sample SPI application for W25Q80BL
W25Q80BL is the SPI flash chip soldered on the Quark SE development
board, for communicating with it, having support for using GPIO as Chip
Select is necessary, so it will be useful when testing that feature.

Change-Id: Idbf571cdb3b1ae8704d7a932bc0ac56dc53f8ff1
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
2016-02-08 21:45:07 -05:00
Vinicius Costa Gomes
cedfb1f16e samples: spi_test: Add support for using QMSI driver
Depending on the driver implementation, the name of the device will be
different.

Change-Id: I35395abe44727b39d930e4c123860fad7b13edfd
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
2016-02-08 21:45:07 -05:00
Andrew Boie
6e83effea8 iamcu: fix dynamic exceptions
The argument to _common_dynamic_exc_handler() in the C domain
was still being set up the Sys V way. Arguments are popped off the
stack in reverse order, so _ExcEnt pushes *pEsf for arg 2, and then
the stub pushes the stub_num for Arg 1.

For IAMCU case, *pEsf is placed in EAX which is where argument 1
lives; static exception handlers take just one argument. However
since we're calling _common_dynamic_exc_handler we also need to
supply the stub_id, which we put in EDX (where arg 2 goes).

Rather than swapping things around at runtime the prototype for
_common_dynamic_exc_handler() is adjusted to fit the calling
convention in use.

Change-Id: Id43cbc3b86d90f941cea771678b2796ae5f1358d
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-08 21:45:07 -05:00
Daniel Leung
9d727d8bdb doc/boards: updates arduino_due for supported features...
... and adds a note about terminal and flashing.

Change-Id: I9b3fe9a8e9993ee68612d177aa4163fcf15e912d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-08 21:45:07 -05:00
Daniel Leung
8d48828b3c i2c: adds driver for Atmel SAM3
Adds the driver to utilize the I2C/TWI interface on Atmel SAM3
family processors for I2C communication.

Note that this currently only supports master mode. Limited
testing has been done using the Fujitsu FRAM sample app.

Change-Id: Ibdb8277e47dd9450b49a66a95421eb1ffb1c4eb4
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-08 21:45:07 -05:00
Daniel Leung
aac003c0b1 boards/arduino_due: enable both I2C controllers if CONFIG_I2C=y
Change-Id: I24e510369e1b273e929acd4100366a239e708e4d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-08 21:45:07 -05:00
Daniel Leung
dc8ddfcd1d arm/atmel_sam3: add PDC register struct
Adds the struct to describe PDC (Peripheral DMA Controller).
The PDC is being used by peripherals to initiate DMA
transfers.

Change-Id: Ida2a20810c4f2ef972e9669c45e22da07c1576ab
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
aa36b31091 cc2520: GPIO should trigger on edge and not level
Using level will just flood the handler, as the concerned gpio pins
stays on level for some time.

Change-Id: I991d818783170b09c326350c04bb588c7324892c
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:45:07 -05:00
Tomasz Bursztyka
3873aed032 cc2520: Reading incoming packet cannot be done under ISR context
As the GPIO callback is ran into ISR context, it's thus impossible to
start SPI transactions as these are interrupt based as well. Thus
forwarding the packet reading to an internal fiber.

If CONFIG_INIT_STACKS is set as well as debug mode, it will print out
the usage of the stack after each loop in read_packet().

CC2520 internal fiber stack size is set via Kconfig option, where the
default is set to 640 bytes. At this stage, this value cannot be fixed
so it's more flexible to be able to tweak it from a Kconfig option
rather than tweaking the source code.

Change-Id: I54138c4d1e66f6775b1ae0248574ac8eb5e44f3d
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-08 21:44:54 -05:00
Anas Nashif
027b69e0d5 Zephyr v1.0.0
Change-Id: I977bd0705a901440221010b577beec784f16a566
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-08 21:32:24 -05:00
Genaro Saucedo Tejada
f0a7bf801e doc: Linux Foundation registration steps
Updates Set Up steps from previous 01.org Gerrit to new Linux Foundation one.

Change-Id: Iab98864b405ff6dc4ea20d687fae77bd59284678
Signed-off-by: Genaro Saucedo Tejada <genaro.saucedo.tejada@intel.com>
2016-02-08 20:17:17 -05:00
Javier B Perez
22d0af20c6 doc: gerrit: update gerrit links and screen shots with LF infra
Updated all the links and references for gerrit to the new gerrit
in LF. Also updated the screenshots to show the new gerrit and
project name.

Change-Id: If56b230379fad4de58032f9d729e6a94f27389ed
Signed-off-by: Javier B Perez <javier.b.perez.hernandez@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-08 20:09:05 -05:00
Dan Kalowsky
a97c9bce4a lib : tinycrypt : Adding README for external library
Adding in a README file for the external library of TinyCrypt providing
details for origin, commit id, and where to find the original.

Source: Original to Zephyr Project

Change-Id: Ibc7ec33f7f459e8df88978b5b4505e67a2141998
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-08 20:09:04 -05:00
Rodrigo Caballero
26bd7d6b43 doc: Fix headings in master index file.
Search engines recommend having only one heading on level 1.
Modified the headings in the documentation index file to
follow the recommendation and help ensure that search engines
place Zephyr higher on their results lists.

Change-Id: I5590138f88721d1f2cdcbb49ad2aaad1d2dcd466
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-08 16:16:59 -05:00
Genaro Saucedo Tejada
940e34d542 doc: Change 01.org to Linux Foundation
Updates files that were previously referencing the no longer in use
01.org infrastructure, now it we refer Linux Foundation name and have
updated links.

Change-Id: I9d03d7c23f855390f74219dbf1617fde1d58b33b
Signed-off-by: Genaro Saucedo Tejada <genaro.saucedo.tejada@intel.com>
2016-02-08 16:16:59 -05:00
Gerardo Aceves
7c9e4990a2 doc: Fixed consistency issues
Fixed file's reference label.
Fixed cross-reference labels.

Change-Id: Id397aa9a142c692f4e2e552c9bebff626e4692a0
Signed-off-by: Gerardo Aceves <gerardo.aceves@intel.com>
2016-02-08 16:16:59 -05:00
Rodrigo Caballero
776df4adbe doc: Fix headings with the correct level.
Removed a repeated heading and set the ther headings
with the correct level.

Change-Id: Ief8b2f9a7f88d0b6c2456d6ae448e86bb0b8d050
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-08 16:16:59 -05:00
Rodrigo Caballero
c0871e4b91 doc: Change link in README to external link.
Changed the link to the ReST documentation to a external link for reusability.

Change-Id: Ia575717c0fb92672828bb11854c9a8a1268af464
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-08 16:16:59 -05:00
Rodrigo Caballero
40df7fcf41 doc: Remove Sphinx markup from README
Removes the Sphinx specific ReST Markup from th README.rst file.
This allows basic ReST converters to render the README without
markup showing raw.

Change-Id: I9f31afb953802119939d177524c0d283414c3a48
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-08 16:16:59 -05:00
Dan Kalowsky
ef79b12fcf doc : gerrit : sentence correction
Fixing the minor language issue.

Change-Id: Ic9dd55e2604fde3c30f4bda65668401de037fc4b
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-08 16:16:59 -05:00
Dan Kalowsky
164051f065 doc : gerrit : commit message formats
Adding documentation on best practices for a commit message.

Change-Id: I354fc13f641bc93c8fd82aca6310d488ffc30f24
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-08 16:16:59 -05:00
Dan Kalowsky
58d39653dc doc : gerrit_pracitces : fix line lengths
gerrit_practices.rst has style and formatting issues.  Bringing them back
in line with the recommended practices of the project.

Change-Id: If76406e046ab376cea3e14c0e490e38587b34e6d
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-08 16:16:59 -05:00
Javier B Perez
108aaf89ec compare footprint: fixed script to run in bash shell only
When you run the script in another console, no bash, the script
won't be able to run the sanitycheck due to the source.

Change-Id: I89d1f0a4e0ae9f8b0bf0cea77e3752c5a1012840
Signed-off-by: Javier B Perez <javier.b.perez.hernandez@intel.com>
2016-02-08 09:19:19 -06:00
Anas Nashif
492d67a95d Zephyr v0.9.0
Change-Id: I1b734c929a0d16d5cc1949b22731d0730141d065
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:25:33 -05:00
Anas Nashif
b14104f81a sanitycheck: update footprint data for release
Change-Id: I1c9a1a18c04ca449a7cc398c5c6487979270e11e
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:25:33 -05:00
L.S. Cook
085acb8ea7 doc: nav for supported boards simplified
Supported platforms section (platforms.rst) renamed to "boards.rst"
and broke into two tables instead of one (x86 arch and ARM arch).
Developer feedback was that navigating for board config options
by board architectures should be made easier.

Also updated index w/TOC to make supported board details
easier to find.

Change-Id: Ic014a720fd33ee685bde5809dc5b9e0622f5e989
Signed-off-by: L.S. Cook <leonax.cook@intel.com>
2016-02-05 20:25:33 -05:00
Johan Hedberg
242501cd60 drivers/nble: Increase rx stack size
Since application callbacks happen from the rx thread we cannot have
the stack as small as just 256 bytes. Make it 2kB for now, but later
this needs to be adjusted to some reasonable minimum with the help of
the stack analysis code, and then probably accompanied by a Kconfig
option for apps to increase if if needed.

Change-Id: Ie8e2ac41701101b874378ded1435a6fb06bae497
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-05 20:25:33 -05:00
Andrei Emeltchenko
d4bb288f7b drivers/nble: Style fixes
Fixes some styles and removes p_buf from debug log.

Change-Id: I861c2c250d8478353f8272e9c59c06f9fc211036
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:25:33 -05:00