Date   

Re: Eddystone TLM

Luiz Augusto von Dentz
 

Hi Marcio,

Well I don't think the HCI interface, up to 4.2, offers this kind of
interface, it does have commands to set the AD and then enable it but
the link layer don't tell us exactly when the advertisement is sent
over the air.

There is perhaps some ways to build around with new commands added in
Bluetooth 5.0, for example there is LE Advertising Set Terminated
Event which we might support eventually but it would probably require
some API changes, or adding a new ones, to deal with multiple
advertisement instances, etc.

On Mon, Dec 19, 2016 at 12:19 PM, Marcio Montenegro <mtuxpe(a)gmail.com> wrote:
Hi all,
It´s easy to build TLM eddsytone package for Zephyr,
Unfortunately the data payload inside eddystone TLM is not fixed. ADV_CNT is
incremented after advertising and SEC_CNT is incremented after 0.1 second.
After calling bt_le_adv_start() I can´t find information if the last data
was transmitted and when the stack is ready for new data.
Is there any notification from radio on zephyr kernel ? If not any
suggestion of how notification or other solution can be implemented ?
Regards,

https://github.com/google/eddystone/blob/master/eddystone-tlm/tlm-plain.md
--
Luiz Augusto von Dentz


Eddystone TLM

Marcio Montenegro
 

Hi all,
It´s easy to build TLM eddsytone package for Zephyr,
Unfortunately the data payload inside eddystone TLM is not fixed. ADV_CNT
is incremented after advertising and SEC_CNT is incremented after 0.1
second.
After calling bt_le_adv_start() I can´t find information if the last
data was transmitted and when the stack is ready for new data.
Is there any notification from radio on zephyr kernel ? If not any
suggestion of how notification or other solution can be implemented ?
Regards,

*https://github.com/google/eddystone/blob/master/eddystone-tlm/tlm-plain.md
<https://github.com/google/eddystone/blob/master/eddystone-tlm/tlm-plain.md>*


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 6
[ZEP-1464] Review files in source tree and add missing licences
https://jira.zephyrproject.org/browse/ZEP-1464

[ZEP-1466] Memory Protection Unit Support
https://jira.zephyrproject.org/browse/ZEP-1466

[ZEP-1461] Add zephyr support to openocd upstream
https://jira.zephyrproject.org/browse/ZEP-1461

[ZEP-1463] Add Zephyr Support in segger SystemView
https://jira.zephyrproject.org/browse/ZEP-1463

[ZEP-1465] Daily Fossology builds to check for licensing issues and violations
https://jira.zephyrproject.org/browse/ZEP-1465

[ZEP-1467] Cleanup misc/ and move features to subsystems in subsys/
https://jira.zephyrproject.org/browse/ZEP-1467


UPDATED JIRA items within last 24 hours: 2
[ZEP-931] Finalize kernel file naming & locations
https://jira.zephyrproject.org/browse/ZEP-931

[ZEP-630] Features support matrix for supported boards
https://jira.zephyrproject.org/browse/ZEP-630


CLOSED JIRA items within last 24 hours: 2
[ZEP-1308] (Fixed) zephyr thread function k_sleep does'nt work with nrf51822
https://jira.zephyrproject.org/browse/ZEP-1308

[ZEP-1357] (Fixed) iot/dns: Client is broken
https://jira.zephyrproject.org/browse/ZEP-1357


RESOLVED JIRA items within last 24 hours: 0


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/9214 : x86: remove nano/micro wording
- https://gerrit.zephyrproject.org/r/9213 : scripts: fixed typo swab->swap
- https://gerrit.zephyrproject.org/r/9199 : logging: move sys_log to subsys/logging
- https://gerrit.zephyrproject.org/r/9212 : logging: fix ring buffer usage and initialize variables.
- https://gerrit.zephyrproject.org/r/9210 : kconfig: group options into menus
- https://gerrit.zephyrproject.org/r/9207 : x86: remove obsolete comment about tasks/fibers
- https://gerrit.zephyrproject.org/r/9195 : kernel: kconfig: move event logger options into file
- https://gerrit.zephyrproject.org/r/9206 : kernel: fixed description of THREAD_CUSTOM_DATA
- https://gerrit.zephyrproject.org/r/9196 : kernel: kconfig: move power management options out
- https://gerrit.zephyrproject.org/r/9198 : doc: rename shell section to simply: Shell
- https://gerrit.zephyrproject.org/r/9209 : kernel: move kernel code to kernel/ directly
- https://gerrit.zephyrproject.org/r/9193 : kernel: Isolate logger options
- https://gerrit.zephyrproject.org/r/9204 : debug: fixed style and align code
- https://gerrit.zephyrproject.org/r/9208 : kernel: merge kernel Kconfigs into one
- https://gerrit.zephyrproject.org/r/9205 : object_tracing: fixed style
- https://gerrit.zephyrproject.org/r/9197 : kconfig: remove unused TASK_DEBUG options
- https://gerrit.zephyrproject.org/r/9194 : kernel: kconfig: replace task/fiber with threads
- https://gerrit.zephyrproject.org/r/9203 : debug: move debug features from misc to subsys/debug
- https://gerrit.zephyrproject.org/r/9211 : tracing: rename CONFIG_DEBUG_TRACING_KERNEL_OBJECTS
- https://gerrit.zephyrproject.org/r/9192 : kernel: rename NANOKERNEL_TICKLESS_IDLE_SUPPORTED

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/8960 : gpio: added support for the pulpino GPIO controller driver
- https://gerrit.zephyrproject.org/r/8930 : subsys: disk: Refactor disk_access stuff into a directory

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9202 : doc: update architecture porting guide to unified kernel
- https://gerrit.zephyrproject.org/r/9200 : kernel/arch: remove obsolete instances of irq_connect
- https://gerrit.zephyrproject.org/r/9201 : kernel/arch: rename ARCH_HAS_NANO_FIBER_ABORT to ARCH_HAS_THREAD_ABORT
- https://gerrit.zephyrproject.org/r/9189 : kernel: set CONFIG_MDEF by default
- https://gerrit.zephyrproject.org/r/9167 : samples: add configuration for single threaded hello world
- https://gerrit.zephyrproject.org/r/9168 : kernel: fix warnings when CONFIG_MULTITHREADING=n
- https://gerrit.zephyrproject.org/r/9181 : kernel: initialize system work queue after kernel is up


Re: Zephyr JIRA maintenance Saturday Dec 17, 2016 @ 18:00 - 20:00 PT (Sun Dec 18, 2016 @ 02:00 - 04:00 UTC)

Andrew Grimberg <agrimberg@...>
 

This maintenance has now been completed.

-Andy-

On 12/17/2016 05:53 PM, Andrew Grimberg wrote:
This maintenance will be starting shortly.

-Andy-

On 12/16/2016 07:56 AM, Andrew Grimberg wrote:
What: The Linux Foundation will be performing an upgrade on the Zephyr
JIRA instance as well as trying to resolve some issues with issue
conversions that requires database changes

When: Saturday December 17, 2016 @ 18:00 - 20:00 PT (Sunday December 18,
2016 @ 02:00 - 04:00 UTC)

Why: The current version of JIRA is several minor point revisions behind
the current release. Additionally, there are several reports of problems
converting issues from one type to another and research indicates that a
few different versions of JIRA can be prone to this issue and it
requires database fixes with JIRA offline to resolve.

Impact: JIRA will be offline during most of the upgrade and will likely
be bounced a couple of times during it.

A start and end notice will be posted to the mailing lists as well as to
#zephyrproject on Freenode IRC.

-Andy-
--
Andrew J Grimberg
Systems Administrator
Release Engineering Team Lead
The Linux Foundation


Re: Zephyr JIRA maintenance Saturday Dec 17, 2016 @ 18:00 - 20:00 PT (Sun Dec 18, 2016 @ 02:00 - 04:00 UTC)

Andrew Grimberg <agrimberg@...>
 

This maintenance will be starting shortly.

-Andy-

On 12/16/2016 07:56 AM, Andrew Grimberg wrote:
What: The Linux Foundation will be performing an upgrade on the Zephyr
JIRA instance as well as trying to resolve some issues with issue
conversions that requires database changes

When: Saturday December 17, 2016 @ 18:00 - 20:00 PT (Sunday December 18,
2016 @ 02:00 - 04:00 UTC)

Why: The current version of JIRA is several minor point revisions behind
the current release. Additionally, there are several reports of problems
converting issues from one type to another and research indicates that a
few different versions of JIRA can be prone to this issue and it
requires database fixes with JIRA offline to resolve.

Impact: JIRA will be offline during most of the upgrade and will likely
be bounced a couple of times during it.

A start and end notice will be posted to the mailing lists as well as to
#zephyrproject on Freenode IRC.

-Andy-
--
Andrew J Grimberg
Systems Administrator
Release Engineering Team Lead
The Linux Foundation


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 5
[ZEP-1457] Add SPDX Tags to Zephyr licence boilerplate
https://jira.zephyrproject.org/browse/ZEP-1457

[ZEP-1455] ARM Cortex-M7: add support for non-cacheable RAM region
https://jira.zephyrproject.org/browse/ZEP-1455

[ZEP-1460] Sanity check reports some qemu step failures as 'build_error'
https://jira.zephyrproject.org/browse/ZEP-1460

[ZEP-1456] Asserts on nrf51 running Bluetooth hci_uart sample
https://jira.zephyrproject.org/browse/ZEP-1456

[ZEP-1458] tests/legacy/kernel/test_events: failure on ARC platforms
https://jira.zephyrproject.org/browse/ZEP-1458


UPDATED JIRA items within last 24 hours: 6
[ZEP-1400] IoTivity
https://jira.zephyrproject.org/browse/ZEP-1400

[ZEP-1387] Add a driver for HW Crypto module
https://jira.zephyrproject.org/browse/ZEP-1387

[ZEP-1320] Update Porting Guide
https://jira.zephyrproject.org/browse/ZEP-1320

[ZEP-936] Adapt drivers to unified kernel
https://jira.zephyrproject.org/browse/ZEP-936

[ZEP-1230] Optimize interrupt return code on ARC.
https://jira.zephyrproject.org/browse/ZEP-1230

[ZEP-1440] Kconfig choice for MINIMAL_LIBC vs NEWLIB_LIBC is not selectable
https://jira.zephyrproject.org/browse/ZEP-1440


CLOSED JIRA items within last 24 hours: 2
[ZEP-1361] (Fixed) IP stack is broken
https://jira.zephyrproject.org/browse/ZEP-1361

[ZEP-1454] (Fixed) CI is too strict with commit message line lengths
https://jira.zephyrproject.org/browse/ZEP-1454


RESOLVED JIRA items within last 24 hours: 0


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/9188 : dhcpv4: Adjust prj file selection.
- https://gerrit.zephyrproject.org/r/9187 : dhcpv4_client: Remove unnecessary ETH_KSDK configuration.
- https://gerrit.zephyrproject.org/r/9181 : kernel: initialize system work queue after kernel is up
- https://gerrit.zephyrproject.org/r/9186 : k64f: Default the ETH_KSDK on if NET_L2_ETHERNET enabled.
- https://gerrit.zephyrproject.org/r/9180 : Revert "kernel/arch: enhance the "ready thread" cache"
- https://gerrit.zephyrproject.org/r/9179 : Revert "kernel: fix warnings when CONFIG_MULTITHREADING=n"
- https://gerrit.zephyrproject.org/r/9178 : Revert "kernel: introduce single-threaded kernel"
- https://gerrit.zephyrproject.org/r/9177 : Revert "kernel: enable and optimize coop-only configurations"
- https://gerrit.zephyrproject.org/r/9176 : Revert "kernel: enhance realtime-ness when handling timeouts"
- https://gerrit.zephyrproject.org/r/9175 : Revert "kernel: fix dummy init thread prio in preempt-only configurations"
- https://gerrit.zephyrproject.org/r/9182 : tinycrypt: Update TinyCrypt to version 0.2.5
- https://gerrit.zephyrproject.org/r/9167 : samples: add configuration for single threaded hello world
- https://gerrit.zephyrproject.org/r/9168 : kernel: fix warnings when CONFIG_MULTITHREADING=n
- https://gerrit.zephyrproject.org/r/9147 : DRAFT: DO NOT MERGE: set SPDX identifier

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9112 : tests: spi: correct a spi buffer length issue
- https://gerrit.zephyrproject.org/r/9053 : cc3200: Use peripheral driver library functions from ROM
- https://gerrit.zephyrproject.org/r/5895 : DONT MERGE - test CI time with only 1 level
- https://gerrit.zephyrproject.org/r/4457 : DONT MERGE - cause checkpatch warnings
- https://gerrit.zephyrproject.org/r/7664 : second test
- https://gerrit.zephyrproject.org/r/9026 : Bluetooth: AVDTP: Add AVDTP_RTX_Timer & Handler
- https://gerrit.zephyrproject.org/r/8813 : driver: ethernet: adds reset signal to enc28j60 driver

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9149 : samples: bmi160: code clean up
- https://gerrit.zephyrproject.org/r/9166 : boards: define onboard LED on quark se c1000 devboard
- https://gerrit.zephyrproject.org/r/9150 : Merge net branch into master
- https://gerrit.zephyrproject.org/r/9151 : Bluetooth: Fix priority event buffer availability when ECC is used
- https://gerrit.zephyrproject.org/r/9148 : net: nbuf: Initialize nbuf memory area after allocation
- https://gerrit.zephyrproject.org/r/9049 : sanity: filter the build-all test for ethernet
- https://gerrit.zephyrproject.org/r/9025 : Bluetooth: AVDTP: Fix Coding style
- https://gerrit.zephyrproject.org/r/9144 : sample: net: Updating qemu config for 802.15.4 testing
- https://gerrit.zephyrproject.org/r/9143 : samples: net: Fix echo applications setting for 15.4
- https://gerrit.zephyrproject.org/r/9142 : net: buf: Use buf->pool instead of now removed buf->free
- https://gerrit.zephyrproject.org/r/9140 : power_mgr: Update sample app with ARC DEEP_SLEEP
- https://gerrit.zephyrproject.org/r/9012 : samples: bmi160: use direct GPIO trigger instead of ipm
- https://gerrit.zephyrproject.org/r/9073 : drivers: bmi160: use direct GPIO trigger instead of IPM
- https://gerrit.zephyrproject.org/r/9075 : samples: bmi160: replace printf with printk
- https://gerrit.zephyrproject.org/r/9109 : Commit Message: Relax validation of lines length in commit messages


Zephyr JIRA maintenance Saturday Dec 17, 2016 @ 18:00 - 20:00 PT (Sun Dec 18, 2016 @ 02:00 - 04:00 UTC)

Andrew Grimberg <agrimberg@...>
 

What: The Linux Foundation will be performing an upgrade on the Zephyr
JIRA instance as well as trying to resolve some issues with issue
conversions that requires database changes

When: Saturday December 17, 2016 @ 18:00 - 20:00 PT (Sunday December 18,
2016 @ 02:00 - 04:00 UTC)

Why: The current version of JIRA is several minor point revisions behind
the current release. Additionally, there are several reports of problems
converting issues from one type to another and research indicates that a
few different versions of JIRA can be prone to this issue and it
requires database fixes with JIRA offline to resolve.

Impact: JIRA will be offline during most of the upgrade and will likely
be bounced a couple of times during it.

A start and end notice will be posted to the mailing lists as well as to
#zephyrproject on Freenode IRC.

-Andy-

--
Andrew J Grimberg
Systems Administrator
Release Engineering Team Lead
The Linux Foundation


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 0

UPDATED JIRA items within last 24 hours: 16
[ZEP-1313] porting and user guides must include a security section
https://jira.zephyrproject.org/browse/ZEP-1313

[ZEP-1038] Hard real-time interrupt support
https://jira.zephyrproject.org/browse/ZEP-1038

[ZEP-889] 802.15.4 - Management service: FFD level support
https://jira.zephyrproject.org/browse/ZEP-889

[ZEP-877] 6LoWPAN - Mesh Header compression and uncompression
https://jira.zephyrproject.org/browse/ZEP-877

[ZEP-1292] Update external mbed TLS library to latest version (2.4.0)
https://jira.zephyrproject.org/browse/ZEP-1292

[ZEP-628] Validate RPL Routing node support
https://jira.zephyrproject.org/browse/ZEP-628

[ZEP-797] Internet Group Management Protocol (IGMP) v2
https://jira.zephyrproject.org/browse/ZEP-797

[ZEP-1172] Update logger Api to allow using a hook for SYS_LOG_BACKEND_FN function
https://jira.zephyrproject.org/browse/ZEP-1172

[ZEP-875] 6LoWPAN - Context based compression support
https://jira.zephyrproject.org/browse/ZEP-875

[ZEP-749] TinyCrypt uses an old, unoptimized version of micro-ecc
https://jira.zephyrproject.org/browse/ZEP-749

[ZEP-903] Create APIs for app to create and mount FS
https://jira.zephyrproject.org/browse/ZEP-903

[ZEP-904] Look into supporting additional file systems under Zephyr FS API
https://jira.zephyrproject.org/browse/ZEP-904

[ZEP-902] Reduce the use of Kconfig for FS to minimum
https://jira.zephyrproject.org/browse/ZEP-902

[ZEP-1454] CI is too strict with commit message line lengths
https://jira.zephyrproject.org/browse/ZEP-1454

[ZEP-1448] Samples/net/mbedtls_sslclient:Build fail as net/ip_buf.h can not be found
https://jira.zephyrproject.org/browse/ZEP-1448

[ZEP-1357] iot/dns: Client is broken
https://jira.zephyrproject.org/browse/ZEP-1357


CLOSED JIRA items within last 24 hours: 9
[ZEP-793] (Fixed) DNS Resolver
https://jira.zephyrproject.org/browse/ZEP-793

[ZEP-785] (Won't Do) Enable MQTT Paho samples to run on quark se board
https://jira.zephyrproject.org/browse/ZEP-785

[ZEP-1417] (Won't Do) Invalid bluetooth address displayed on show dev info identity
https://jira.zephyrproject.org/browse/ZEP-1417

[ZEP-1422] (Duplicate) Arduino_101 doesn't response ipv6 ping request affer enable echo_client ipv6
https://jira.zephyrproject.org/browse/ZEP-1422

[ZEP-1249] (Fixed) eth_ksdk is broken by unified kernel upgrade
https://jira.zephyrproject.org/browse/ZEP-1249

[ZEP-1444] (Duplicate) Arduino_101 doesn't response ipv4 ping request affer enable ipv4
https://jira.zephyrproject.org/browse/ZEP-1444

[ZEP-606] (Fixed) Doc files deleted from gerrit aren't deleted from website
https://jira.zephyrproject.org/browse/ZEP-606

[ZEP-1453] (Duplicate) board defconfig prevents custom configurations
https://jira.zephyrproject.org/browse/ZEP-1453

[ZEP-603] (Won't Do) In coap_server sample application, observable resource does not generate notification with 5.00 (Internal server error) if content-format gets modified
https://jira.zephyrproject.org/browse/ZEP-603


RESOLVED JIRA items within last 24 hours: 0


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/9144 : sample: net: Updating qemu config for 802.15.4 testing
- https://gerrit.zephyrproject.org/r/9096 : net: ip: Improve logging by adding a dedicated sys_log level
- https://gerrit.zephyrproject.org/r/9142 : net: buf: Use buf->pool instead of now removed buf->free
- https://gerrit.zephyrproject.org/r/9095 : net: buf: Change NET_BUF_DEBUG to NET_BUF_LOG and add a level option
- https://gerrit.zephyrproject.org/r/9145 : net: log: Do not select STDOUT_CONSOLE
- https://gerrit.zephyrproject.org/r/9146 : net: buf: Let's make use of func/line parameters when available
- https://gerrit.zephyrproject.org/r/9143 : samples: net: Fix echo applications setting for 15.4
- https://gerrit.zephyrproject.org/r/9140 : power_mgr: Update sample app with ARC DEEP_SLEEP
- https://gerrit.zephyrproject.org/r/9115 : Bluetooth: RFCOMM: Remove unneeded NULL checks
- https://gerrit.zephyrproject.org/r/9109 : Commit Message: Relax validation of lines length in commit messages
- https://gerrit.zephyrproject.org/r/9112 : tests: spi: correct a spi buffer length issue
- https://gerrit.zephyrproject.org/r/9111 : test message: please ignore
- https://gerrit.zephyrproject.org/r/9106 : net: tcp: Precompute appdata properly

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9026 : Bluetooth: AVDTP: Add AVDTP_RTX_Timer & Handler
- https://gerrit.zephyrproject.org/r/9015 : Bluetooth: AVDTP: Add AVDTP Pending Request
- https://gerrit.zephyrproject.org/r/9025 : Bluetooth: AVDTP: Fix Coding style
- https://gerrit.zephyrproject.org/r/5504 : dma: Introduce STM32F4x DMA driver
- https://gerrit.zephyrproject.org/r/8813 : driver: ethernet: adds reset signal to enc28j60 driver
- https://gerrit.zephyrproject.org/r/9075 : samples: bmi160: replace printf with printk
- https://gerrit.zephyrproject.org/r/9012 : samples: bmi160: use direct GPIO trigger instead of ipm
- https://gerrit.zephyrproject.org/r/9073 : drivers: bmi160: use direct GPIO trigger instead of IPM
- https://gerrit.zephyrproject.org/r/6291 : Bluetooth: SDP: Initial SDP client interface API
- https://gerrit.zephyrproject.org/r/7263 : Bluetooth: HFP HF: Implement missing callback for indicators
- https://gerrit.zephyrproject.org/r/7076 : Bluetooth: AT: Change API name skip_whitespace to skip_space
- https://gerrit.zephyrproject.org/r/7029 : Bluetooth: AT: Command parsing for range of values
- https://gerrit.zephyrproject.org/r/7028 : Bluetooth: AT: Improve API() to work with buffer increment
- https://gerrit.zephyrproject.org/r/7030 : Bluetooth: HFP HF: SLC Connection send/parse CIND
- https://gerrit.zephyrproject.org/r/7077 : Bluetooth: HFP HF: SLC query indicators present value
- https://gerrit.zephyrproject.org/r/7613 : soc/stm32: add initial support for STM32F3X series
- https://gerrit.zephyrproject.org/r/7614 : boards: add initial support for Nucleo-64 with Soc STM32F334
- https://gerrit.zephyrproject.org/r/7611 : boards: add initial support for STM3210C-EVAL board with SoC STM32F107VC
- https://gerrit.zephyrproject.org/r/7622 : clock/stm32: add STM32F107 reset and clock control
- https://gerrit.zephyrproject.org/r/7623 : clock/stm32: add STM32F3X reset and clock control
- https://gerrit.zephyrproject.org/r/9053 : cc3200: Use peripheral driver library functions from ROM
- https://gerrit.zephyrproject.org/r/9030 : counter: cmsdk: Add clock control to TMR Counters.
- https://gerrit.zephyrproject.org/r/9000 : soc: arm: beetle: Add Timers IRQ map
- https://gerrit.zephyrproject.org/r/8960 : gpio: added support for the pulpino GPIO controller driver
- https://gerrit.zephyrproject.org/r/9001 : counter: cmsdk: Add Timer 0 and 1 as Timers
- https://gerrit.zephyrproject.org/r/8917 : net: tcp: Select correct source address for SYNACK packets
- https://gerrit.zephyrproject.org/r/9009 : net: tcp: Swap tcp->context backpointers
- https://gerrit.zephyrproject.org/r/8714 : [DO NOT SUBMIT] RFC: Bluetooth: SDP client API user concept draft
- https://gerrit.zephyrproject.org/r/9094 : tests: bitfield: exclude riscv since it is not supported
- https://gerrit.zephyrproject.org/r/8711 : timer: added support for the riscv-qemu timer driver
- https://gerrit.zephyrproject.org/r/8713 : boards: added support for the qemu_riscv32 board
- https://gerrit.zephyrproject.org/r/9093 : sanitycheck: add support for risc v boards
- https://gerrit.zephyrproject.org/r/9091 : libc: add support for risc v
- https://gerrit.zephyrproject.org/r/7066 : unified: added _MOVE_INSTR for RISCV32 architecture
- https://gerrit.zephyrproject.org/r/8710 : riscv32: added support for the riscv32-qemu soc
- https://gerrit.zephyrproject.org/r/8709 : riscv32: added support for the pulpino soc
- https://gerrit.zephyrproject.org/r/8712 : serial: added support for the riscv-qemu UART driver
- https://gerrit.zephyrproject.org/r/7063 : scripts: added Makefile to handle an external riscv32 toolchain
- https://gerrit.zephyrproject.org/r/7065 : kernel: updated default IDLE_STACK_SIZE to 512 for RISCV32
- https://gerrit.zephyrproject.org/r/7064 : arch: added support for the riscv32 architecture
- https://gerrit.zephyrproject.org/r/7067 : timer: added timer driver for the pulpino SOC
- https://gerrit.zephyrproject.org/r/9092 : sanitycheck: riscv: add vector to recognised sections
- https://gerrit.zephyrproject.org/r/7068 : boards: added support for the zedboard_pulpino board
- https://gerrit.zephyrproject.org/r/7615 : boards: add initial support for STM32373C-EVAL with SoC STM32F373VC

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9141 : MAINTAINERS: fixed email for sensor subsystem
- https://gerrit.zephyrproject.org/r/9118 : Bluetooth: GATT: Add BT_GATT_PERM_NONE convenience value
- https://gerrit.zephyrproject.org/r/9114 : drivers: sensor: replace device sync APIs with semaphores
- https://gerrit.zephyrproject.org/r/9117 : uart_cmsdk_apb: Fix cut'n'paste error in device 4 init code
- https://gerrit.zephyrproject.org/r/9116 : Bluetooth: samples: Add extern "C" { } block to GATT header files
- https://gerrit.zephyrproject.org/r/9105 : iot/dns: Add support for the FRDM K64F board
- https://gerrit.zephyrproject.org/r/9097 : iot/dns: Update Makefile
- https://gerrit.zephyrproject.org/r/9108 : iot/dns: Fix IPv6 compilation issue
- https://gerrit.zephyrproject.org/r/9104 : libc: rework libc selection and reduce Kconfigs
- https://gerrit.zephyrproject.org/r/9100 : kernel: enable and optimize coop-only configurations
- https://gerrit.zephyrproject.org/r/9098 : kernel: add k_cpu_idle/k_cpu_atomic_idle()
- https://gerrit.zephyrproject.org/r/9099 : kernel: add CONFIG_PREEMPT_ENABLED and CONFIG_COOP_ENABLED
- https://gerrit.zephyrproject.org/r/9102 : arch/all: simpler _SysFatalErrorHandler()
- https://gerrit.zephyrproject.org/r/9103 : kernel: introduce single-threaded kernel
- https://gerrit.zephyrproject.org/r/9101 : kernel: fix dummy init thread prio in preempt-only configurations
- https://gerrit.zephyrproject.org/r/9107 : Ship builds logs for meta-zephyr-sdk
- https://gerrit.zephyrproject.org/r/9088 : Merge bluetooth branch into master
- https://gerrit.zephyrproject.org/r/9029 : drivers: timer: Optimize RTC driver and prevent past events
- https://gerrit.zephyrproject.org/r/8802 : board: add initial support for Nucleo-64 with Soc STM32F411RE
- https://gerrit.zephyrproject.org/r/8987 : gpio: nrf5x: Add support for GPIOTE and GPIO callbacks
- https://gerrit.zephyrproject.org/r/9051 : frdm_k64f: Fix basic button sample
- https://gerrit.zephyrproject.org/r/9050 : frdm_k64f: hexiwear_k64: Fix basic blinky sample
- https://gerrit.zephyrproject.org/r/8982 : kernel/timers: move tick computation out of irq_lock block
- https://gerrit.zephyrproject.org/r/8981 : kernel: add defines for delta_ticks_from_prev special values
- https://gerrit.zephyrproject.org/r/8985 : kernel: fix typo
- https://gerrit.zephyrproject.org/r/8983 : kernel: fix mis-use of sys_dlist_t vs sys_dnode_t in _timeout
- https://gerrit.zephyrproject.org/r/8984 : sample/philosphers: ignore format-security warning
- https://gerrit.zephyrproject.org/r/8811 : kernel/arch: enhance the "ready thread" cache
- https://gerrit.zephyrproject.org/r/8986 : kernel: enhance realtime-ness when handling timeouts
- https://gerrit.zephyrproject.org/r/9010 : cc3200: Move UART peripheral clock enable into soc init
- https://gerrit.zephyrproject.org/r/9047 : openocd: Upgrade ARC
- https://gerrit.zephyrproject.org/r/9046 : newlib: Use upstream repository for IAMCU
- https://gerrit.zephyrproject.org/r/9048 : hosttools-tarball: remove openocd-legacy
- https://gerrit.zephyrproject.org/r/6913 : power: Add ARC core suspend and resume support
- https://gerrit.zephyrproject.org/r/6911 : arcv2_irq: Add power management suspend/resume
- https://gerrit.zephyrproject.org/r/9045 : binutils (ARC): Cleanup
- https://gerrit.zephyrproject.org/r/9006 : arm: add CPU_CORTEX_M_HAS_BASEPRI kconfig flag
- https://gerrit.zephyrproject.org/r/9007 : arm: move IRQ_PRIORITY_OFFSET to header file, rename to _IRQ_PRIO_OFFSET
- https://gerrit.zephyrproject.org/r/9040 : arm: add CPU_CORTEX_M_HAS_PROGRAMMABLE_FAULT_PRIOS kconfig flag
- https://gerrit.zephyrproject.org/r/9041 : arm: better handling of IRQ priorities reserved by the kernel
- https://gerrit.zephyrproject.org/r/9042 : arm: relinquish one IRQ priority reserved by kernel


Re: gpio pin configuration.

Marcus Shawcroft <marcus.shawcroft@...>
 

On 16 December 2016 at 09:52, Tomasz Bursztyka
<tomasz.bursztyka(a)linux.intel.com> wrote:

It was just a naming proposal, instead of:

GPIO_DS_0_HIGH
GPIO_DS_0_DISCONNECT
and
GPIO_DS_1_HIGH
GPIO_DS_1_DISCONNECT

we would have:
GPIO_DS_DFLT_HIGH (or *_DEFAULT_*)
GPIO_DS_DFLT_DISCONNECT

and:
GPIO_DS_ALT_HIGH (or *_ALTERNATE_*)
GPIO_DS_ALT_DISCONNECT

Of course my naming proposal is bogus. If I understand, should it be
GPIO_DS_OUTPUT_<LOW/HIGH or 0/1>_<HIGH/DISCONNECT> or?

It's just the _0_ and _1_ alone that are not telling anything by themselves.
Understood.

_low_ _high_ does make sense.

Cheers
/Marcus


Re: gpio pin configuration.

Tomasz Bursztyka
 

Hi Marcus,

I've failed to parse exactly what you mean here, either:
- you are referring to the 0 << 12 vs 1 << 12 and suggesting that the
GPIO_DS_[01]_STANDARD serves no purpose since it conveys no additional
information over and above simply not specifying any flag at all.
or
- you are referring to the two groups of flags GPIO_DS_0_* and
GPIO_DS_1_*, in which case I failed to clearly articulate the
intention that the mode/behaviour of the pin should be independently
configurable depending whether it is currently outputting a 0 or
outputting a 1 (nrf5 HW is one example of HW that supports this degree
of flexibility).
It was just a naming proposal, instead of:

GPIO_DS_0_HIGH
GPIO_DS_0_DISCONNECT
and
GPIO_DS_1_HIGH
GPIO_DS_1_DISCONNECT

we would have:
GPIO_DS_DFLT_HIGH (or *_DEFAULT_*)
GPIO_DS_DFLT_DISCONNECT

and:
GPIO_DS_ALT_HIGH (or *_ALTERNATE_*)
GPIO_DS_ALT_DISCONNECT

Of course my naming proposal is bogus. If I understand, should it be
GPIO_DS_OUTPUT_<LOW/HIGH or 0/1>_<HIGH/DISCONNECT> or?

It's just the _0_ and _1_ alone that are not telling anything by themselves.

Tomasz


Re: gpio pin configuration.

Marcus Shawcroft <marcus.shawcroft@...>
 

Hi Tomasz,

On 15 December 2016 at 10:31, Tomasz Bursztyka
<tomasz.bursztyka(a)linux.intel.com> wrote:

Something along the lines of:

#define GPIO_DS_0_STANDARD 0 <<12
#define GPIO_DS_0_HIGH 1 << 12
#define GPIO_DS_0_DISCONNECTED 2 <<12

1 << 13
The three modes standard, high, disconnected are mutually exclusive
hence the proposal to represent them as three values encoded in a two
bit field, the fourth possible encoding effectively becomes reserved
for future use. The two separate fields allow for the behaviour of
the pin to be configured independently when outputting a 0 or a 1. If
we were to stick with boolean flags only then we could do something
like:

#define GPIO_DS_0_HIGH 1 << 12
#define GPIO_DS_0_DISCONNECT 1<<13
#define GPIO_DS_1_HIGH 1 << 14
#define GPIO_DS_1_DISCONNECT 1<<15

(your point about BIT() taken).

In this scheme:
- the presence (or absence) of *_HIGH selects between the HWs standard
drive strength and a high/alternative drive strength (if supported).
- the {0,1}_DISCONNECT flag selects a high impedance/disconnected
behaviour for 0/1 output respectively, hence this flag would always,
irrespective of hw/driver, be mutually exclusive with the {0,1}_HIGH
flag.

I think the first view with multiple mutually exclusive values in a
single field to be the more intuitive of the two representations, but
I don;t feel strongly on this issue.

The standard drive strength flags are deliberately choosen to be 0
such that any existing user of the interface that does not specify a
drive strength flag will get the current behaviour of 'standard' drive
strength.

What about GPIO_DS_DFLT_* and GPIO_DF_ALT_*
0 and 1 are not telling much.
I've failed to parse exactly what you mean here, either:
- you are referring to the 0 << 12 vs 1 << 12 and suggesting that the
GPIO_DS_[01]_STANDARD serves no purpose since it conveys no additional
information over and above simply not specifying any flag at all.
or
- you are referring to the two groups of flags GPIO_DS_0_* and
GPIO_DS_1_*, in which case I failed to clearly articulate the
intention that the mode/behaviour of the pin should be independently
configurable depending whether it is currently outputting a 0 or
outputting a 1 (nrf5 HW is one example of HW that supports this degree
of flexibility).


Cheers
/Marcus


Re: gpio pin configuration.

Marcus Shawcroft <marcus.shawcroft@...>
 

On 15 December 2016 at 19:21, Chuck Jordan <Chuck.Jordan(a)synopsys.com> wrote:
However that doesn't cover the scenario where the gpio pin is being used by another peripheral in the SOC and the gpio_pin_write() implementation is not in the loop.
Ummmm. If the power-up-reset state of any GPIO is "input", then no software is necessary. If this is NOT true, then on any given target, code should be putting UNUSED gpio pins to input as an initial startup mode as early as possible. If they do not, lots of power can be wasted if the other side is also driving it as an output. It can also be DANGEROUS I think -- almost like a short.
I'm not an expert in this area though ... so perhaps someone who is can chime in.
An example of the scenario above would be an nrf5 i2c driver that
needs to use the nrf5 gpio driver to put the two pins used for clock
and data into an open collector mode.

Cheers
/Marcus


Re: gpio pin configuration.

Chuck Jordan <Chuck.Jordan@...>
 

However that doesn't cover the scenario where the gpio pin is being used by another peripheral in the SOC and the gpio_pin_write() implementation is not in the loop.
Ummmm. If the power-up-reset state of any GPIO is "input", then no software is necessary. If this is NOT true, then on any given target, code should be putting UNUSED gpio pins to input as an initial startup mode as early as possible. If they do not, lots of power can be wasted if the other side is also driving it as an output. It can also be DANGEROUS I think -- almost like a short.
I'm not an expert in this area though ... so perhaps someone who is can chime in.

-ChuckJ

-----Original Message-----
From: Marcus Shawcroft [mailto:marcus.shawcroft(a)gmail.com]
Sent: Thursday, December 15, 2016 2:19 AM
To: Chuck Jordan <Chuck.Jordan(a)synopsys.com>
Cc: devel(a)lists.zephyrproject.org
Subject: Re: [devel] gpio pin configuration.

Hi Chuck,

On 15 December 2016 at 02:04, Chuck Jordan <Chuck.Jordan(a)synopsys.com> wrote:
QUESTION: For those GPIO targets that don't support "disconnect", is that the same as setting it to "input"?
Is "disconnect" different from "input"? For example, would input be a load to the other side, and influence a transistor, where as "disconnect" is truly floating and truly NOT going to sink any current -- except into the surrounding air.
Configuring GPIO_DS_0_STANDARD | GPIO_DS_1_DISCONNECT is essentially setting up a pin as an open collector output. The pin is driven to 0, but a 1 output is left high impedance. I can imagine that a driver for HW that does not have support for this mode of operation could synthesize the behaviour by configuring the pin for input or otherwise disabling the pin within the driver code that implements gpio_pin_write(). I don't know if there are pitfalls in attempting to construct an open collector output in this manner. Iff this trick works, then one might argue that no additional gpio_pin_configure() flags are necessary to support open collector behaviour like this, instead, it can all be handled by flipping the configuration between output to drive a 0 and input for high impedance. However that doesn't cover the scenario where the gpio pin is being used by another peripheral in the SOC and the gpio_pin_write() implementation is not in the loop.

Cheers
/Marcus


-ChuckJ

-----Original Message-----
From: Marcus Shawcroft [mailto:marcus.shawcroft(a)gmail.com]
Sent: Wednesday, December 14, 2016 2:01 PM
To: devel(a)lists.zephyrproject.org
Subject: [devel] gpio pin configuration.

Hi,

The current include/gpio.h interface allows for basic configuration of a gpio pin.

The nRF5 hardware supports three different configurable drive strengths on each pin, independently for 0 and 1 outputs. The relevant manual describes these drive strengths as standard, high and disconnected. All permutations are supported with the exception of disconnected on 0 output + disconnected on 1 output.

The current nRF5 driver simply hardwires the standard drive stength for both 0 and 1 outputs.

Extending gpio.h to allow selection of at least some of the other modes is a pre-requisite for an nRF5 I2C driver. (The two pins used for I2C need to be placed into one of the disconnected modes).

I'm looking at adding two new fields into the gpio configuration 'flags', one field to configure the 0 output drive strength, the other field to configure the 1 output drive strength.

Something along the lines of:

#define GPIO_DS_0_STANDARD 0 <<12
#define GPIO_DS_0_HIGH 1 << 12
#define GPIO_DS_0_DISCONNECTED 2 <<12

#define GPIO_DS_1_STANDARD 0 <<14
#define GPIO_DS_1_HIGH 1 << 14
#define GPIO_DS_1_DISCONNECTED 2 <<14

The standard drive strength flags are deliberately choosen to be 0 such that any existing user of the interface that does not specify a drive strength flag will get the current behaviour of 'standard' drive strength.

There are three possible routes to define the behaviour of a driver for HW that does not support any of these modes:
1) Default to standard drive strength
2) Return ENOSUP from configure.
3) __ASSERT

Of these, 2) feels like the wrong answer, what would an app do if it got -ENOSUP, 3) feels rather inflexible and awkward. Hence I'm tempted to go with 1).

The terms 'standard' and 'high' are arbitrary. They are inflexible if we have HW that perhaps supports more than two drive strengths. From an applications perspective it is not clear what contract the a driver is really offering.

I've been pondering this on an off for a while and havn't been able to come up with a more elegant scheme.

Thoughts welcome on a better approach??

Thanks
/Marcus


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 7
[ZEP-1452] cross-platform support for interrupt tables/code in RAM or ROM
https://jira.zephyrproject.org/browse/ZEP-1452

[ZEP-1449] samples: logger_hook
https://jira.zephyrproject.org/browse/ZEP-1449

[ZEP-1444] Arduino_101 doesn't response ipv4 ping request affer enable ipv4
https://jira.zephyrproject.org/browse/ZEP-1444

[ZEP-1441] event logger: context switch event is not supported at ARC
https://jira.zephyrproject.org/browse/ZEP-1441

[ZEP-1447] zephyr/tests/crypto/test_mbedtls: when build the app `ROM' overflowed
https://jira.zephyrproject.org/browse/ZEP-1447

[ZEP-1443] Samples/net/zperf: Build fail as net_private.h can not be founld
https://jira.zephyrproject.org/browse/ZEP-1443

[ZEP-1442] Samples/net/dhcpv4_client: Build fail as No rule to make target `prj_.conf
https://jira.zephyrproject.org/browse/ZEP-1442


UPDATED JIRA items within last 24 hours: 50
[ZEP-1038] Hard real-time interrupt support
https://jira.zephyrproject.org/browse/ZEP-1038

[ZEP-1400] IoTivity
https://jira.zephyrproject.org/browse/ZEP-1400

[ZEP-887] 802.15.4 - Management service: RFD level support
https://jira.zephyrproject.org/browse/ZEP-887

[ZEP-819] 6LowPAN-GHC: Generic Header Compression for IPv6
https://jira.zephyrproject.org/browse/ZEP-819

[ZEP-811] The Trickle Algorithm
https://jira.zephyrproject.org/browse/ZEP-811

[ZEP-822] Simple Network Management Protocol v2
https://jira.zephyrproject.org/browse/ZEP-822

[ZEP-799] HTTP over TLS
https://jira.zephyrproject.org/browse/ZEP-799

[ZEP-839] Thread Requirements on RFC6282
https://jira.zephyrproject.org/browse/ZEP-839

[ZEP-834] Thread Requirements on RFC1122
https://jira.zephyrproject.org/browse/ZEP-834

[ZEP-835] Thread Requirements on RFC2460
https://jira.zephyrproject.org/browse/ZEP-835

[ZEP-836] Thread Requirements on RFC4291
https://jira.zephyrproject.org/browse/ZEP-836

[ZEP-837] Thread Requirements on RFC4443
https://jira.zephyrproject.org/browse/ZEP-837

[ZEP-838] Thread Requirements on RFC4944
https://jira.zephyrproject.org/browse/ZEP-838

[ZEP-814] Routing Metrics used in Path Selection
https://jira.zephyrproject.org/browse/ZEP-814

[ZEP-815] Objective Function Zero for RPL
https://jira.zephyrproject.org/browse/ZEP-815

[ZEP-816] Minimum Rank with Hysteresis (RPL)
https://jira.zephyrproject.org/browse/ZEP-816

[ZEP-810] Network Time Protocol v4
https://jira.zephyrproject.org/browse/ZEP-810

[ZEP-886] 802.15.4 - MAC command frame support
https://jira.zephyrproject.org/browse/ZEP-886

[ZEP-885] 802.15.4 - Beacon frame support
https://jira.zephyrproject.org/browse/ZEP-885

[ZEP-742] nRF5x Series: System Clock driver using NRF_RTC
https://jira.zephyrproject.org/browse/ZEP-742

[ZEP-881] 6LoWPAN - Frame Delivery in a Link-Layer Mesh
https://jira.zephyrproject.org/browse/ZEP-881

[ZEP-880] 6LoWPAN - Multicast Address Mapping
https://jira.zephyrproject.org/browse/ZEP-880

[ZEP-734] Port AES-CMAC-PRF-128 [RFC 4615] encryption library for Thread support
https://jira.zephyrproject.org/browse/ZEP-734

[ZEP-801] DNS Extensions to support IPv6
https://jira.zephyrproject.org/browse/ZEP-801

[ZEP-795] Path MTU Discovery for IPv6
https://jira.zephyrproject.org/browse/ZEP-795

[ZEP-800] DHCPv6
https://jira.zephyrproject.org/browse/ZEP-800

[ZEP-892] 802.15.4 - TSCH Radio protocol support
https://jira.zephyrproject.org/browse/ZEP-892

[ZEP-888] 802.15.4 - Security support
https://jira.zephyrproject.org/browse/ZEP-888

[ZEP-1205] Create test for LIFO kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1205

[ZEP-1207] Create test for semaphore kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1207

[ZEP-1211] Create test for mutex kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1211

[ZEP-1206] Create test for FIFO kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1206

[ZEP-1213] Create test for stack kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1213

[ZEP-1216] Create test for pipe kernel object using native unified kernel API
https://jira.zephyrproject.org/browse/ZEP-1216

[ZEP-865] convert filesystem sample to a runnable test
https://jira.zephyrproject.org/browse/ZEP-865

[ZEP-828] IPv6 - Multicast Join/Leave Support
https://jira.zephyrproject.org/browse/ZEP-828

[ZEP-806] Link-local Multicast Name Resolution
https://jira.zephyrproject.org/browse/ZEP-806

[ZEP-803] Dynamic Configurarion of IPv4 Link-local Addresses
https://jira.zephyrproject.org/browse/ZEP-803

[ZEP-817] Neighbor Discovery Optimization for IPv6 over 6LowPAN
https://jira.zephyrproject.org/browse/ZEP-817

[ZEP-802] DNS Configuration Options for DHCPv6
https://jira.zephyrproject.org/browse/ZEP-802

[ZEP-829] IPv4 - Multicast Join/Leave Support
https://jira.zephyrproject.org/browse/ZEP-829

[ZEP-808] IPv6 Stateless Autoconfiguration (SLAAC)
https://jira.zephyrproject.org/browse/ZEP-808

[ZEP-963] Consolidate different versions of DEVICE_* and SYS_* macros
https://jira.zephyrproject.org/browse/ZEP-963

[ZEP-1012] NATS client port to new IP stack
https://jira.zephyrproject.org/browse/ZEP-1012

[ZEP-812] Compression Format for IPv6 over 802.15.4
https://jira.zephyrproject.org/browse/ZEP-812

[ZEP-882] 6LoWPAN - IPv6 Next Header Compression
https://jira.zephyrproject.org/browse/ZEP-882

[ZEP-883] IP Stack L2 Interface Management API
https://jira.zephyrproject.org/browse/ZEP-883

[ZEP-876] 6LoWPAN - Offset based Reassembly of 802.15.4 packets
https://jira.zephyrproject.org/browse/ZEP-876

[ZEP-884] 802.15.4 - CSMA-CA Radio protocol support
https://jira.zephyrproject.org/browse/ZEP-884

[ZEP-1429] NXP MCR20A Driver
https://jira.zephyrproject.org/browse/ZEP-1429


CLOSED JIRA items within last 24 hours: 5
[ZEP-788] (Done) UDP
https://jira.zephyrproject.org/browse/ZEP-788

[ZEP-805] (Done) Internet Control Message Protocol (ICMP) v6
https://jira.zephyrproject.org/browse/ZEP-805

[ZEP-792] (Done) ARP
https://jira.zephyrproject.org/browse/ZEP-792

[ZEP-789] (Done) IPv4
https://jira.zephyrproject.org/browse/ZEP-789

[ZEP-1233] (Fixed) mbedDTLS DTLS client stability does not work on top of the tree for the net branch
https://jira.zephyrproject.org/browse/ZEP-1233


RESOLVED JIRA items within last 24 hours: 0


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/9091 : libc: add support for risc v
- https://gerrit.zephyrproject.org/r/9094 : tests: bitfield: exclude riscv since it is not supported
- https://gerrit.zephyrproject.org/r/9093 : sanitycheck: add support for risc v boards
- https://gerrit.zephyrproject.org/r/9092 : sanitycheck: riscv: add vector to recognised sections
- https://gerrit.zephyrproject.org/r/9088 : Merge bluetooth branch into master
- https://gerrit.zephyrproject.org/r/9077 : samples/mbedtls_sslclient: Using native IP stack
- https://gerrit.zephyrproject.org/r/9075 : samples: bmi160: replace printf with printk
- https://gerrit.zephyrproject.org/r/9073 : drivers: bmi160: use direct GPIO trigger instead of IPM
- https://gerrit.zephyrproject.org/r/9072 : boards: arm: add support for redbear ble nano 2
- https://gerrit.zephyrproject.org/r/9070 : net: statistics: Have a dedicated struct for rpl data
- https://gerrit.zephyrproject.org/r/9071 : net: statistics: Expose relevant information through net mgmt API

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/7064 : arch: added support for the riscv32 architecture
- https://gerrit.zephyrproject.org/r/8711 : timer: added support for the riscv-qemu timer driver
- https://gerrit.zephyrproject.org/r/7067 : timer: added timer driver for the pulpino SOC
- https://gerrit.zephyrproject.org/r/8709 : riscv32: added support for the pulpino soc
- https://gerrit.zephyrproject.org/r/7615 : boards: add initial support for STM32373C-EVAL with SoC STM32F373VC
- https://gerrit.zephyrproject.org/r/7614 : boards: add initial support for Nucleo-64 with Soc STM32F334
- https://gerrit.zephyrproject.org/r/8960 : gpio: added support for the pulpino GPIO controller driver
- https://gerrit.zephyrproject.org/r/6291 : Bluetooth: SDP: Initial SDP client interface API
- https://gerrit.zephyrproject.org/r/7068 : boards: added support for the zedboard_pulpino board
- https://gerrit.zephyrproject.org/r/7066 : unified: added _MOVE_INSTR for RISCV32 architecture
- https://gerrit.zephyrproject.org/r/8713 : boards: added support for the qemu_riscv32 board
- https://gerrit.zephyrproject.org/r/8712 : serial: added support for the riscv-qemu UART driver
- https://gerrit.zephyrproject.org/r/7065 : kernel: updated default IDLE_STACK_SIZE to 512 for RISCV32
- https://gerrit.zephyrproject.org/r/7063 : scripts: added Makefile to handle an external riscv32 toolchain
- https://gerrit.zephyrproject.org/r/8710 : riscv32: added support for the riscv32-qemu soc
- https://gerrit.zephyrproject.org/r/7613 : soc/stm32: add initial support for STM32F3X series
- https://gerrit.zephyrproject.org/r/9010 : cc3200: Move UART peripheral clock enable into soc init
- https://gerrit.zephyrproject.org/r/9053 : cc3200: Use peripheral driver library functions from ROM
- https://gerrit.zephyrproject.org/r/7496 : soc/stm32f1: Add the new type of SoC STM32F107
- https://gerrit.zephyrproject.org/r/7611 : boards: add initial support for STM3210C-EVAL board with SoC STM32F107VC
- https://gerrit.zephyrproject.org/r/8985 : kernel: fix typo
- https://gerrit.zephyrproject.org/r/8984 : sample/philosphers: ignore format-security warning
- https://gerrit.zephyrproject.org/r/8983 : kernel: fix mis-use of sys_dlist_t vs sys_dnode_t in _timeout
- https://gerrit.zephyrproject.org/r/8811 : kernel/arch: enhance the "ready thread" cache
- https://gerrit.zephyrproject.org/r/9029 : drivers: timer: Optimize RTC driver and prevent past events
- https://gerrit.zephyrproject.org/r/7661 : RFC: random: Add random driver for nRF5
- https://gerrit.zephyrproject.org/r/7622 : clock/stm32: add STM32F107 reset and clock control
- https://gerrit.zephyrproject.org/r/7625 : exti/stm32: add support for F334 & F373 MCUs
- https://gerrit.zephyrproject.org/r/7626 : flash/stm32: flash driver for STM32F3x series microcontrollers
- https://gerrit.zephyrproject.org/r/7623 : clock/stm32: add STM32F3X reset and clock control
- https://gerrit.zephyrproject.org/r/8714 : [DO NOT SUBMIT] RFC: Bluetooth: SDP client API user concept draft
- https://gerrit.zephyrproject.org/r/9052 : tests: crypto: mbedtls: Adding mbedTLS test suite for ECJPAKE
- https://gerrit.zephyrproject.org/r/7738 : RFC: Add device tree support for ARM platforms
- https://gerrit.zephyrproject.org/r/9012 : samples: bmi160: use direct GPIO trigger instead of ipm
- https://gerrit.zephyrproject.org/r/9067 : RFC: random: Introduce random device API.
- https://gerrit.zephyrproject.org/r/9051 : frdm_k64f: Fix basic button sample
- https://gerrit.zephyrproject.org/r/9035 : net: statistics: Provide specific Kconfig options
- https://gerrit.zephyrproject.org/r/9034 : net: statistics: Make statistics calculation fully private
- https://gerrit.zephyrproject.org/r/9033 : net: statistics: Move current statistics code to its own file
- https://gerrit.zephyrproject.org/r/9024 : dhcpv4: Provide prj file for frdm_k64f
- https://gerrit.zephyrproject.org/r/8824 : drivers: spi_k64: Set PCS as activ low and continuous per default
- https://gerrit.zephyrproject.org/r/9023 : k64f: Default the ETH_KSDK on if NET_L2_ETHERNET enabled.
- https://gerrit.zephyrproject.org/r/9050 : frdm_k64f: hexiwear_k64: Fix basic blinky sample
- https://gerrit.zephyrproject.org/r/8823 : drivers: spi_k64: Fix slave select

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/9087 : net: remove unused variable pkt1
- https://gerrit.zephyrproject.org/r/9086 : net: multicast_eth_addr is use only with IPV6
- https://gerrit.zephyrproject.org/r/9085 : net: remove unused variable dis
- https://gerrit.zephyrproject.org/r/9082 : drivers: spi: Fix the help on sys log level
- https://gerrit.zephyrproject.org/r/9083 : net: tests: Remove unused variables from dhcpv4 unit test
- https://gerrit.zephyrproject.org/r/9081 : Bluetooth: Remove unnecessary runtime kernel object initialization
- https://gerrit.zephyrproject.org/r/9080 : net: buf: Fix incorrect reference to net_buf_get_debug
- https://gerrit.zephyrproject.org/r/9079 : Bluetooth: RFCOMM: Fix channel range documentation
- https://gerrit.zephyrproject.org/r/9076 : iot/mqtt: Fix rlen_decode size check.
- https://gerrit.zephyrproject.org/r/9069 : Revert "samples/logger-hook: Initialize variable to 0"
- https://gerrit.zephyrproject.org/r/8925 : cc3200: Ensure UART can wake up Zephyr after wfi in idle
- https://gerrit.zephyrproject.org/r/9039 : Bluetooth: SMP: Add support for CT2 auth bit
- https://gerrit.zephyrproject.org/r/9038 : Bluetooth: SMP: Add H7 crypto implementation and unit tests
- https://gerrit.zephyrproject.org/r/7090 : arc: Define _arc_v2_irq_unit device
- https://gerrit.zephyrproject.org/r/6911 : arcv2_irq: Add power management suspend/resume
- https://gerrit.zephyrproject.org/r/6912 : arcv2_timer0: Add suspend and resume support
- https://gerrit.zephyrproject.org/r/6913 : power: Add ARC core suspend and resume support
- https://gerrit.zephyrproject.org/r/8903 : net: Fix incorrect logging format specifiers
- https://gerrit.zephyrproject.org/r/9066 : net: ieee802154: ACK reply needs to set all FCF attributes.
- https://gerrit.zephyrproject.org/r/9055 : net: buf: Introduce net_buf_destroy() wrapper
- https://gerrit.zephyrproject.org/r/9057 : net: buf: Remove the need for net_buf_pool_init()
- https://gerrit.zephyrproject.org/r/9059 : net: buf: Remove redundant user_data_size from buffers
- https://gerrit.zephyrproject.org/r/9056 : net: buf: Switch from k_fifo to k_lifo for free buffers
- https://gerrit.zephyrproject.org/r/9063 : Bluetooth: Controller: tune the xtal and hard realtime radio start offsets
- https://gerrit.zephyrproject.org/r/9018 : samples: net: Add dedicated dhcpv4 prj.conf for frdm k64f board
- https://gerrit.zephyrproject.org/r/8846 : samples: net: Add Arduino 101 dedicated config for dhcpv4_client
- https://gerrit.zephyrproject.org/r/8936 : drivers: eth_ksdk: Theres is no longer 'ETHERNET' Kconfig option
- https://gerrit.zephyrproject.org/r/8845 : samples: net: Remove useless prj.mdef from dhcpv4_client
- https://gerrit.zephyrproject.org/r/8854 : samples: net: mbedtls: Let's enable fastest enc28j60 speed on a101
- https://gerrit.zephyrproject.org/r/9017 : drivers: eth_ksdk: Simplifying MAC address generation
- https://gerrit.zephyrproject.org/r/8937 : drivers: eth_ksdk: There is a unique L2 driver
- https://gerrit.zephyrproject.org/r/8855 : drivers: enc28j60: Removing useless legacy driver
- https://gerrit.zephyrproject.org/r/8844 : drivers: enc28j60: Expose RX thread stack size and prio config
- https://gerrit.zephyrproject.org/r/8843 : drivers: enc28j60: Add logging
- https://gerrit.zephyrproject.org/r/8842 : drivers: ennc28j60: There is a unique L2 driver
- https://gerrit.zephyrproject.org/r/8841 : drivers: enc28j60: Fix one tiny naming issue
- https://gerrit.zephyrproject.org/r/8840 : drivers: enc28j60: Fix a Kconfig comment
- https://gerrit.zephyrproject.org/r/8839 : drivers: enc28j60: Fix a tiny style issue
- https://gerrit.zephyrproject.org/r/8838 : drivers: ethernet: Enable sys log levels depending on NET_ETHERNET_L2
- https://gerrit.zephyrproject.org/r/8837 : drivers: ethernet: Push DW specific Kconfig options to its own file
- https://gerrit.zephyrproject.org/r/8836 : drivers: enc28j60: Let's remove the CRC in the end of the frame
- https://gerrit.zephyrproject.org/r/8835 : net: l2: ethernet: Handle Ethernet II minimal frame size relevantly
- https://gerrit.zephyrproject.org/r/9049 : sanity: filter the build-all test for ethernet


ARC timer: straddled tick check and idle deep sleep

Julien Quelen <julienx.quelen@...>
 

Hi,

I am facing a conflict between the straddled tick check of the ARC timer0 and our implementation of the Idle+deepsleep mechanism.

In _timer_idle_enter(), if _ARC_V2_TMR_CTRL_IP bit is high, the flag straddled_tick_on_idle_enter is set high because we know that a timer0 interrupt is going to occur. Then, we abort _timer_idle_exit() in order to let _timer_int_handler() account for 1 tick.

However, in our implementation of the idle+deepsleep (ARC in low power) mode, we stop all ARC drivers, reset the timer0 and as a consequence, we lose the pending timer0 IRQ. So on idle+deepsleep exit, we do not jump into timer0 ISR. But straddled_tick_on_idle_enter is still high. And in the scenario where we program another Idle period just after the deepsleep, in the subsequent _timer_idle_exit(), we return without announcing the programmed ticks. The consequence is the loss of these programmed ticks -> OS delay in ticks counting.

A quick fix for that would be to reset to false straddled_tick_on_idle_enter flag in _sys_clock_driver_init(). I think that in general, it makes sense resetting to false straddled_tick_on_idle_enter flag while initializing the timer0 (when calling _sys_clock_driver_init())

Do you agree?


Re: gpio pin configuration.

Tomasz Bursztyka
 

Hi Marcus,

Hi,

The current include/gpio.h interface allows for basic configuration of
a gpio pin.

The nRF5 hardware supports three different configurable drive
strengths on each pin, independently for 0 and 1 outputs. The
relevant manual describes these drive strengths as standard, high and
disconnected. All permutations are supported with the exception of
disconnected on 0 output + disconnected on 1 output.

The current nRF5 driver simply hardwires the standard drive stength
for both 0 and 1 outputs.

Extending gpio.h to allow selection of at least some of the other
modes is a pre-requisite for an nRF5 I2C driver. (The two pins used
for I2C need to be placed into one of the disconnected modes).

I'm looking at adding two new fields into the gpio configuration
'flags', one field to configure the 0 output drive strength, the other
field to configure the 1 output drive strength.

Something along the lines of:

#define GPIO_DS_0_STANDARD 0 <<12
#define GPIO_DS_0_HIGH 1 << 12
#define GPIO_DS_0_DISCONNECTED 2 <<12
1 << 13


#define GPIO_DS_1_STANDARD 0 <<14
#define GPIO_DS_1_HIGH 1 << 14
#define GPIO_DS_1_DISCONNECTED 2 <<14
1 << 15

And actually, better use BIT() macro for all these flags.


The standard drive strength flags are deliberately choosen to be 0
such that any existing user of the interface that does not specify a
drive strength flag will get the current behaviour of 'standard' drive
strength.
What about GPIO_DS_DFLT_* and GPIO_DF_ALT_*
0 and 1 are not telling much.


There are three possible routes to define the behaviour of a driver
for HW that does not support any of these modes:
1) Default to standard drive strength
Preferably. Let's ignore the flags if it's unsupported.

2) Return ENOSUP from configure.
3) __ASSERT

Of these, 2) feels like the wrong answer, what would an app do if it
got -ENOSUP, 3) feels rather inflexible and awkward. Hence I'm
tempted to go with 1).
Definitely :)

The terms 'standard' and 'high' are arbitrary. They are inflexible if
we have HW that perhaps supports more than two drive strengths. From
an applications perspective it is not clear what contract the a driver
is really offering.

I've been pondering this on an off for a while and havn't been able to
come up with a more elegant scheme.

Thoughts welcome on a better approach??
Let's wait for more reactions.

Tomasz

5881 - 5900 of 7936