Commit graph

18576 commits

Author SHA1 Message Date
Allan Stephens
8d85985d87 doc: Enhance section on nanokernel FIFO objects
Provides additional details about the use of nanokernel FIFOs,
following the standard format now being used for kernel object types.

Change-Id: Ic6828c1730d160f79ae51ebf004d6af2e7adb7af
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
d6ddf7bf4e ia32: Add UART configuration option
UART uses level triggered interrupt, low level

Change-Id: I7c3257aca00c559bb0d9ac48571bf9ed67d5aa23
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
728a068d7e galileo: Add UART interrupt configuration option
Change-Id: I7d8a3cf06625b6592e5ce7abbbd8e4e249bb5822
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
69871aaecc uart: Configure ioapic for UART interrupts
Follow similar configuration for other platforms.

Change-Id: I1478d10799cbb375c715bed4d30d1bcf223d282f
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
672022d920 uart: Use standard config based ioapic configuration
Follow other boards configuration method.

Change-Id: I045f9bbeb3d7d0a0ed1abe76c33be93dade07b9e
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
7373f784f0 platform_config: Remove unneeded check
CONFIG_UART_CONSOLE is already checked so this one is not needed.

Change-Id: I557880bd190f4ef0b7e439520991669354bb3b4f
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Andrei Emeltchenko
41f1fe3571 system: Remove unused IOAPIC serial configuration
Change-Id: I90017525b8fae661856cfdbc13612f37a6d9ea11
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
c75bf6275d arch: Add gpio support for ia32_pci
Change-Id: I45900966367beea7d74e4f54cb33b6ad272f9f24
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
eb6ed6bb0d gpio: Enable PCI support for the designware gpio driver
This will enable the possibility to use this driver with Quark X1000.

Change-Id: Ic40b750d608488e97cc7662cad6c6d66dbf428ab
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
e7c8bf43ac gpio: Make use of sys_io functions in gpio-dw driver
Just to align the code to generic memory mapped registers and bit
operations functions.

Change-Id: I0fe8b3b6687670d0ed0daffe52645ec2c6b4c674
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Anas Nashif
2b6ded2b7f gpio: declare api function struct as static
Change-Id: I04ce07587845a6db555f4033b3a6f2d2c622fe57
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:32 -05:00
Juan Manuel Cruz
5ad14313bc gpio: Fix designware's driver set bit function
This commit fixes the set bit function.
If the value to set is different from zero, then
the indicated bit will be set.

Change-Id: I9c42f683d108b371ca821f446ac5a10541b89b9f
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:15:32 -05:00
Dirk Brandewie
77a78f0827 gpio: Add driver for Synopsys DesignWare GPIO devices
[DL: captilize commit message title; fixed some whitespaces;
     changed the __initconfig_gpio_* from level 0 to level 1,
     which is the level of pure_init; and added include path
     to board.h; ]

Change-Id: I7eea6a6ca9e4b7cf8d1ccabb57f07f786da93ef0
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
1e39d6274b uart: Properly integrate driver config within PCI context
- Makes the code simpler in driver side
- Configuration is done on platform's config.c file and not the driver
- Handles CONFIG_PCI_ENUMERATION setting

Change-Id: I9b8376cebd7e0b62279251da132a2c4ee7b2e148
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
e4479cd0cf spi: Handle the support for PCI_ENUMERATION
Without it, it won't go through a pci scan, and will just trust the
pre-set information for the bus/dev/function to enable the memory
mapped registers.

Change-Id: Ica9156be541619dce9684dd45f70e05b69782a7c
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
ff3f81b44c pci: Make use of pci_show without #ifdef
This will make code that use it not too crowded with #ifdef #endif

Change-Id: Iec0fa662445b1cefdc7c64d9483e1ae483106a90
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
018bcfe8d4 pci: Add an option for enumerating PCI devices
This option will be used to disable PCI enumeration (not PCI bus) to
gain in code size and execution as long as driver will be properly
configured statically. Thus setting this option as set by default.

Change-Id: I7da5d154c8ee89e44fc2bad8e85a5a20f498927e
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
3e32b29f57 spi: Fix the case when PCI is not in use on intel driver
Change-Id: Id1c5f259e6788d8cba024139e710db9c9d78d943
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:32 -05:00
Peter Mitsis
3d2f48b68f doc: Add missing Usage section title
Change-Id: I2533bd7f16ad1e3ba44f9c0c282067dc82d33c26
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:15:32 -05:00
Peter Mitsis
b20adcc0d1 doc: Add nanokernel LIFO code samples
Adds examples showing how to ...
 1. initialize a nanokernel LIFO
 2. write to a nanokernel LIFO
 3. read from a nanokernel LIFO

Change-Id: I8b3646a3712b0aa3b5d3e432bdba63464753a6b5
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:15:32 -05:00
Peter Mitsis
d4dd9842e6 doc: remove extra closing brace in code example
Change-Id: I0286800966a0e3f41874db9ccf1c31afedd76d1e
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:15:32 -05:00
Jukka Rissanen
efed446bee libc: Add memchr implementation
Needed by CoAP implementation in net/ip/er-coap

Change-Id: I724bc7569a29c35f386bbc301d883a000882de78
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2016-02-05 20:15:32 -05:00
Allan Stephens
60bd3c7d3a doc: Add section on nanokernel application use of tasks
Adds a short section describing the nanokernel's background task.
This section is modelled on the section for microkernel tasks,
but excludes areas that aren't applicable to the background task.

Change-Id: Id209bad8ada222347cfcd01a3c822ca486bb48db
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:15:32 -05:00
Allan Stephens
2aeff35a1c doc: Add section on microkernel application use of fibers
Adds a short section to make clear that microkernel applications
can utilize fibers, and can even use them with a few microkernel
object types. Revises some link names to account for the fact that
there are now 2 sections describing fiber services.

Change-Id: I5960aea8b3959bb4a383f919882419effff5917d
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:15:32 -05:00
Allan Stephens
f808c1c9a5 doc: Enhance information about microkernel FIFOs
Revises description to follow the pattern used for other microkernel
object types. Expands the description to provide additional useful
details about the operation and use of FIFOs.

Change-Id: If4d84c301922158c2c7cae26cb1520294397876a
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:15:32 -05:00
Allan Stephens
88a4ba1a35 doc: Enhance information about microkernel tasks
Revises description to follow the pattern used for other microkernel
documentation sections. Revises the description to provide additional
important information, and to leave out information that isn't really
useful to application developers.

Change-Id: I4eac50bbb597258baf199ede925f14097f9ec75a
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:15:32 -05:00
Tomasz Bursztyka
7ea05b4a09 sys_io: Implement the API for ARC architecture
sys_in/sys_out are not implemented as there is no "ports" in ARC.

Change-Id: Ie72d6274ae1a2b2ca22955a9764e281e7669b973
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
e4fe55c8e8 add script to build grub for galileo
This script will download and build grub.efi which can
be used on galileo for booting Zephyr.

Change-Id: Iba8777ae3868befa3bcd3972813779dbecd9c947
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
9b9ab3767a make sed happy on OSX when invoked with -i
Change-Id: I6180aedf11ec68e9698e48c612d202e39eaa3adf
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
9c72cf542e portability: echo -n fails on the mac
Change-Id: If5973f80b6fa97e19e31e8a6b7c16b6aa78d2450
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
bd2274813d use gen_offset_header to generate offsets.h
Using nm and sed works fine on Linux, however when moving to other
platforms, nm and sed do not work the same way and might have
different behaviour. This reduces dependency on host tools and brings
back the code for generating the offsets.h directly using a built
utility that is portable.

Change-Id: I13db1c16cbed12e366fd41d151886bbcbf419548
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Daniel Leung
5f353e0e94 spi: change inline functions to static inline
When compiling with optimization level 0 (-O0), the linker complains
about missing references to uart functions. This is due to compiler
treating this functions as extern, since -O0 disables function inlining,
as described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49653

So change the declaration to static inline.

Change-Id: I2b75e686961878f299bb951b5a420f9738594795
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:15:31 -05:00
Daniel Leung
03066f26d8 gpio: change inline functions to static inline
When compiling with optimization level 0 (-O0), the linker complains
about missing references to uart functions. This is due to compiler
treating this functions as extern, since -O0 disables function inlining,
as described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49653

So change the declaration to static inline.

Change-Id: Ifd835bf0e667afb1cbf2e76bb490664af87c382d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
d968cacc64 defconfig: Update all defconfigs with new options
Change-Id: I0706039df412400aa538aca8c66de8e98651365a
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Anas Nashif
a5609c8547 Kconfig: contain networking option in menuconfig
The option NET_BUF_SIZE was all over the place due to
missing dependency. Use menuconfig for networking and
put everything inside an  if statement.

Change-Id: Id61d777cd4079a2a0a8975b7f32fdd795557fb3a
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
b34fe53414 Rename microkernel struct field 'MovedReq' to 'moved_req'.
Rename field 'MovedReq' of the struct:
- 'k_args_args' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I3ed7ad0b4fed3791b79ad279ebabf7440b8edf7c
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
f1a4d3af8c Rename microkernel struct field 'Extra' to 'extra'.
Rename field 'Extra' of the struct:
- 'moved_req' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I86a0873122576486602bd18967748748f7abce12
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
f8826db0c6 Rename microkernel struct field 'Setup' to 'setup'.
Rename field 'Setup' of the struct:
- 'moved_req' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I2a3013131595b66508c7a6fb6e4b364ceb06a459
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
a743cf6c08 Rename microkernel struct field 'iTotalSize' to 'total_size'.
Rename field 'iTotalSize' of the struct:
- 'moved_req' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I2422d13699443d9744f882d566da1089943cf3db
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
4e7993961b Rename microkernel struct field 'Action' to 'action'.
Rename field 'Action' of the struct:
- 'moved_req' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I3bf9c0c8142bab4f87d0a6e2b6ffe36fa20cb026
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
09d2e31a14 Rename microkernel struct field 'Sema' to 'sema'.
Rename field 'Sema' of the struct:
- 'moved_req_args_setup' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I0cb8cab6f8f4dab2a93c4bcb0bee6c40dbbf72bc
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
0af44eb7c3 Rename microkernel struct field 'ContRcv' to 'continuation_receive'.
Rename field 'ContRcv' of the struct:
- 'moved_req_args_setup' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: Ic8984aa2ed7e62c2ed7a25e825e32b2c55bb7e5d
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
f6b10449c9 Rename microkernel struct field 'ContSnd' to 'continuation_send'.
Rename field 'ContSnd' of the struct:
- 'moved_req_args_setup' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I2476ad8641819431d13d99f1f55cb80efefa064d
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
97eed65926 Rename microkernel struct field 'iSize' to 'size'.
Rename field 'iSize' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I8463da22f659df7db1419195224f4fd818af1a03
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
d955d9231e Rename microkernel struct field 'ID' to 'id'.
Rename field 'ID' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I090d0954547b80a58307a95433b59a6f5ed9ffe6
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
d2c77a92d4 Rename microkernel struct field 'pReader' to 'reader_ptr'.
Rename field 'pReader' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: Ic6f6c042bdf392c8ccbd407f57cc520fcf6f5f0e
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
ad9fd3419f Rename microkernel struct field 'pWriter' to 'writer_ptr'.
Rename field 'pWriter' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: Idc2530faa4c288e9679d65f66809ceff7f7d6d59
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
cbaab8a933 Rename microkernel struct field 'XferType' to 'xfer_type'.
Rename field 'XferType' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: Id7097fa65f54e12840b5dd78eaa8991aea8e225c
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
58cee9eab7 Rename microkernel struct field 'pPipe' to 'pipe_ptr'.
Rename field 'pPipe' of the struct:
- '_pipe_xfer_ack_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: I78c7343e79f25363ba0678f0d1913e5210ac4c77
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00
Yonattan Louise
d0e04a1883 Rename microkernel struct field 'iNbrPendXfers' to 'num_pending_xfers'.
Rename field 'iNbrPendXfers' of the struct:
- '_pipe_xfer_req_arg' in the file kernel/microkernel/include/micro_private_types.h

Change-Id: Ie9b4743165ad27ac07e93d7bd8328aba44cf5e89
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:15:31 -05:00