Introduce the GPIO QMSI-based implementation. This is basically a
shim layer that implement's Zephyr's GPIO APIs on top of QMSI drivers.
This is an alternative driver that conflicts with the previous
GPIO_DW implementation. In order to enable it you must set:
- CONFIG_GPIO=n
- CONFIG_GPIO_QMSI=y
- CONFIG_GPIO_0=y
- CONFIG_QMSI_DRIVERS=y
- CONFIG_QMSI_INTALL_PATH="PATH_TO_QMSI"
Note that this driver currently only supports one controller instance,
GPIO_0. It is implemented this way due to a limitation from the current
version of QMSI. QMSI versions later than 1.0 doesn't have this
limitation.
Missing:
- support multiple controller instances (gpio_0, gpio_1, etc);
- enable level triggered interrupts in sync with system clock,
through setting INT_CLOCK_SYNC properly.
Change-Id: Ib61b153dae9741806a9a31d7dc1f82b96d000fbe
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
- Sample application now pulls data continuously.
- Adds information on the arduino analog input pins and ADC channels.
- CHANNEL is defined as a macro.
- BUFFER_SIZE is defined as a macro.
- Sets the sample to run on repetitive mode on ARC architectures
(applies to Arduino 101 ADC).
Change-Id: I6201fea3a98b5394c05eb3ac570793629431ac02
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Quark SE SS provides 2 valid GPIO controllers, thus enabling the built
test case for it.
Change-Id: I46c6ceb3d4fe78a87c095e24851d289720524a9c
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
We can save a great deal of RAM this way, it only needs to be
in RAM if dynamic interrupts are in use.
At some point this config option broke, probably when static
interrupts were introduced into the system.
To induce build (instead of runtime) errors when irq_connect_dynamic()
is used without putting the table in RAM, the dynamic interrupt
functions are now conditionally compiled.
Change-Id: I4860508746fd375d189390163876c59b6c544c9a
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This is a sample app to interface with TI INA219 power monitor.
The values used in the app are for use on Adafruit's breakout board
(https://www.adafruit.com/products/904).
This assumes the slave address is 0x40, where A0 and A1 are all
tied to ground.
Change-Id: I4116629171a98be6f2b9aa422dd3eb386b4d59c2
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This is being removed for a few reasons:
- AFAICT this is the only API in Zephyr that follows an allocate/free
model.
- There are no public APIs in the interrupt subsystem for releasing
or reconfiguring an interrupt. This code was relying on arch-specific
private APIs. If we really want to keep this capability we should
make these APIs public and consistent across arches.
- The use-case for this API is not clear, as Zephyr is not intended
for hot-pluggable peripherals. Built-in hardware tends to need its
interrupt for its entire life cycle.
- The current implementation of dynamic interrupts on x86 does not
support freeing a dynamic IRQ that was reserved with
irq_connect_dynamic(), causing this code not to work. To add this
would require reimplementing _get_dynamic_stub() to use a bitfield
or set of bitfields to track unused stubs rather than the simple
counter it uses now.
Change-Id: I7a03c134fb3498b91a1816318a88b293e26b846c
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
nble sample is a copy of peripheral sample which now has support for
testing nble driver so a dedicated application just for that is no
longer needed.
Change-Id: Ia8ea2262fc2472a54c81b90eb86d9c0d4b12f42d
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This adds a test case that passes prj_nble.conf as CONF_FILE so that
the same code tested using HCI Bluetooth driver is also tested using
NBLE driver.
Change-Id: Ia4ad59d74b82c02007c55ea4fa8f53833d7a7fe5
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This makes it easier to port samples which may use
CONFIG_BLUETOOTH_MAX_PAIRED.
Change-Id: I3e37df7cae63a4ac2219ce26408ae4d4f987645d
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This make more sense since the handles are normally self allocated by
the stack.
Change-Id: I198dd9c3ef6259cff8a0e528514918ec18990dea
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
There is no need to keep arch specific prj.conf for these samples are
they are always the same.
Change-Id: I0f93b5a47458f9800a6654cc45914b911b42b3e3
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
These commmands don't have to return ATT error code, because
status BTP status is sufficient.
Change-Id: I5405bfbc0ad6fbac46eb3dab1ee63d3e18bf38fc
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
This patch adds implementation of handlers for Configure Notifications
and Configure Notifications BTP commands.
Change-Id: I92c40836c09e145ea405226f321dd752ac16fc9f
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
This patch adds noifications and indications commands and event
related structure defines to the tester application.
Change-Id: I532ab6471d2e7671213bfa526e7261308dd4b2f6
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
Enable seems to be more appropriate than Toggle.
Change-Id: I69ef509c47ddd7b76bc16684af60821328a7c647
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
Adjust printing bluetooth address in auth_cancel() user callback.
Change-Id: Ic39eeac36394d73eaee27c04bcad17e32704bbe7
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
_next member, as the name suggest, is internal and shall not be used by
application directly instead application must use bt_gatt_attr_next.
Change-Id: I7c137eae555475d024098cd14a54d965cb397eae
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Let us know that bt_enable() is successful.
Change-Id: I70581d950a9a922e809804bacfbfa039b2fec2fe
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
This makes sure the code behind CONFIG_BLUETOOTH_GATT_DYNAMIC_DB builds
properly and sanity_check is able to detect problems whenever there is
a change affecting it.
Change-Id: If46d1d9723f9daa494611e5a1799afd943e6519c
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This enable applications to build with a single table representing the
database where attributes don't have to store a pointer to the next
attribute thus reducing its size.
Change-Id: I4c84e2d50f9088a2f9879068890f0646e586e007
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Disabling ARC core allows to flash only lakemont and decrease unneeded
debug output.
Change-Id: Ifb913274302d7c69f1fb9c2e1747742d7a810627
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Test Nordic BLE on platforms which has support for it, at least we
need a UART configured to be connected to the chip.
Change-Id: I040fbb33436ae6bf973b521d52bf7b971993559a
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
All of the authentication APIs deal with bt_conn objects. For
consistency it makes therefore sense to use the proper bt_conn name
space with them.
Change-Id: I47912d542373df511524cc6ad2532d6c9a76ca68
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This is needed for GATT Server tests to implement larger attribute
databases.
Change-Id: Id160ac81b3e393697bdacd3e19033e9ff7c10fde
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
This is essential so that the application can be notified of
connection failures and also be able to know the reason for the
disconnection.
Change-Id: I30108958963f6aeac690612bb26738dc4c67ca80
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Update the advertising API according to what has recently been
discussed and agreed upon.
Naming-wise the most important change is the removal of "EIR" which
was confusing since this is mainly used with LE at the moment. The
Core Specification Supplement consistently uses the generic terms data
and data type to describe what we're dealing with here, so the new
names are bt_data and BT_DATA.
Another change is to detach the actual data from the struct by
converting it from an array to a pointer. This is not only essential
for supporting BR/EDR (which has a different length) but to also
minimize memory usage.
Another change is to require the caller of bt_le_adv_start() to
provide the array lengths of the ad and sd paramters. This way we
don't have to have the empty (8-byte) element at the end of each
array.
Lastly, the bt_le_adv_start() logic is slightly modified so that it
will always clear the respective data if necessary. Previously the
user might have been left with a previous callers data if it passed
NULL to the API.
Change-Id: I318026ceb1b52bb688edf4dcfed82613bd15c3e1
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Uses proper bluetooth address during printing to standard output
when monitors connected, disconnected and security changed states
based on established connection transport type.
Change-Id: I87b54ee619c329ffa645bfbb5e453cf673b93181
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
Change default board for nble app to arduino_101
Change-Id: I5f8cd57c9834e38125d9e17cd4c3a96427db702a
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
If device is operating in security mode 3 PIN request callback
is called before connected.
Change-Id: Ie36363ae7af2398276f9cc4d07126344588b9ae6
Signed-off-by: Szymon Janc <ext.szymon.janc@tieto.com>
This is almost exactly the same as the peripheral app, except that it
uses CONFIG_NBLE.
Change-Id: Ia6854bce2a0babd03a3ce3251a173ce7ddbfe374
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Unified bluetooth address types will simplify tester code.
Change-Id: I6d973ff05a8a8dcabb12c9543cd4d747db3e6680
Signed-off-by: Grzegorz Kolodziejczyk <grzegorz.kolodziejczyk@tieto.com>
Emulation is not supported on basic_minuteia, only qemu_86
supports emulation.
Change-Id: Id1adc6db02aa22c86207db77fb16ac7548e09dac
Signed-off-by: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com>
Intentionally only one CCC descriptor will be added to the database.
It's because this meets the conditions to pass PTS tests.
Change-Id: Ic29608e5a9fb4cee0c576d149e5dd26498b365ed
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
The driver has to implement the logic in an interrupt based manner.
Applying the changes to the existing drivers.
Changing ADC's API and implementation as well to follow those changes.
Change-Id: Ie0c3e3e318f619ade6be935adb064a25446cc29c
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
The interrupt API has been redesigned:
- irq_connect() for dynamic interrupts renamed to irq_connect_dynamic().
It will be used in situations where the new static irq_connect()
won't work, i.e. the value of arguments can't be computed at build time
- a new API for static interrupts replaces irq_connect(). it is used
exactly the same way as its dynamic counterpart. The old static irq
macros will be removed
- Separate stub assembly files are no longer needed as the stubs are now
generated inline with irq_connect()
ReST documentation updated for the changed API. Some detail about the
IDT in ROM added, and an oblique reference to the internal-only
_irq_handler_set() API removed; we don't talk about internal APIs in
the official documentation.
Change-Id: I280519993da0e0fe671eb537a876f67de33d3cd4
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Remove architecture config files and have just one, they are the same
now.
Change-Id: I6d719d5409569ae8e741fce20e90e16efa701385
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Instead of relying on the Kconfig variables use a common scheme for
naming i2c devices and use it directly in application.
Change-Id: I745af68d7c1767cc8a24f9655fa45fa33f6baf93
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This patch introduces the 'QMSI RTC device driver' which is simply a shim
driver based on RTC driver provided by QMSI BSP.
Some config options are independent of the driver implementation used,
so use a consistent name for them. In this case RTC Interrupt number and
Priority use the same config options for both the QMSI and DesignWare
drivers.
In order to enable this driver, the following options should be set:
CONFIG_QMSI_DRIVERS=y
CONFIG_QMSI_INSTALL_PATH="/path/to/libqmsi/directory"
CONFIG_RTC=y
CONFIG_RTC_QMSI=y
Change-Id: I48292406e5472e5786f3b9abbeb71016a273bfec
Signed-off-by: Andre Guedes <andre.guedes@intel.com>
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
uart.h may include pci/pci.h, so add drivers/ to the include search
path.
Change-Id: Ic48a88c97c45e805ee7aec1df884cdb60d6fa33a
Signed-off-by: Ido Yariv <idox.yariv@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Ido Yariv <ido@wizery.com>
This adds the config file for x86 based platforms.
Also, it no longer clears the screen at each counter update,
as the app is writing the same amount of characters anyway.
This gets rid of the screen flickering.
Change-Id: I1db6dd4b7978b764b7538e120354fc5d010df283
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This extends the i2c_fujitsu_fram sample app to do multi-bytes.
Change-Id: I20ea0e08c340cf94158ad521c27d5315e522b6de
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This adds the config file to build for x86-based platforms.
Change-Id: I42c32966507ba822726834a200edd079c90cc96b
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Make the i2c_transfer() to transact messages through the I2C bus.
It is useful for I2C storage devices, as now we can send one message
containing the destination byte/block address, then send the data
in another message. There is no need to construct one continuous
data buffer to send both address and data anymore.
The drivers and sample apps have been updated to utilize updated
API when appropriate. For i2c_dw, only master mode has been updated.
Slave mode will be updated once we can adequately test it.
Change-Id: I0a811d60567367817fcc8d15f5454e5c933722e2
Signed-off-by: Daniel Leung <daniel.leung@intel.com>