Date   

Re: System Design - Need feedback from developers

Mahendravarman Rajarao (RBEI/EAA3) <Mahendravarman.Rajarao@...>
 

Hi Allan

Please help me to clarify the below behavior of zephyr.

Program feature:
One zephyr task named task1 and one interrupt handler.

Scenario 1 :
=========
Int intflag = 0;

void interrupt_handler()
{
Printk ("interrupt handled \n");
------- set intrflag = 1

}

Int task1 ()
{

........interrupt initializations
........interrupt enable

While (1)
{
If (intrflag) { do something }
}
}


Scenario 2 :
========
Int intflag = 0;

void interrupt_handler()
{

Printk ("interrupt handled \n");
------- set intrflag = 1

}

Int task1 ()
{

........interrupt initializations
........interrupt enable

While (1)
{
Printk ("Inside while 1\n");
If (intrflag) { do something }
}
}


Observation on scenario 1
===================
When first time interrupt occurs, the printk inside interrupt handler is occurring and the program does not return to task1.

Observation on scenario 2
=====================
When first time interrupt occurs, the printk inside interrupt handler is occurring and the program returns to main, prints the printk in while loop and handles the flag
If further interrupt occurs also the program works correctly

How the printk inside the task1 helps the zephyr scheduler to schedule the task1 correctly in case of scenario2 ? what problem is caused in scenario 1 ?

I knew this problem can be solved by a semaphore.. but still curious to know

Please clarify


Best regards

Mahendravarman Rajarao

-----Original Message-----
From: Stephens, Allan [mailto:allan.stephens(a)windriver.com]
Sent: Wednesday, August 03, 2016 6:58 PM
To: Mahendravarman Rajarao (RBEI/EAA3) <Mahendravarman.Rajarao(a)in.bosch.com>; devel(a)lists.zephyrproject.org
Subject: [devel] Re: System Design - Need feedback from developers

Mahendravarman Rajarao wrote:

-----Original Message-----
From: Mahendravarman Rajarao (RBEI/EAA3)
[mailto:Mahendravarman.Rajarao(a)in.bosch.com]
Sent: August-03-16 1:20 AM
To: Stephens, Allan; devel(a)lists.zephyrproject.org
Subject: RE: [devel] System Design - Need feedback from developers

Hi Al

Please Clarify the below line

"certain types of object (for example, mailboxes) cannot be used by
interrupt handlers"

1. I have created a Mailbox inside TASK_A. ( taska_mailbox) 2. I get
an interrupt.. In interrupt call back Can I use task_mailbox_put
call to put some data into the taska_mailbox ?? Will Task_A take the
data and perform the necessary actions ?
OR I can't use even task_mailbox_put inside interrupt handlers ??
You can't make *any* use of mailboxes from an interrupt handler. To quote from the "Mailboxes: Concepts" section of the Zephyr Kernel Primer:

"A mailbox allows tasks to exchange messages. A task that sends a message is known as the sending task, while a task that receives the message is known as the receiving task. Messages may not be sent or received by fibers or ISRs, ..."

If you want the interrupt handler to send data to a task, you can use a nanokernel FIFO to do this. However, your code may need to create a pool of "message items" that can be queued by the FIFO, in which case you'll need to ensure the interrupt handler doesn't re-use an item from the pool unless it has been dequeued and completely processed by the task.

Regards,
Al




Best regards

Mahendravarman Rajarao
RBEI/EAA



-----Original Message-----
From: Stephens, Allan [mailto:allan.stephens(a)windriver.com]
Sent: Wednesday, August 03, 2016 1:10 AM
To: Mahendravarman Rajarao (RBEI/EAA3)
<Mahendravarman.Rajarao(a)in.bosch.com>; devel(a)lists.zephyrproject.org
Subject: RE: [devel] System Design - Need feedback from developers

See responses below:

-----Original Message-----
From: Mahendravarman rajarao
[mailto:mahendravarman.rajarao(a)in.bosch.com]
Sent: August-01-16 2:49 PM
To: devel(a)lists.zephyrproject.org
Subject: [devel] System Design - Need feedback from developers

Hi

Need clarifications on the system design , Consider the following
example

1. There is a main task named Main_task 2. There are two tasks
TASK_A and TASK_B .. Both these tasks are stared from the Main_task 3.
Main_Task is of higher priority.. Then comes TASK_A priority and
TASK_B priority 4. There is an shared Interrupt with callback
function

Which of the following method best suites for Zephyr environment
with RTOS scheduler ?

1. When Interrupt occurs set a flag in the Intr callback. In the
Main_Task that flags are maintained and

corresponding functions in the TASK_A and TASK_B are called ..

2. Initialize a mailbox in TASK_A and a mailbox for TASK_B . When
Interrupt occurs.. put the message into the TASK_A mailbox and
TASK_B mailbox
based on the message, certains functionality will be execute in
TASK_A and TASK_B

Which design can be used such that RTOS schedules the tasks properly
based on interrupt ?
Is both methods are same w.r.t schdueling or any difference is there ?

Please help
If I understand correctly, you're saying that you've got an interrupt
handler
(ISR) that needs to be able to inform one or more tasks of work that
needs to be done. The standard way of doing this is to have a set of
kernel synchronization objects or kernel data passing objects that the
ISR uses to notify the tasks what they need to do, and have the tasks
wait on these objects. For example, you might have the following arrangement:

- TASK_B waits on semaphore B.
- TASK_A waits on semaphore A.
- Main_Task waits on semaphore Main.
- The ISR handles an interrupt, then gives semaphore B, A, or Main --
or a combination of these -- based on what work it requires the task(s) to do.
- The kernel scheduler will then schedule the tasks according to their priority.
That is, if Main_Task has work to do it will run first; otherwise,
TASK_A will run if it has work to do; otherwise, TASK _B will run.

Zephyr has a variety of kernel objects that the ISR can use to notify the tasks.
If it simply needs to tell a task to "go", you can use a nanokernel
semaphore, a microkernel semaphore, or a microkernel event object. If
it needs to pass additional data to the task, you can use a nanokernel FIFO.

The Zephyr Kernel Primer provides more information about the various
nanokernel and microkernel object types that are available for
synchronization and data passing. However, be sure to note that
certain types of object (for example, mailboxes) cannot be used by
interrupt handlers, which means they won't be suitable for your needs.

Regards,
Al


Re: having trouble getting the echo client to work using TCP/uIP on K64F

Paul Sokolovsky
 

Hello Rohit,

On Mon, 22 Aug 2016 14:58:11 +0000
Rohit Grover <Rohit.Grover(a)arm.com> wrote:

I've still not been able to get a TCP stream going over uIP using the
echo-client sample. I've unearthed problems along the way (including
data-integrity issues in Zephyr's port of uIP; refer to
https://gerrit.zephyrproject.org/r/#/c/4226/ ) which suggest that
this kind of thing isn't actively tested.
I can now confirm this issue, running via QEMU virtual networking
(actually, even doing this from MicroPython Zephyr port running in
QEMU, this being initial steps to add Z's networking binding to
MicroPython).

Well, as you know, TCP was added to Z relatively recently, so some
white spots aren't surprising. In this particular case, with
"echo_server" sample app available, I guess most people (of those who
enable TCP support in it at all) test the other direction, host ->
Z-device.

What's more concerning is that the code in which you find issue
(apparently) belongs to uIP, and you know, uIP was used in many dozens
of thousands of devices over the last decade, so getting to the bottom
of the issue would be really important.

With my recent changes, I
manage to get the first packet bounce back successfully to the
echo-client. Successive packets aren't getting processed on their way
out from the client.
Can't say much about this, yet. Reverse case (multiple packers, host ->
QEMU Z device) works well. Did you pay attention that networking needs
to be used differently for micro-kernel and nano-kernel? Microkernel
can issue networking calls directly, while nano needs them to be
wrapped in a fiber. Anyway, that's what echo_server/echo_client do, so
if you use them already, shouldn't be a concern.


--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


Re: addendum to unified kernel RFC: getting rid of MDEF files.

Boie, Andrew P
 

On Thu, 2016-08-25 at 11:42 -0400, Benjamin Walsh wrote:

Small addendum to the unified kernel RFC: we'd like to take out the
support for MDEF files, and thus sysgen in the unified kernel. It
will
be kept for legacy reasons until the legacy veneer is removed.
 
+1000

Andrew


Re: addendum to unified kernel RFC: getting rid of MDEF files.

Benjamin Walsh <benjamin.walsh@...>
 

On Thu, Aug 25, 2016 at 09:01:19AM -0700, Andy Ross wrote:
Benjamin Walsh wrote:
Small addendum to the unified kernel RFC: we'd like to take out the
support for MDEF files, and thus sysgen in the unified kernel. It will
be kept for legacy reasons until the legacy veneer is removed.

Any objections ?
None whatsoever. As someone just now coming up to speed on Zephyr for
the first time, this syntax was among the stranger and more alien
things I stumbled on.
Zephyr is spawned from an older RTOS that was meant to be used on a
network of processors working as one processor. The MDEF file was where
you would define on which processor the objects would live. The build
system had to know all the topology when the application was built.
Also, the distribution was in binary (not source), so this file was the
way to bring in submodules and their objects and application-specific
objects. It's a relic of that time, so that's why we propose getting rid
of it.

(And I'll be perfectly honest that I still haven't dug out what that
"groups" field is supposed to mean).
Task groups ? Like EXE ?

The EXE group contains the tasks that are executed when the system
starts. There is also a SYS group for system tasks, but it's not really
used anymore. Then the application can define its own groups, if it
wants to a operate on a set of tasks all at once, like suspending them
and (re)starting them.

Static data belongs in C files.


Re: addendum to unified kernel RFC: getting rid of MDEF files.

Andy Ross
 

Benjamin Walsh wrote:
Small addendum to the unified kernel RFC: we'd like to take out the
support for MDEF files, and thus sysgen in the unified kernel. It will
be kept for legacy reasons until the legacy veneer is removed.

Any objections ?
None whatsoever. As someone just now coming up to speed on Zephyr for
the first time, this syntax was among the stranger and more alien
things I stumbled on. (And I'll be perfectly honest that I still
haven't dug out what that "groups" field is supposed to mean).

Static data belongs in C files.

Andy


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 1
[ZEP-737] Update host tools from upstream: fixdep.c
https://jira.zephyrproject.org/browse/ZEP-737


UPDATED JIRA items within last 24 hours: 6
[ZEP-240] printk/printf usage in samples
https://jira.zephyrproject.org/browse/ZEP-240

[ZEP-738] samples/net/test_15_4 doesn't fit in Quark D2000 / Nucleo F103RB / Alimexino STM32
https://jira.zephyrproject.org/browse/ZEP-738

[ZEP-724] build on windows failed: 'make: execvp: uname: File or path name too long'
https://jira.zephyrproject.org/browse/ZEP-724

[ZEP-730] Zephyr documentation page references 1.5.0, but it's not yet released
https://jira.zephyrproject.org/browse/ZEP-730

[ZEP-711] I2c: fails to write with mode fast plus
https://jira.zephyrproject.org/browse/ZEP-711

[ZEP-735] Several Tests and Samples are broken for CONFIG_DEBUG
https://jira.zephyrproject.org/browse/ZEP-735


CLOSED JIRA items within last 24 hours: 16
[ZEP-111] (Fixed) Define generic logging interface
https://jira.zephyrproject.org/browse/ZEP-111

[ZEP-107] (Fixed) Need a consistent way for selecting boards and SOCs in menuconfig
https://jira.zephyrproject.org/browse/ZEP-107

[ZEP-138] (Fixed) Driver for HDC1008 temperature and humidity sensor
https://jira.zephyrproject.org/browse/ZEP-138

[ZEP-137] (Fixed) Driver for SHT3xD temperature and humidity sensor
https://jira.zephyrproject.org/browse/ZEP-137

[ZEP-136] (Fixed) Driver for BMC150 magnetometer
https://jira.zephyrproject.org/browse/ZEP-136

[ZEP-132] (Fixed) Driver for BMA280 accelerometer
https://jira.zephyrproject.org/browse/ZEP-132

[ZEP-88] (Fixed) SDK installation can wipe out your root dir on Mac
https://jira.zephyrproject.org/browse/ZEP-88

[ZEP-102] (Fixed) Early sleep tests fail randomly
https://jira.zephyrproject.org/browse/ZEP-102

[ZEP-687] (Fixed) docs: Subsystems/Networking section is almost empty
https://jira.zephyrproject.org/browse/ZEP-687

[ZEP-385] (Fixed) Ethernet+IP{v4|v6}+TCP client mode is not working
https://jira.zephyrproject.org/browse/ZEP-385

[ZEP-697] (Fixed) samples/net/test_15_4 cannot be built by sanitycheck
https://jira.zephyrproject.org/browse/ZEP-697

[ZEP-461] (Fixed) Release 1.4.0 has broken the BMI160 sample as well as an application based on it
https://jira.zephyrproject.org/browse/ZEP-461

[ZEP-689] (Fixed) Builds on em_starterkit fail
https://jira.zephyrproject.org/browse/ZEP-689

[ZEP-384] (Fixed) D2000 hangs after I2C communication with BMC150 sensor
https://jira.zephyrproject.org/browse/ZEP-384

[ZEP-313] (Fixed) wrong logic when debugging ARC core on arduino 101
https://jira.zephyrproject.org/browse/ZEP-313

[ZEP-425] (Duplicate) SYS_LOG interface not documented
https://jira.zephyrproject.org/browse/ZEP-425


RESOLVED JIRA items within last 24 hours: 8
[ZEP-662] (Fixed) QMSI shim driver: Pinmux: Implement suspend and resume callbacks
https://jira.zephyrproject.org/browse/ZEP-662

[ZEP-659] (Fixed) QMSI shim driver: UART: Implement suspend and resume callbacks
https://jira.zephyrproject.org/browse/ZEP-659

[ZEP-658] (Fixed) QMSI shim driver: GPIO: Implement suspend and resume callbacks
https://jira.zephyrproject.org/browse/ZEP-658

[ZEP-655] (Fixed) QMSI shim driver: PWM: Implement suspend and resume callbacks
https://jira.zephyrproject.org/browse/ZEP-655

[ZEP-351] (Fixed) Driver for MPU-6050 gyroscope and accelerometer
https://jira.zephyrproject.org/browse/ZEP-351

[ZEP-400] (Fixed) Driver for AK8975C magnetometer
https://jira.zephyrproject.org/browse/ZEP-400

[ZEP-650] (Fixed) Quark SE: Implement PM reference application
https://jira.zephyrproject.org/browse/ZEP-650

[ZEP-616] (Fixed) OS X setup instructions not working on El Capitan
https://jira.zephyrproject.org/browse/ZEP-616


addendum to unified kernel RFC: getting rid of MDEF files.

Benjamin Walsh <benjamin.walsh@...>
 

Hi all,

Small addendum to the unified kernel RFC: we'd like to take out the
support for MDEF files, and thus sysgen in the unified kernel. It will
be kept for legacy reasons until the legacy veneer is removed.

Any objections ?

Cheers,
Ben

--
Benjamin Walsh, SMTS
Wind River Rocket
www.windriver.com
Zephyr kernel maintainer
www.zephyrproject.org


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/4325 : net: buf: Fix minor typo in documentation
- https://gerrit.zephyrproject.org/r/4324 : Bluetooth/drivers: Fix missing argument in printf
- https://gerrit.zephyrproject.org/r/4321 : Bluetooth: BR/EDR: Disconnect legacy device on auth failed
- https://gerrit.zephyrproject.org/r/4323 : usb: Allow to register and handle vendor specific commands
- https://gerrit.zephyrproject.org/r/4320 : Zephyr 1.5.0-rc3
- https://gerrit.zephyrproject.org/r/4311 : samples: pwm: adapt to new api argument definition
- https://gerrit.zephyrproject.org/r/4310 : Make outdir board-specific to avoid build collisions
- https://gerrit.zephyrproject.org/r/4313 : Add awk scripts for docs navigation yaml generation

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/4224 : Bluetooth: shell: Add support for RFCOMM send data
- https://gerrit.zephyrproject.org/r/4223 : Bluetooth: RFCOMM: Implement send data API
- https://gerrit.zephyrproject.org/r/4028 : Bluetooth: ATT: Make it safe to access the request list
- https://gerrit.zephyrproject.org/r/4111 : usb: Add USB sample build test to sanity check
- https://gerrit.zephyrproject.org/r/4295 : Bluetooth: Enable and disable BLE chip sleep mode dynamically
- https://gerrit.zephyrproject.org/r/4293 : net: drivers: cc2520 ieee802154 drivers select relevant options
- https://gerrit.zephyrproject.org/r/4303 : loop-slip4.sh: Wrapper script to run tunslip for IPv4 connection to QEMU
- https://gerrit.zephyrproject.org/r/4277 : drivers: pwm_shim: correct api argument inconsistency
- https://gerrit.zephyrproject.org/r/3459 : soc: Add soc id and version interface
- https://gerrit.zephyrproject.org/r/4298 : Bluetooth: Refactor Link Key notification event handling
- https://gerrit.zephyrproject.org/r/4299 : Bluetooth: Add support for P256 Link Keys
- https://gerrit.zephyrproject.org/r/4166 : samples: net: Moving the current ieee802154 sample
- https://gerrit.zephyrproject.org/r/4253 : net: yaip: ieee802154: Add CSMA-CA non slotted radio protocol support
- https://gerrit.zephyrproject.org/r/4294 : net: drivers: Normalize ieee802154 Kconfig
- https://gerrit.zephyrproject.org/r/4290 : net: yaip: Move IPv4 related Kconfig options to its own file
- https://gerrit.zephyrproject.org/r/4305 : net: drivers: ieee802154: sys_log is needed on legacy driver
- https://gerrit.zephyrproject.org/r/4291 : net: yaip: Normalize Kconfig and fix it
- https://gerrit.zephyrproject.org/r/4168 : net: samples: Add a simple Qemu sample for testing off-line 802.15.4
- https://gerrit.zephyrproject.org/r/4292 : net: Split debug Kconfig options from legacy to new stack
- https://gerrit.zephyrproject.org/r/4304 : net: Legacy IP stack Kconfig has nothing to do with new stack
- https://gerrit.zephyrproject.org/r/4289 : net: yaip: Move IPv6 related Kconfig options to its own file
- https://gerrit.zephyrproject.org/r/4251 : net: yaip: ieee802154: Normalize Kconfig
- https://gerrit.zephyrproject.org/r/4164 : net: ieee802154: Add basic support for IEEE 802.15.4e on FCF
- https://gerrit.zephyrproject.org/r/4165 : net: drivers: Add a fake ieee802154 radio driver for qemu
- https://gerrit.zephyrproject.org/r/4105 : sanity: enable sanity multiple configuration
- https://gerrit.zephyrproject.org/r/4055 : Bluetooth: SDP: Server implementation
- https://gerrit.zephyrproject.org/r/4252 : net: yaip: Centralize generic IEEE 802.15.4 radio utility functions
- https://gerrit.zephyrproject.org/r/4282 : net: fetch valid conn. to determine MSS in data_is_sent_and_acked()
- https://gerrit.zephyrproject.org/r/4167 : samples: net: Qemu make utilities update

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/4315 : board: nrf52_nitrogen: Include BLE controller by default
- https://gerrit.zephyrproject.org/r/4322 : Bluetooth: Kconfig: Remove unnecessary default conditionals
- https://gerrit.zephyrproject.org/r/4318 : quark_se_devboard: We do not support capabilities via Kconfig yet
- https://gerrit.zephyrproject.org/r/4317 : net: For 15.4 sample, whitelist the supported boards
- https://gerrit.zephyrproject.org/r/4316 : Bluetooth: Controller: Fix coding style in ctrl.c, util/ and main.c
- https://gerrit.zephyrproject.org/r/4314 : samples/net: Add KNOWN_ISSUES file for NATS and DNS sample apps
- https://gerrit.zephyrproject.org/r/4309 : sanity: exclude boards for samples/net/test_15_4
- https://gerrit.zephyrproject.org/r/4308 : win-build: Explicity call phyton
- https://gerrit.zephyrproject.org/r/4307 : win-build: Fixes Makefile target names including char ":"
- https://gerrit.zephyrproject.org/r/4306 : win-build: Fixes an issue supporting quotes
- https://gerrit.zephyrproject.org/r/4245 : Bluetooth: L2CAP: Disable fragmentation of rx pdu
- https://gerrit.zephyrproject.org/r/4302 : net: samples: Fix the echo-server IPv4 address
- https://gerrit.zephyrproject.org/r/4301 : net: Do not try to use net_if.h in legacy uIP stack
- https://gerrit.zephyrproject.org/r/4027 : Bluetooth: GATT: Add queuing support
- https://gerrit.zephyrproject.org/r/4260 : Bluetooth: tests: Add BLE controller init tests
- https://gerrit.zephyrproject.org/r/4091 : board: nrf52_pca10040: Include BLE controller by default
- https://gerrit.zephyrproject.org/r/4090 : Bluetooth: Controller: Add BLE controller driver
- https://gerrit.zephyrproject.org/r/4089 : Bluetooth: Controller: A full, hardware-agnostic BLE Link Layer
- https://gerrit.zephyrproject.org/r/4088 : Bluetooth: Controller: Add initial HCI implementation
- https://gerrit.zephyrproject.org/r/4087 : Bluetooth: Controller: Add a util folder with basic primitives
- https://gerrit.zephyrproject.org/r/4086 : Bluetooth: Controller: Hardware abstraction layer for nRF5x radio
- https://gerrit.zephyrproject.org/r/4227 : MAINTAINERS: Add BLUETOOTH CONTROLLER section
- https://gerrit.zephyrproject.org/r/4202 : net: ip: Fix compiling with 15.4


Re: Porting to Cortex-M0+

Piotr Mienkowski <Piotr.Mienkowski@...>
 

Hi,

I have the same problem. I would like to add support for Atmel SAM E70 chip (Cortex-M7) and was thinking that using the header files provided by Atmel as part of their ASF would make the job much, much easier.

Euan, did you already add files to ext/hal/ folder? Have you talked to Maureen Helm, the ARM architecture maintainer? Should we agree on folder structure so support for future Atmel chips can be easily added?

My thoughts:
I think we should only add header files that define register access and do not add any device drivers. While header files are valuable the Atmel implementation of device drivers looks low quality, at least the SAM E70 package. The way API is written is not directly useful for any serious development, neither it follows CMSIS standard. While some drivers look good, some are incomplete and some are buggy. We would need to fix them and cooperate with Atmel to push changes upstream. I reckon using third party source code which is not maintained in open source model is not a viable long term solution. Not mentioning the fact that device drivers will have to be tightly integrated with Zephyr kernel. I believe it's easier to write our own drivers from scratch. Anyway, that's only my opinion.

The text of SAM Software Package License included in the source code (and header files) looks actually very permissive but IANAL, also the ext/hal/ folder has already a selection of proprietary code with similar licenses. In any case we should probably get an official green light from someone.

Cheers,
Piotr


Moving outdir contents to a BOARD-specific subdirectory

Andy Ross
 

I just pushed the following to gerrit, for possible merge sometime in
the 1.6 timeframe. It will modify outdir to contain separate
subdirectories for each BOARD variant built, so they won't collide in
undetectable ways at build time when you swap targets or forget the
make variable:

https://gerrit.zephyrproject.org/r/#/c/4310/

It also will change the location of the output files for anyone
building without a custom O= variable, which will impact scripting.
(Though to be fair: if you're automating builds you probably want
to be setting O manually!)

Please be aware, and review the change if interested.

Andy


Daily JIRA Digest

donotreply@...
 

NEW JIRA items within last 24 hours: 3
[ZEP-734] Port AES-CMAC-PRF-128 [RFC 4615] encryption library for Thread support
https://jira.zephyrproject.org/browse/ZEP-734

[ZEP-733] Minimal libc shouldn't be providing stddef.h
https://jira.zephyrproject.org/browse/ZEP-733

[ZEP-735] Several Tests and Samples are broken for CONFIG_DEBUG
https://jira.zephyrproject.org/browse/ZEP-735


UPDATED JIRA items within last 24 hours: 5
[ZEP-648] New CoAP Implementation
https://jira.zephyrproject.org/browse/ZEP-648

[ZEP-711] I2c: fails to write with mode fast plus
https://jira.zephyrproject.org/browse/ZEP-711

[ZEP-199] Zephyr driver model is undocumented
https://jira.zephyrproject.org/browse/ZEP-199

[ZEP-642] Inconsistent interpretation of pwm_pin_set_values arguments among drivers
https://jira.zephyrproject.org/browse/ZEP-642

[ZEP-725] CI tag build is not sending emails
https://jira.zephyrproject.org/browse/ZEP-725


CLOSED JIRA items within last 24 hours: 22
[ZEP-210] (Duplicate) Zephyr TEE compatibility
https://jira.zephyrproject.org/browse/ZEP-210

[ZEP-327] (Fixed) Port available encryption libraries needed for Thread support
https://jira.zephyrproject.org/browse/ZEP-327

[ZEP-49] (Fixed) x86: unify separate SysV and IAMCU code
https://jira.zephyrproject.org/browse/ZEP-49

[ZEP-55] (Fixed) enable nanokernel test_context on ARC
https://jira.zephyrproject.org/browse/ZEP-55

[ZEP-350] (Fixed) Driver for HTS221 relative humidity and temperature sensor
https://jira.zephyrproject.org/browse/ZEP-350

[ZEP-348] (Fixed) Driver for LIS3MDL magnetometer
https://jira.zephyrproject.org/browse/ZEP-348

[ZEP-652] (Fixed) QMSI shim driver: RTC: Implement suspend and resume callbacks
https://jira.zephyrproject.org/browse/ZEP-652

[ZEP-632] (Fixed) MQTT fail to re-connect to the broker.
https://jira.zephyrproject.org/browse/ZEP-632

[ZEP-669] (Fixed) MQTT fail to pingreq if broker deliver topic to client but client doesn't read it.
https://jira.zephyrproject.org/browse/ZEP-669

[ZEP-612] (Won't Do) Need to send a dummy packet to establish connection using the TCP/IP stack
https://jira.zephyrproject.org/browse/ZEP-612

[ZEP-704] (Fixed) test_atomic does not complete on ARC
https://jira.zephyrproject.org/browse/ZEP-704

[ZEP-703] (Fixed) USB sample apps are broken after QMSI update
https://jira.zephyrproject.org/browse/ZEP-703

[ZEP-693] (Fixed) tests/kernel/test_lifo: execution fails on ARC
https://jira.zephyrproject.org/browse/ZEP-693

[ZEP-583] (Cannot Reproduce) "make debugserver" get "lakemont_halt" @quark_se_devboard
https://jira.zephyrproject.org/browse/ZEP-583

[ZEP-369] (Fixed) When building out of the tree, application object files are not placed into outdir
https://jira.zephyrproject.org/browse/ZEP-369

[ZEP-455] (Won't Do) Sensor DHT11/DHT22 Fails to perform repetitive sampling with Zephyr
https://jira.zephyrproject.org/browse/ZEP-455

[ZEP-534] (Fixed) Scan for consistent use of "platform/board/SoC" in documentation
https://jira.zephyrproject.org/browse/ZEP-534

[ZEP-187] (Fixed) BLE APIs are not documented
https://jira.zephyrproject.org/browse/ZEP-187

[ZEP-695] (Fixed) FatFs doesn't compile using Newlib
https://jira.zephyrproject.org/browse/ZEP-695

[ZEP-188] (Duplicate) IPStack/6LoWPAN/15.4 APIs are not documented
https://jira.zephyrproject.org/browse/ZEP-188

[ZEP-598] (Fixed) CoAP Link format filtering is not supported
https://jira.zephyrproject.org/browse/ZEP-598

[ZEP-708] (Fixed) tests/kernel/test_ipm fails on Arduino 101
https://jira.zephyrproject.org/browse/ZEP-708


RESOLVED JIRA items within last 24 hours: 2
[ZEP-697] (Fixed) samples/net/test_15_4 cannot be built by sanitycheck
https://jira.zephyrproject.org/browse/ZEP-697

[ZEP-384] (Fixed) D2000 hangs after I2C communication with BMC150 sensor
https://jira.zephyrproject.org/browse/ZEP-384


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/4308 : win-build: Explicity call phyton
- https://gerrit.zephyrproject.org/r/4307 : win-build: Fixes Makefile target names including char ":"
- https://gerrit.zephyrproject.org/r/4306 : win-build: Fixes an issue supporting quotes
- https://gerrit.zephyrproject.org/r/4305 : net: drivers: ieee802154: sys_log is needed on legacy driver
- https://gerrit.zephyrproject.org/r/4304 : net: Legacy IP stack Kconfig has nothing to do with new stack
- https://gerrit.zephyrproject.org/r/4294 : net: drivers: Normalize ieee802154 Kconfig
- https://gerrit.zephyrproject.org/r/4293 : net: drivers: cc2520 ieee802154 drivers select relevant options
- https://gerrit.zephyrproject.org/r/4292 : net: Split debug Kconfig options from legacy to new stack
- https://gerrit.zephyrproject.org/r/4291 : net: yaip: Normalize Kconfig and fix it
- https://gerrit.zephyrproject.org/r/4290 : net: yaip: Move IPv4 related Kconfig options to its own file
- https://gerrit.zephyrproject.org/r/4289 : net: yaip: Move IPv6 related Kconfig options to its own file
- https://gerrit.zephyrproject.org/r/4302 : net: samples: Fix the echo-server IPv4 address
- https://gerrit.zephyrproject.org/r/4301 : net: Do not try to use net_if.h in legacy uIP stack
- https://gerrit.zephyrproject.org/r/4303 : loop-slip4.sh: Wrapper script to run tunslip for IPv4 connection to QEMU
- https://gerrit.zephyrproject.org/r/4297 : Bluetooth: Set simultaneous LE and BR/EDR to same device capable
- https://gerrit.zephyrproject.org/r/4298 : Bluetooth: Refactor Link Key notification event handling
- https://gerrit.zephyrproject.org/r/4300 : Bluetooth: Enable Secure Connections if supported
- https://gerrit.zephyrproject.org/r/4295 : Bluetooth: Enable and disable BLE chip sleep mode dynamically
- https://gerrit.zephyrproject.org/r/4299 : Bluetooth: Add support for P256 Link Keys
- https://gerrit.zephyrproject.org/r/4282 : net: fetch valid conn. to determine MSS in data_is_sent_and_acked()
- https://gerrit.zephyrproject.org/r/4260 : Bluetooth: tests: Add BLE controller init tests
- https://gerrit.zephyrproject.org/r/4257 : lib: Use offsetof() builtin with GCC
- https://gerrit.zephyrproject.org/r/4277 : drivers: pwm_shim: correct api argument inconsistency
- https://gerrit.zephyrproject.org/r/4256 : toolchain: Remove vestigial COFF assembler symbol mangling support

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/4168 : net: samples: Add a simple Qemu sample for testing off-line 802.15.4
- https://gerrit.zephyrproject.org/r/4251 : net: yaip: ieee802154: Normalize Kconfig
- https://gerrit.zephyrproject.org/r/4252 : net: yaip: Centralize generic IEEE 802.15.4 radio utility functions
- https://gerrit.zephyrproject.org/r/4253 : net: yaip: ieee802154: Add CSMA-CA non slotted radio protocol support
- https://gerrit.zephyrproject.org/r/4167 : samples: net: Qemu make utilities update
- https://gerrit.zephyrproject.org/r/4166 : samples: net: Moving the current ieee802154 sample
- https://gerrit.zephyrproject.org/r/4165 : net: drivers: Add a fake ieee802154 radio driver for qemu
- https://gerrit.zephyrproject.org/r/4164 : net: ieee802154: Add basic support for IEEE 802.15.4e on FCF
- https://gerrit.zephyrproject.org/r/4081 : power_mgmt: Updated Power Management device driver API
- https://gerrit.zephyrproject.org/r/4028 : Bluetooth: ATT: Make it safe to access the request list
- https://gerrit.zephyrproject.org/r/4027 : Bluetooth: GATT: Add queuing support
- https://gerrit.zephyrproject.org/r/4231 : net/yaip: Use the dummy L2 frame format for Qemu
- https://gerrit.zephyrproject.org/r/3997 : Bluetooth: L2CAP: Implement connect command on BR/EDR
- https://gerrit.zephyrproject.org/r/4225 : net: raising MAX_TCP_RETRY_COUNT to account for slower response
- https://gerrit.zephyrproject.org/r/4226 : net: Do not fill in TCP option bytes for all packets
- https://gerrit.zephyrproject.org/r/4248 : net: Fix net_send return value documentation
- https://gerrit.zephyrproject.org/r/4090 : Bluetooth: Controller: Add BLE controller driver
- https://gerrit.zephyrproject.org/r/4091 : board: nrf52_pca10040: Include BLE controller by default
- https://gerrit.zephyrproject.org/r/4089 : Bluetooth: Controller: A full, hardware-agnostic BLE Link Layer
- https://gerrit.zephyrproject.org/r/4245 : Bluetooth: L2CAP: Disable fragmentation of rx pdu
- https://gerrit.zephyrproject.org/r/4086 : Bluetooth: Controller: Hardware abstraction layer for nRF5x radio
- https://gerrit.zephyrproject.org/r/4088 : Bluetooth: Controller: Add initial HCI implementation
- https://gerrit.zephyrproject.org/r/4087 : Bluetooth: Controller: Add a util folder with basic primitives
- https://gerrit.zephyrproject.org/r/4227 : MAINTAINERS: Add BLUETOOTH CONTROLLER section
- https://gerrit.zephyrproject.org/r/4105 : sanity: enable sanity multiple configuration
- https://gerrit.zephyrproject.org/r/3439 : spi_qmsi: Add suspend/resume
- https://gerrit.zephyrproject.org/r/4197 : Bluetooth: AVDTP: Module intialization

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/4296 : Bluetooth: Fix typo in code comment
- https://gerrit.zephyrproject.org/r/4287 : net: yaip: Fix documentation errors in net_if header file
- https://gerrit.zephyrproject.org/r/4275 : Revert "sys_log: replace old debug macros at DMA sample"
- https://gerrit.zephyrproject.org/r/4263 : Revert "misc: Remove generic PRINT macros from net samples"
- https://gerrit.zephyrproject.org/r/4276 : Revert "sys_log: replace old debug macros at USB DFU sample"
- https://gerrit.zephyrproject.org/r/4271 : Revert "misc: Remove generic PRINT macros from pci samples"
- https://gerrit.zephyrproject.org/r/4264 : Revert "misc: Remove generic PRINT macros from sensor samples"
- https://gerrit.zephyrproject.org/r/4288 : net: Add more items to TODO
- https://gerrit.zephyrproject.org/r/4268 : Revert "misc: Remove generic PRINT macros from power samples"
- https://gerrit.zephyrproject.org/r/4273 : Revert "misc: Remove generic PRINT macros from button samples"
- https://gerrit.zephyrproject.org/r/4269 : Revert "misc: Remove generic PRINT macros from spi samples"
- https://gerrit.zephyrproject.org/r/4270 : Revert "misc: Remove generic PRINT macros from flash samples"
- https://gerrit.zephyrproject.org/r/4266 : Revert "misc: Remove generic PRINT macros from synch samples"
- https://gerrit.zephyrproject.org/r/4267 : Revert "misc: Remove generic PRINT macros from hello world samples"
- https://gerrit.zephyrproject.org/r/4265 : Revert "misc: Remove generic PRINT macros from usb samples"
- https://gerrit.zephyrproject.org/r/4274 : Revert "sys_log: replace old debug macro on ADC driver sample."
- https://gerrit.zephyrproject.org/r/4272 : Revert "misc: Remove generic PRINT macros from aio samples"
- https://gerrit.zephyrproject.org/r/4284 : net: Add TODO items for 6LoWPAN
- https://gerrit.zephyrproject.org/r/4281 : net: tests: Extented 6lo unit tests
- https://gerrit.zephyrproject.org/r/4285 : Merge remote-tracking branch 'origin/master' into net
- https://gerrit.zephyrproject.org/r/4262 : Merge master branch into bluetooth
- https://gerrit.zephyrproject.org/r/4202 : net: ip: Fix compiling with 15.4
- https://gerrit.zephyrproject.org/r/4214 : doc: Add more content for networking documentation
- https://gerrit.zephyrproject.org/r/4162 : sanitycheck: Add support for section net_l2_data
- https://gerrit.zephyrproject.org/r/4250 : Bluetooth: RFCOMM: Fix cr bit of address in MSC response
- https://gerrit.zephyrproject.org/r/4200 : net: samples: Fix slip config for echo-server and echo-client


Re: having trouble getting the echo client to work using TCP/uIP on K64F

Rohit Grover
 

Hello Community,

In my attempts to get a TCP stream to flow in and out of a K64F, I've had to make a few changes to core of the uIP port: https://gerrit.zephyrproject.org/r/#/q/rohit+grover+status:open.
I now have some success in getting data to flow continuously, nevertheless I haven't fixed all issues and I'm not sure my changes take all possible cases into account.
These changes have had to do with errors in how uIP handles outbound packets.
I'm not an expert in IP stacks, and in one particular case, https://gerrit.zephyrproject.org/r/#/c/4225/, I've not been able to provide a fix--my patch simply raises a certain retry-limit and results in the expected behaviour.

I would appreciate assistance from people who may have authored the port of uIP to Zephyr. It seems to me that these issues should have surfaced for any application attempting to setup a TCP/IPv4 stream over uIP; it is a surprise that these have gone undetected so far.

Rohit.

-----Original Message-----
> From: Rohit Grover
> Sent: 22 August 2016 15:58
> To: devel(a)lists.zephyrproject.org
> Cc: Jukka Rissanen; 'Paul Sokolovsky'
> Subject: having trouble getting the echo client to work using TCP/uIP on K64F
>
> Hello Community,
>
> I've still not been able to get a TCP stream going over uIP using the echo-
> client sample.
> I've unearthed problems along the way (including data-integrity issues in
> Zephyr's port of uIP; refer to https://gerrit.zephyrproject.org/r/#/c/4226/ )
> which suggest that this kind of thing isn't actively tested. With my recent
> changes, I manage to get the first packet bounce back successfully to the
> echo-client. Successive packets aren't getting processed on their way out
> from the client.

> rohit
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Re: offsetof() in array sizes

Boie, Andrew P
 

Thanks for the reply, here's a patch below.
Hi Carles,

Can you submit your contribution to our Gerrit server?

https://nexus.zephyrproject.org/content/sites/site/org.zephyrproject.zephyr/latest/contribute/gerrit.html

Regards,
Andrew


Re: offsetof() in array sizes

Carles Cufi
 

Hi Andrew,

-----Original Message-----
From: Boie, Andrew P [mailto:andrew.p.boie(a)intel.com]
Sent: Tuesday, August 23, 2016 16:54
To: Cufi, Carles <Carles.Cufi(a)nordicsemi.no>;
devel(a)lists.zephyrproject.org
Subject: RE: offsetof() in array sizes



If one includes a offsetof() statement inside a macro that is then
used to size an array, the following warning is issued by GCC:

warning: variably modified <VAR_NAME> at file scope

The fix for this, at least for GCC, is to use:

#if defined(__GNUC__)
#define offsetof(s, m) __builtin_offsetof(s, m) #else #define
offsetof(s, m) ((size_t)(&(((s *)0)->m))) #endif

Any thoughts about this particular matter? We'd like to use offsetof()
when sizing arrays in the BLE Controller but we don't want to
duplicate the
offsetof() macro.
I don't see a problem with replacing the existing definition in the
minimal libc with the corrected version above.
Can you send a patch against lib/libc/minimal/include/stddef.h?

Andrew
Thanks for the reply, here's a patch below.

Thanks,

Carles

From ddd980e2418053ae346f25deb8ae029f50cb20b3 Mon Sep 17 00:00:00 2001
From: Carles Cufi <carles.cufi(a)nordicsemi.no>
Date:
Subject: [PATCH 1/1] lib: Use offsetof() builtin with GCC

The default offsetof() implementation generates a warning
(variably modified <variable> at file scope) when used in
to define the size of an array. By using this builtin with
GCC we avoid the warning and make sure no variable-size
arrays are used.

Change-Id: Iae215f777241f7daaa061067230086dffaa8311d
Signed-off-by: Carles Cufi <carles.cufi(a)nordicsemi.no>
---
lib/libc/minimal/include/stddef.h | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/lib/libc/minimal/include/stddef.h b/lib/libc/minimal/include/stddef.h
index 2e1ef66..bcc0a6e 100644
--- a/lib/libc/minimal/include/stddef.h
+++ b/lib/libc/minimal/include/stddef.h
@@ -27,6 +27,10 @@
typedef int ptrdiff_t;
#endif

+#if defined(__GNUC__)
+#define offsetof(type, member) __builtin_offsetof(type, member)
+#else
#define offsetof(type, member) ((size_t) (&((type *) NULL)->member))
+#endif

#endif /* __INC_stddef_h__ */
--
1.9.1


Re: Porting to Cortex-M0+

Nashif, Anas
 

On 23 Aug 2016, at 10:39, Vinicius Costa Gomes <vinicius.gomes(a)intel.com> wrote:

Hi,

Euan Mutch <euan.mutch(a)gmail.com> writes:

I have started writing the drivers for peripherals on the M0+ now, but
I am getting the feeling that I should probably just add Atmel ASF to
the \ext\hal\ folder rather than basically rewriting them. I am just
wondering why this was not done already for the Arduino Due which also
has an Atmel SOC?
Licensing issues perhaps[1]?
Actually more because nobody did it until now, so you are welcome to do this.



"Disclaimer and Credits

...

4. This software may only be redistributed and used in connection with
an Atmel microcontroller product."

I do not think this will conflict with the intent of how to use it in Zephyr. After all the code will be used with Atmel MCUs only…

Anas


[1] http://www.atmel.com/Images/asf-releasenotes-3.32.0.pdf page 34


Cheers,


Daily Gerrit Digest

donotreply@...
 

NEW within last 24 hours:
- https://gerrit.zephyrproject.org/r/4254 : Bluetooth: BR/EDR: Fix security check on legacy
- https://gerrit.zephyrproject.org/r/4246 : nano_work: Make use of ATOMIC_DEFINE for the flags
- https://gerrit.zephyrproject.org/r/4245 : Bluetooth: L2CAP: Disable fragmentation of rx pdu
- https://gerrit.zephyrproject.org/r/4250 : Bluetooth: RFCOMM: Fix cr bit of address in MSC response
- https://gerrit.zephyrproject.org/r/4227 : MAINTAINERS: Add BLUETOOTH CONTROLLER section
- https://gerrit.zephyrproject.org/r/4231 : net/yaip: Use the dummy L2 frame format for Qemu
- https://gerrit.zephyrproject.org/r/4241 : samples/quapi_client: use yaip
- https://gerrit.zephyrproject.org/r/4242 : samples/quapi_server: use yaip
- https://gerrit.zephyrproject.org/r/4248 : net: Fix net_send return value documentation
- https://gerrit.zephyrproject.org/r/4236 : samples/net: Add a sample for a CoAP client
- https://gerrit.zephyrproject.org/r/4229 : drivers/slip: Fix warnings when TAP support is disabled
- https://gerrit.zephyrproject.org/r/4239 : FIXME: use yaip
- https://gerrit.zephyrproject.org/r/4238 : FIXME: use yaip
- https://gerrit.zephyrproject.org/r/4243 : tests/quapi: use yaip
- https://gerrit.zephyrproject.org/r/4234 : tests: Add simple CoAP tests
- https://gerrit.zephyrproject.org/r/4232 : tests: Support computing the result of tests
- https://gerrit.zephyrproject.org/r/4233 : lib: Introduce the CoAP implementation for Zephyr
- https://gerrit.zephyrproject.org/r/4237 : MAINTAINERS: add Quapi section
- https://gerrit.zephyrproject.org/r/4230 : net/yaip: Fix listening on IPv6 ports
- https://gerrit.zephyrproject.org/r/4235 : samples/net: Add a sample for a CoAP server
- https://gerrit.zephyrproject.org/r/4244 : sampes/quapi_observer_server: Add observer sample
- https://gerrit.zephyrproject.org/r/4240 : iot/quapi: Add support for observing resources

UPDATED within last 24 hours:
- https://gerrit.zephyrproject.org/r/3997 : Bluetooth: L2CAP: Implement connect command on BR/EDR
- https://gerrit.zephyrproject.org/r/4027 : Bluetooth: GATT: Add queuing support
- https://gerrit.zephyrproject.org/r/4028 : Bluetooth: ATT: Make it safe to access the request list
- https://gerrit.zephyrproject.org/r/4186 : x86: fix incorrect printk() usage
- https://gerrit.zephyrproject.org/r/4225 : net: raising MAX_TCP_RETRY_COUNT to account for slower response
- https://gerrit.zephyrproject.org/r/4111 : usb: Add USB sample build test to sanity check
- https://gerrit.zephyrproject.org/r/4218 : Bluetooth: A2DP: Basic Implementation of A2DP Sink.
- https://gerrit.zephyrproject.org/r/4214 : doc: Add more content for networking documentation
- https://gerrit.zephyrproject.org/r/4197 : Bluetooth: AVDTP: Module intialization
- https://gerrit.zephyrproject.org/r/3439 : spi_qmsi: Add suspend/resume
- https://gerrit.zephyrproject.org/r/4091 : board: nrf52_pca10040: Include BLE controller by default
- https://gerrit.zephyrproject.org/r/4090 : Bluetooth: Controller: Add BLE controller driver
- https://gerrit.zephyrproject.org/r/4089 : Bluetooth: Controller: A full, hardware-agnostic BLE Link Layer
- https://gerrit.zephyrproject.org/r/4226 : net: Do not fill in TCP option bytes for all packets
- https://gerrit.zephyrproject.org/r/4086 : Bluetooth: Controller: Hardware abstraction layer for nRF5x radio
- https://gerrit.zephyrproject.org/r/4169 : printk: "support" some modifier codes
- https://gerrit.zephyrproject.org/r/4171 : tests: test_printk: crude printk test case
- https://gerrit.zephyrproject.org/r/4206 : libc: minimal: add reduced inttypes.h
- https://gerrit.zephyrproject.org/r/4205 : recipes-devtools/gcc: newlib-stdint.h: Remove 32 bit longs
- https://gerrit.zephyrproject.org/r/4088 : Bluetooth: Controller: Add initial HCI implementation
- https://gerrit.zephyrproject.org/r/4087 : Bluetooth: Controller: Add a util folder with basic primitives
- https://gerrit.zephyrproject.org/r/3527 : console: shell: Shell enhancement - Support multiple modules

MERGED within last 24 hours:
- https://gerrit.zephyrproject.org/r/4249 : Bluetooth: tests/shell: Remove not needed RFCOMM option from config
- https://gerrit.zephyrproject.org/r/4228 : doc: remove 1.5 doc link until after release
- https://gerrit.zephyrproject.org/r/4247 : Bluetooth: tests/shell: Add dedicated BR/EDR config
- https://gerrit.zephyrproject.org/r/4210 : grub: Tweak build_grub.sh for proxy issues
- https://gerrit.zephyrproject.org/r/4202 : net: ip: Fix compiling with 15.4
- https://gerrit.zephyrproject.org/r/4221 : Bluetooth: L2CAP: Fix reset channel state context
- https://gerrit.zephyrproject.org/r/4220 : Bluetooth: L2CAP: Refactor connection security handler
- https://gerrit.zephyrproject.org/r/4219 : net: Add TODO items for L2 and 802.15.4


Re: offsetof() in array sizes

Boie, Andrew P
 


If one includes a offsetof() statement inside a macro that is then used to size
an array, the following warning is issued by GCC:

warning: variably modified <VAR_NAME> at file scope

The fix for this, at least for GCC, is to use:

#if defined(__GNUC__)
#define offsetof(s, m) __builtin_offsetof(s, m) #else #define offsetof(s, m)
((size_t)(&(((s *)0)->m))) #endif

Any thoughts about this particular matter? We'd like to use offsetof() when
sizing arrays in the BLE Controller but we don't want to duplicate the
offsetof() macro.
I don't see a problem with replacing the existing definition in the minimal libc with the corrected version above.
Can you send a patch against lib/libc/minimal/include/stddef.h?

Andrew


Naming both a top-level directory and a branch "net" is a bit unfortunate

Paul Sokolovsky
 

Hello,

Today I tried to figure why I got my Zephyr repository clone in an
inconsistent state, and here's what I found:

Git for quite a few years allow to checkout a remote's repository with:

git checkout <short-remote-name>

e.g.

git checkout net

is supposed to just checkout origin/net if didn't have it already, and
set it up a tracking remote branch.

Well, that doesn't work with Zephyr, because there's "net" top-level
directory. It's easy to overlook that "git checkout net" didn't produce
a notice of switching to another branch/setting up tracking, and wonder
why you didn't have the latest net's commits in git log. My next step
was to pull these branch changes explicitly: "git pull --rebase origin
net", and that's how I ended up with net's commit in my master branch.


I hope it's just me, but posting this in case someone else will have a
similar problem (or if maintainers get similar hard-to-explain reports
of "my local repo got messed up!").

The solution is to use explit --track option:

git checkout -b net --track origin/net

(I didn't have to use --track explicitly for a couple of years).


--
Best Regards,
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog


Re: Porting to Cortex-M0+

Vinicius Costa Gomes
 

Hi,

Euan Mutch <euan.mutch(a)gmail.com> writes:

I have started writing the drivers for peripherals on the M0+ now, but
I am getting the feeling that I should probably just add Atmel ASF to
the \ext\hal\ folder rather than basically rewriting them. I am just
wondering why this was not done already for the Arduino Due which also
has an Atmel SOC?
Licensing issues perhaps[1]?

"Disclaimer and Credits

...

4. This software may only be redistributed and used in connection with
an Atmel microcontroller product."


[1] http://www.atmel.com/Images/asf-releasenotes-3.32.0.pdf page 34


Cheers,
--
Vinicius

6901 - 6920 of 8194