Newer
Older
* First attempt at a nucleo-l432kc board. From Sebastien Lorquet
(2017-05-02).
* STM32F7: Flash: macro naming errors, there is no FLASH_CONFIG_F for
F7. From Juha Niskanen (2017-05-02).
* STM32L4: stm32l4x6xx_pinmap: Update I2C4 and DCMI pins. From Juha
Niskanen (2017-05-02).
* 6LoWPAN: Add basic call path to interface with the MAC layer through
the MAC network driver. Logic has not yet been implemented. This is
just a structural change in preparation for additional changes
(2017-05-02).
* wireless/ieee802154: Sets up default PIB attributes. From Anthony
Merlino (2017-05-02).
* wireless/ieee802154: Finishes some IOCTL logic for MAC layer. From
Anthony Merlino (2017-05-02).
* 6LoWPAN: Changes to use new MAC interfaces. Incomplete and needs
some clean-up of dangling, unused definitions (2017-05-03).
* wireless/ieee802154: Starts work on setting PIB attributes. From
Anthony Merlino (2017-05-03).
* 6LoWPAN: Fixes hang in loopback test (2017-05-03).
* drivers/wireless/bcmf: Fix frame not freed when dropped + cleanup.
From Simon Piriou (2017-05-03).
* STM32L4: stm32l4_i2c: Change wrong macro to CONFIG_I2C_POLLED. From
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
Juha Niskanen (2017-05-04).
* STM32L4: modularize Kconfig to support different product
lines/families. This is modeled after STM32F7. Idea is to declare
each chip in Kconfig but allow for flash size override. Commit adds
many STM32L4_HAVE_XXX feature test macros. From Juha Niskanen
(2017-05-02).
* STM32L4: Changes needed for STM32L452 and Nucleo-L452RE board. GPIO
and UART seem similar across STMicro product matrix, so renamed files
accordingly. RCC is cloned just in case, while conflicting
differences there seem to be very minor. From Juha Niskanen
(2017-05-02).
* STM32L4: Flash: update override config macros and add
FLASH_CONFIG_B. From Juha Niskanen (2017-05-02).
* configs: Add nucleo-l452re board files. From Juha Niskanen
(2017-05-04).
* fixedmath: Add square root and b32_t conversion operators. From
Jussi Kivilinna (2017-05-04).
* Fix STM32F7 I2C interrupt handler. From Jussi Kivilinna (2017-05-04).
* STM32F7 serial: Allow configuring Rx DMA buffer size. From Jussi
Kivilinna (2017-05-04).
* 6LoWPAN: Replace Rime address naming with more consistent
short/exended address terminology (2017-05-04).
* 6LoWPAN: Remove all ieee802.15.4 MAC knowledge from 6LoWPAN. Now
relies on wires/ieee802154 for all MAC-related operations (2017-05-04).
* 6LoWPAN: Local address length is fixed by the configuration. The
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
remote address be with short or extended (2017-05-04).
* STM32L4: Separate SYSCFG into product line specific files for
clarity. From Juha Niskanen (2017-05-05).
* STM32L4: firewall for stm32l4x3xx. Not tested for any product
family, but now it at least compiles. L496 devices can have one bit
wider Volatile Data Segment. From Juha Niskanen (2017-05-05).
* STM32L4: Add more chips to Kconfig. This also removes
DPFPU/DTCM/ITCM features again, fixing a recent git history hickup.
From Juha Niskanen (2017-05-05).
* configs/nucleo-l496zg: Kconfig was copied from nucleo-144. Removed
as most options have not been tested. From Juha Niskanen (2017-05-05).
* nucleo-144: Default for choice in Kconfig was not one of the
possible choices (2017-05-05).
* Kinetis: Add TPM to K66 chip. From David Sidrane (2017-05-05).
* Kinetis: Fixed CLKSRC Bit Names. From David Sidrane (2017-05-05).
* Kinetis: Add OSC_DIV to the kinetis_osc header. From David Sidrane
(2017-05-05).
* Kinetis: Use optional BOARD_OSC_CR and BOARD_OSC_DIV in clock
configuration. From David Sidrane (2017-05-05).
* Kinetis: Added HW flow control and termios. From David Sidrane
(2017-05-05).
* wireless/ieee802154: Changes rxenable at radio layer. From Anthony
Merlino (2017-05-03).
* wireless/ieee802154: Finishes promiscuous mode IOCTL. From Anthony
Merlino (2017-05-03).
* wireless/ieee802154: Removes radio IOCTL. Starts bringing radio and
MAC closer with well-defined interface. From Anthony Merlino
(2017-05-05).
* STM32L4: Add support for many new MCUs from STM32L4X3XX product line
and Nucleo-L452 board. From Juha Niskanen (2017-05-05).
* 6LoWPAN: Use information in struct ieee802154_data_ind_s when
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
reassembling a packet (2017-05-05).
* ieee 802.15.4: Add a pool-based memory allocator for RX frame
meta-data (2017-05-05).
* kinetis k66, k64, k60, k40, k20: Pin mux configure all I2C signals as
Open Drain. The output structure of the GPIO for I2C needs to be
open drain. When left at the default, one can observe on a scope the
slave contending with the push-pull during the ACK. From David
Sidrane (2017-05-05).
* wireless/ieee802154: Removes msdu_length from meta-data since it is
intrinsically in the IOB. From Anthony Merlino (2017-05-06).
* wireless/ieee802154: Reworks data_ind allocation to include IOB
allocation/deallocation. Hides private data. From Anthony Merlino
(2017-05-05).
* wireless/ieee802154: Completes Rx data flow through MAC layer to
callback. From Anthony Merlino (2017-05-06).
* Kinetis: Add ARCH_HAVE_I2CRESET. From David Sidrane (2017-05-06).
* Reworks data_ind allocation to include IOB allocation/deallocation.
Hides private data. From Anthony Merlino (2017-05-06).
* STM32: Serial Allow configuring Rx DMA buffer size. From David
Sidrane (2017-05-06).
* 6LoWPAN: Minor cleanup and re-verification of all compression modes
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
after so many recent changes (2017-05-06).
* Update the C coding standard document (2017-05-06).
* IEEE 802.15.4 network driver. Remove support for multicast address
filtering; doesn't work that way on an IEEE 802.15.4 network
(2017-05-08).
* STM32: Serial DMA buffer round off not up. From David Sidrane
(2017-05-08).
* STM32 TIM: Add method to get timer width. Freerun timer: Use timer
width to get the correct clock rollover point (2017-05-08).
* wireless/ieee802154: Finishes MAC processing of received data frame.
From Anthony Merlino (2017-05-08).
* wireless/ieee802154: Finishes MAC char driver read functionality.
From Anthony Merlino (2017-05-08).
* wireless/ieee802154: MRF24J40: Finishes receive functionality,
supports promicuous mode, and rxonidle attributes. From Anthony
Merlino (2017-05-08).
* wireless/ieee802154: Completes basic receive functionality. From
Anthony Merlino (2017-05-08).
* Final fixes to get the nucleo-l432kc config build. Execution not
tested yet. From Sebastien Lorquet (2017-05-09).
* Adapt stm32l43x pin definitions. From Sebastien Lorquet (2017-05-09).
* More unbuilt stm32 -> stm32l4 changes. From Sebastien Lorquet
(2017-05-09).
* Restore settings for UARTs 4 and 5. From Sebastien Lorquet
(2017-05-09).
* IOBs: Move from driver/iob to a better location in mm/iob
(2017-05-09).
* STM32L4: Add dbgmcu header files. From Juha Niskanen (2017-05-09).
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
* wireless/ieee802154: Fixes missing handle of read/write being able to
be interrupted. From Anthony Merlino (2017-05-09).
* wireless/ieee802154: Starts implementing START.request primitive.
From Anthony Merlino (2017-05-09).
* drivers/serial: I discovered a problem in the file
drivers/serial/serial.c concerning the function uart_close(â¦). In the
case that a serial device is opened with the flag O_NONBLOCK the
function uart_close(â¦) blocks until all data in the buffer is
transmitted. The function close(â¦) called on an handle opened with
O_NONBLOCK should not block. The problem occurred with a CDC/ACM
device. From Stefan Kolb (2017-05-10).
* mtd/config: erase block between block read and write. From Juha
Niskanen (2017-05-10).
* Moved LIS3DSH from the I2C-dependent block to the SPI-block to make
Make.defs consistent with the driver (SPI only) and
drivers/sensors/Kconfig. From Floxx (2017-05-10).
* syslog: Add option to buffer SYSLOG output to avoid interleaving
(2017-05-10).
* syslog buffering: Use IOBs to buffer data, not an on-stack buffer
(2017-05-10).
* STM32L4: Add internal flash write support. From Juha Niskanen
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
(2017-05-11).
* When syslog message has addition characters after last new-line. With
buffering those now get lost as vsyslog does not flush output after
lib_sprintf. Additional trailing characters could be ANSI escape
sequence to reset state that message setups. For example, macro here
uses colors and resets state after actual message (including '\n'):
With flushing added to vsyslog, then there is problem that next
syslog line might come from other task before reset sequence, causing
wrong line getting color. This could be avoided by not flushing on
'\n' but only if IOB is full and/or at end of vsyslog. Would this
make sense?. From Jussi Kivilinna (2017-05-11).
* Syslog: Need inclusion of errno.h for fix building with
CONFIG_SYSLOG_TIMESTMAP=y (2017-05-11).
* mtd: Build RAMTRON and AT45DB drivers only if selected. From Juha
Niskanen (2017-05-11).
* mtd/config: Fix byte read interface test. From Juha Niskanen
(2017-05-11).
* mtd: Fix some unallocated and NULL pointer issues. rwb->wrflush and
rwb->wrmaxblocks in rwbuffer could get unallocated values from
ftl_initialize() in some configurations. Also fixes related assert:
up_assert: Assertion failed at file:rwbuffer.c line: 643
that can happen with the following configuration:
CONFIG_FTL_WRITEBUFFER=y
CONFIG_DRVR_WRITEBUFFER=y
# CONFIG_FS_WRITABLE is not set
These problems are caused by CONFIG variable differences between the
buffer layers. TODO: This is not a perfect solution. readahead
support has similar issues. From Juha Niskanen (2017-05-11).
* STM32L4: port stm32l4_serial_get_uart function from STM32F7. From
Juha Niskanen (2017-05-12).
* syslog: Avoid flushing syslog_stream buffer, if possible, until
lib_vsprintf() completely parses the format. This assures that the
flush will flush the entire output, even data that may potentially
follow the linefeed. And, in that case, it cannot be interleaved
with other devug output. Suggested by Jussi Kivilinna (2017-05-12).
* syslog: There is yet another place where the output can get split.
That is in syslog_dev_write(): It will break up the stream to insert
a CR before the LF. This can that can be avoid be generating the
CR-LF sequence in the buffer and then detecting and ignoring valid
CR-LF sequences, rather than expecting syslog_dev_write() to insert
the CR in this case. I don't like the idea that syslog_dev_write()
still scans the entire output buffer to expand CR-LF sequence. This
seems really wasteful, especially in this case where we can be sure
that the is no CR or LF without a matching LF or CR. Bu, I think,
the existing behavior in syslog_dev_write() must be retained because
it is needed in other contexts (2017-05-12).
* Bitbucket Issue 47: Some of last syslog changes needed to be
condition on #ifdef CONFIG_SYSLOG_BUFFER in order to be built without
syslog buffering enabled (2017-05-12).
* Move CAN subsystem to its own directory and put device drivers
there. From Alan Carvalho de Assis (2017-05-12).
* locale.h: Add a bogus definition of locale_t. From (2017-05-12).
* kinetis K66: Fixed TMP2_CH1 definition. From David Sidrane
(2017-05-12).
* kinetis K66: Define ALT1 to match ref manual. From David Sidrane
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
(2017-05-12).
* kinetis K66: GPIO and pin mux cleanup. From David Sidrane
(2017-05-13).
* STM32F410: Add support for STM32F410. STM32F410 is a version of
STM32F4 with 32 KB of RAM and 62 or 128 KB of flash. From Gwenhael
Goavec-Merou (2017-05-13).
* Kconfig/deconfigs: Add CONFIG_ARCH_TOOLCHAIN_GNU to indicate that
the toolchain is based on GNU gcc/as/ld. This is in addition to the
CPU-specific versions of the same definition (2017-05-13).
* Remove CONFIG_ARM_TOOLCHAIN_GNU; replace with
CONFIG_ARCH_TOOLCHAIN_GNU (2017-05-13).
* Tiva I2C: Correct an error in conditional compilation (2017-05-13).
* Kconfig: Rename CONFIG_ARM_TOOLCHAIN_IAR to
CONFIG_ARCH_TOOLCHAIN_IAR (2017-05-13).
* Move prototype for up_cxxinitialize() from nuttx/include/nuttx/arch.h
to apps/include/platform/cxxinitialize.h (2017-05-13).
* libc/wchar: Versions mbrlen and mbsrtowcs taken and adapted from
FreeBSD code (at https://github.com/freebsd/freebsd/). From Matias
v01d (2017-05-13).
* tcp: wait for 3-Way Handshare before accept() returns. From Simon
Piriou (2017-05-14).
* configs/photon/wlan: disable network logs and add nsh over telnet.
From Simon Piriou (2017-05-14).
* TCP: Send RST if applicaiton 'unlistens()' before we complete the
connection sequence (2017-05-14).
* drivers: fix some bad NULL checks. From Juha Niskanen (2017-05-15).
* drivers: rename newly introduced up_i2creset to I2C_RESET. From
Juha Niskanen (2017-05-15).
* TCP: An RST received during the 3-way handshake requires a little
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
more clean-up (2017-05-15).
* STM32 CAN: I had the problem that the transmit FIFO size (= actual
elements in FIFO) was slowly increasing over time, and was full after
a few hours. The reason was that the code hit the line
"canerr("ERROR: No available mailbox\n");" in stm32_cansend, so
can_xmit thinks it has sent the packet to the hardware, but actually
has not. Therefore the transmit interrupt never happens which would
call can_txdone, and so the size of the FIFO size does not decrease.
The reason why the code actually hit the mentioned line above, is
because stm32can_txready uses a different (incomplete) condition than
stm32can_send to determine if the mailbox can be used for sending,
and thus can_xmit forwards the packet to stm32can_send.
stm32can_txready considered mailboxes OK for sending if the mailbox
was empty, but did not consider that mailboxes may not yet be used if
the request completed bit is set - stm32can_txinterrupt has to
process these mailboxes first. Note that I have also modified
stm32can_txinterrupt - I removed the if condition, because the CAN
controller retries to send the packet until it succeeds. Also if the
condition would not evaluate to true, can_txdone would not be called
and the FIFO size would not decrease also. From Lederhilger Martin
(2017-05-16).
* drivers/bch: BCH character driver bch_ioctl() always returns -ENOTTY
for DIOC_GETPRIV command. It should returns OK if DIOC_GETPRIV
command succeeds. From EunBong Song (2017-05-16).
* There can be a failure in IOB allocation to some asynchronous
behavior caused by the use of sem_post(). Consider this scenario:
(1) Task A holds an IOB. There are no further IOBs. The value of
semcount is zero. Task B calls iob_alloc(). Since there are not
IOBs, it calls sem_wait(). The value of semcount is now -1. (2)
Task A frees the IOB. iob_free() adds the IOB to the free list and
calls sem_post() this makes Task B ready to run and sets semcount to
zero NOT 1. There is one IOB in the free list and semcount is zero.
When Task B wakes up it would increment the sem_count back to the
correct value. (3) But an interrupt or another task runs occurs
before Task B executes. The interrupt or other tak takes the IOB off
of the free list and decrements the semcount. But since semcount is
then < 0, this causes the assertion because that is an invalid state
in the interrupt handler. So I think that the root cause is that
there the asynchrony between incrementing the semcount. This change
separates the list of IOBs: Currently there is only a free list of
IOBs. The problem, I believe, is because of asynchronies due
sem_post() post cause the semcount and the list content to become out
of sync. This change adds a new 'committed' list: When there is a
task waiting for an IOB, it will go into the committed list rather
than the free list before the semaphore is posted. On the waiting
side, when awakened from the semaphore wait, it will expect to find
its IOB in the committed list, rather than free list. In this way,
the content of the free list and the value of the semaphore count
always remain in sync (2017-05-16).
* stm32_serial: Fix freezing serial port. Serial interrupt
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
enable/disable functions do not disable interrupts and can freeze
device when serial interrupt is received while execution is at those
functions. Trivially triggered with two or more threads write to
regular syslog stream and to emergency stream. In this case, freeze
happens because of mismatch of priv->ie (TXEIE == 0) and actually
enabled interrupts in USART registers (TXEIE == 1), which leads to
unhandled TXE interrupt and causes interrupt storm for USART. From
Jussi Kivilinna (2017-05-17).
* STM32 Ethernet: Add support for KSZ8081 PHY interrupts. From
Sebastien Lorquet (2017-05-17).
* IPv6: Fix net_ipv6_pref2mask(). From Masayuki Ishikawa (2017-05-18).
* net procfs: Fix buffer corruption and refactor netdev_statistics.c.
From Masayuki Ishikawa (2017-05-19).
* binfmt: Fix .dtor memory allocation. From Masayuki Ishikawa
(2017-05-19).
* stm32_i2c: make private symbols static. From Juha Niskanen
(2017-05-19).
* network IOCTL commands: The only place in net/netdev/netdev_ioctl.c
where the interface state should change is for SIOCSIFFLAGS. The
other ones .. SIOCSIFADDR, SIOSLIFADDR, SIODIFADDR .. should not
change the link state. From Sebastien Lorquet (2017-05-19).
* drivers/wireless/ieee80211: Add support for AP scanning. From Simon
Piriou (2017-05-21).
* drivers/audio: Add cs43l22 audio driver STM32F4: Add I2S driver.
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
From Taras Drozdovsky (2017-05-21).
* This is based on a patch by Taras Drozdovsky. Basically, the delay
that was added during the integration of the CDC/ACM host driver was
interfering with streaming audio. That delay was put there to
prevent build endpoints from hogging the system bandwidth. So what
do we do? Do we hog the bandwidth or do we insert arbitrarity
delays. I think both ideas such (2017-05-21).
* Replace sprintf() with snprintf() in pipe.c. From Nobutaka Toyoshima
(2017-05-22).
* drivers/bch: Fix 'Missing Unlock' in bchdev_driver.c. From Masayuki
Ishikawa (2017-05-22).
* FAT: Fix 'Missing unlock' in fs_fat32.c. From Masayuki Ishikawa
(2017-05-22).
* netdb: Fix time info in lib_dnscache.c. From Masayuki Ishikawa
(2017-05-23).
* STM32L4: Add IWDG peripheral. This is the same as for STM32 except
that prescale and reload can be changed after watchdog has been
started, as this seems to work on L4. From Juha Niskanen (2017-05-23).
* drivers/can: Add Microchip MCP2515 CAN Bus controller driver. From
Alan Carvalho de Assis (2017-05-23).
* button_upper: Fix interrupt enabling for poll-events. From Jussi
Kivilinna (2017-05-24).
* netdb: Fix bugs in lib_gethostbynamer.c. This fix sets h_name in
struct hostent returned by gethostbyname(). From Masayuki Ishikawa
(2017-05-25).
* TCP: Fix tcp_findlistner() in dual stack mode. From Masayuki
Ishikawa (2017-05-25).
* TCP: tcp_input() now receives IP domain as an input parameter vs.
deriving from the IP header length (2017-05-25).
* Kinetis ADC: Various corrections and updates. From David Sidrane
(2017-05-25).
* drivers/lcd: Add driver for Nokia 5110 (Philips PCD8544). From Alan
Carvalho de Assis (2017-05-26).
* configs/stm32f103-miniumum: Add board support to use the Nokia 5110
LCD display driver. From Alan Carvalho de Assis (2017-05-26).
* configs/pic32mx7mmb: Add support for the Pinquino toolchain
(2017-05-27).
* configs/pic32mx7mmb: Repartition files to match newer
configurations. Add support for PROCFS file system. Default is now
Pinguino toolchain. Verify networking (2017-05-27).
* pthread_trylock: Fixes a problem in pthread_trylock() noted by
initialkjc@yahoo.com. When CONFIG_PTHREAD_MUTEX_UNSAFE=y, the
special return value EAGAIN was not being detected due to differences
in reporting of returned values (2017-05-29).
* vfs: fdopen: Add missing file stream flags clearing. Clear file
stream structure regardless of config options. Structure clearing is
needed as previous use of stream list entry might leave fs_flags
set. From Harri Luhtala (2017-05-31).
* drivers/input: Add Cypress MBR3108 CapSense touch button driver.
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
From Juha Niskanen (2017-05-31).
* STM32L4: gpio: put back EXTI line source selection. From Juha
Niskanen (2017-05-31).
* mtd/smart: Fix use of uninitialized variable. From Jussi Kivilinna
(2017-05-31).
* drivers/mtd/w25.c: Erase sector only if it is not in erased state.
From Jussi Kivilinna (2017-05-31).
* stm32f7: Add SPI DMA support. From Jussi Kivilinna (2017-05-31).
* drivers/mtd/w25.c: Enable short delay after sector/chip erase. From
Jussi Kivilinna (2017-05-31).
* pthread robust mutexes: Fix memmory trashing problem: the main task
may also use mutexes; need to check thread type before accessing
pthread-specific mutex data structures. Problem noted by Jussi
Kivilinna (2017-05-31).
* STM32L4 RTC: store RTC MAGIC to backup reg, not to address zero.
From Juha Niskanen (2017-06-01).
* drivers/{sensors,usbmisc}: Fix uninitialized I2C frequency. From
Juha Niskanen (2017-06-01).
* mtd/config: Add some error checks for I/O errors. From Juha
Niskanen (2017-06-01).
* pthread mutex: Remove bogus DEBUGASSERT. Problem noted by Jussi
Kivilinna (2017-06-01).
* Tiva SSI: Resolves issue 52 'Copy-Paste error in
tiva_ssibus_initialize()' submitted by Aleksandr Kazantsev
(2017-06-01).
* nucleo-f4x1re User LEDS: Issue #51 reports compilation problems with
stm32_userled.c. Reported by Gappi92 (2017-06-01).
* tools/: Add initialconfig.c so that perhaps in the future we will be
able to use this to generate a new configuration from scratch (rather
than having to derive new configurations from existing
configurations). NOTE: Not yet intregated into the build system
(2017-06-02).
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
7.22 2017-09-06 Gregory Nutt <gnutt@nuttx.org>
* Fix ELF loader up_checkarch on ARM arch. From Cristian Condurache
(2017-05-09).
* Kinetis: Disable MPU when not in protected mode. The hardware reset
state of the the MPU precludes any bus masters other then DMA access
to memory. Unfortunately USB and SDHC have there own DMA and will not
have access to memory in the default reset state. This change
disabled the MPU if present on system startup. From David Sidrane
(2017-06-02).
* Kinetis: teensy-3.x Define USBOTG-FS Read from FLASH access in board
config. Allow the board config to define the USBOTG-FS to have Read
access to FLASH. From David Sidrane (2017-06-02).
* Kinetis: usbdev clean up ensuring proper use of HW. Remove magic
numbers from code, documented the use of undocumented bits. Remove
comments and code that were not appropriate for this hardware.
Removed ifdef that's that were always compiled and removed code
blocks that were never compiled. Ensure proper access order to
hardware. Per the reference manual: disable endpoints prior to
configuring buffer descriptor, then enable endpoints Reorganize
interrupt processing order to offload data after processing errors.
Reorganize initialization so that there is a clear initialization
phase, reset phase for both the hardware and software structures. By
breaking the initialization into smaller pieces, the reset interrupt
only resets the resources within the controller that should be reset.
Rework suspend and resume logic so they perform properly. Made attach
and detach functions optional. As they do not make sense for a bus
powered device. Ensured the calls to up_usbinitalize
up_usbuninitalize do not violate the USB spec. From David Sidrane
(2017-06-02).
* WIP: wireless/ieee802154: More work on association/beacon-enabled
networks. From Anthony Merlino (2017-06-02).
* We developed a huge Changeset over a year ago to make USB Composite
configuration dynamical and be able to instanciate the CDCACM
multiple times inside this device. We use this feature to switch
between one in normal and up to three CDCACMs in maintenance boot.
The control path starts in boardctl.c where the configuration for the
device is constructed. There are still a few issues which I'll ask
you to have a look at before this beast can be merged. (1) To be
able to construct the data dynamically I have changed some
USB-Structs to be packed. Maybe there are additional structs to
change (just for completeness â not for current functionality). (2)
I've added the Macro COMPILE_TIME_ASSERTION two times (in
usbmsc_desc.c and in cdcacm_desc.c) to stay private. Maybe youâll
find a better place. Itâs used to check the size of the structs
against the assumptions. (3) I've changed the interface for some
USB-Functions to receive also the dynamic configuration. Maybe this
can be done more elegant. (4) The original NuttX (without the patch)
seems to have problems with a Composite device holding a CDCACM and
an MSC. The USB SET CONFIGURATION request does not to work at all.
This makes the test fail under Windows and under Linux. Applying this
patch doesnât change anything â because it only changes the
configuration â not the behavior. Maybe youâll have a look at
this problem before applying the patch. From Frank Benkert
(2017-06-01).
* power: battery_charger: add ioctl for charging input current. From
Juha Niskanen (2017-06-06).
* MTD FLASH drivers: The byte write method of several drivers had a
cloned error: It was not locking the bus while performing byte write
operations (2017-06-06).
* Kinetis:sim ensure isolation of clock dividers for 0 value case.
This fixes a bug were a SoC does not have a clockdivN register and
passes a 0 for the init value. This prevents overflow of the 0
decremented to -1 (0xffffffff) spilling over to other clockdivN
feilds. From David Sidrane (2017-06-06).
* teensy-3.x:Removed call to khci_usbattach. The call is not need by
the driver if CONFIG_USBDEV_BUSPOWERED=y. The class register will
enable the soft connect pull up. The khci_usbattach call only set a
flag, and that flag is only tested in the class register. On a USB
powered device if we are running we are attached. From David Sidrane
(2017-06-06).
* teensy-3.x:Refreshed config and made board self powered. From David
Sidrane (2017-06-06).
* Kinetis:USB-FS driver. Removed the notion of attached. The
khci_usbattach is call early in the init either in board_initalize or
in board_app_initalize. In either case it is always done prior to the
the class register. Therefore the khci_usbattach call only set a
flag, and that flag is only tested in the class register. The class
register will enable the soft connect pull up. From David Sidrane
(2017-06-06).
* Kinetis:Fixed waning for kinetis_mpudisable. Missing header file
added. From David Sidrane (2017-06-06).
* STM32L4: Ad support for the STM32L475 family. Incomplete -- still
needs pinmap, rcc, otgfs, syscfg (2017-06-08).
* STM32L4: Add L475 syscfg register definitions (2017-06-08).
* STM32L4: Add STM32L475 RCC definitions/logic (2017-06-08).
* STM32L4: Add STM32L475 OTGFS header file. Not fully reviewed
(2017-06-08).
* STM32L4: Add STM32L475 pinmap. Initial cut is just the the L476
pinmap with unsupported devices removed (2017-06-08).
* configs/stm32f103-minumum SPI: SPIDEV_WIRELESS used when this has
changed to SPIDEV_CONTACTLESS. From Nicolas Estibals (2017-06-08).
* stm32f103-minimum: dd GPIO device driver example for
STM32F103-Minimum. This chang eadds the initialization needed by
stm32f103-minimum board to support the NuttX GPIO Subsystem. From
Alan Carvalho de Assis (2017-06-08).
* STM32L4: Remove some C++ style comments (2017-06-08).
* configs/: a few more places where SPIDEV_WIRELELSS should be
SPIDEV_CONTACTLESS (2017-06-08).
* kinetis: lpserial fixed header inclusion. From David Sidrane
(2017-06-08).
* Kinetis: SPI driver. From David Sidrane (2017-06-08).
* Fix C++ __guard implementation for ARM. The standard C++ ABI that
most platforms follow defines __guard to be 64 bits. The existing
implementation of libxx_cxa_guard.cxx follows this. However, the
32-bit ARM C++ ABI defines it as 32 bits instead, and changes the
meaning slightly so only the lowest bit is used. This matters because
GCC creates guard symbols without regards to what libxx_cxa_guard.cxx
says. So on ARM, gcc allocates 4 bytes, but __cxa_guard_release
writes 8 bytes, zeroing out another unlucky variable nearby. Fix it
by special-casing 32-bit ARM in libxx_cxa_guard. From Jim Paris
(2017-06-09).
* vfs/poll: fix timeout calculation. From Jim Paris (2017-06-09).
* stm32f103-minimum: Fix a small BUG when reading from output pin. We
need a different read_ops to read from output pin. This patch fixes
the issue. From Alan Carvalho de Assis (2017-06-09).
* testbuild:Added -x to fail build on errors for CI. On CI we want to
know ASAP of a failure. This adds the -x (exit on build failures)
option to faclitate that behavior. Use ${MAKE} ${MAKE_FLAGS} for
make invocation. When -x is provided change MAKE_FLAGS to --silent
--no-print-directory and set -e. Ignore exit status when using grep
for checking for CONFIG_NXWM=y. From David Sidrane (2017-06-10).
* stm32f103-minimum: Use separated read_ops for GPIO interrupt pins.
From Alan Carvalho de Assis (2017-06-11).
* STM32F33: Fix hrtim definitions, Add beginning of HRTIM driver. From
Mateusz Szafoni (2017-06-11).
* STM32 HRTIM: add character driver. From Mateusz Szafoni
(2017-06-11).
* nucleo-f334r8: add HRTIM initialization. From Mateusz Szafoni
(2017-06-11).
* i.MX6: Fix a wrong parameter passed when calling irq_attach() in
imx_serial.c. From Masayuki Ishikawa (2017-06-12).
* Based on the last PR, review all serial driver vector attachment.
Found one additional error and updated all relevant drivers to
current interrupt parameter passing (2017-06-12).
* gethostbyname_r: Fix check for space in buffer (2017-06-12).
* MTD M2PX: If we READ while a write/erase is pending, the command is
ignored and the write/erase continues. If we dont catch this
situation we will return garbage to the user because the flash will
not execute the command. So READ MUST wait for write completion, and
before that, the bus must be locked since it's a precondition to
calling waitwritecomplete(). From Sebastien Lorquet (2017-06-12).
* MTD FLASH driver: Clone Sebastien Lorquet's m25px change to at25,
is25xp, ramtron, and sst25xx (2017-06-12).
* STM32 HRTIM: GPIOs configuration + EEV and FAULT strucutres. From
Mateusz Szafoni (2017-06-12).
* stm32/stm32l4 PWM: While attempting to output a 70 MHz square wave
from the timer output of a STM32 clocked at 140 MHz (which works fine
in baremetal C), I stumbled on what I believe to be an error in
arch/arm/src/stm32/stm32_pwm.c. Line 1304 we are told that: reload =
timclk / info->frequency; which I belive to be incorrect, it should
be: reload = timclk / info->frequency - 1; since starting to count
from 0, if I want to output half of the TIM clock, I must count to 1
and not to 2. Surely enough, the original code did output 140/3=47
MHz, while this correction does allow the output up to 70 MHz. I am
not sure this affects most users generating slow PWM (e.g. PX4) but
for frequencies close to the PCLK, indeed the difference becomes
significant. From JM (2017-06-13).
* mtd/w25: add missing locking and fix SPI_SELECT usage for
w25_unprotect. From Jussi Kivilinna (2017-06-13).
* mtd/w25: wait for BUSY flag to clear in w25_readid and w25_unprotect.
W25Q128 datasheet says that all instructions expect 'Read Status
Register' and 'Erase/Program Suspend' are ignored when BUSY flag in
status register is '1'. Therefore wait for busy flag to clear in
w25_readid() and w25_unprotect(). From Jussi Kivilinna
(2017-06-13).
* freedom-k66f: Use SPI driver. Initalize SPI1 on connector J6. No
real use, as of yet. From David Sidrane (2017-06-13).
* pthreads: Move functions from sched/pthreads to libc/pthreads.
These functions just coordinate other OS interface calls but are not
a fundamental OS interfaces and, hence, do not belong within the OS:
pthread_yield(), pthread_once(), pthread_cond_init(),
pthread_cond_destroy(), pthread_barrier_init(),
pthread_barrier_destroy(), and pthread_barrier_wait() (2017-06-14).
* multiple fixes for stm32f1xx RTC clock: (1) compile issues because
of missing RTC_MAGIC #defines, (2) missing functionality based on
RTC_MAGIC in RTC based on stm32_rtcounter.c, (3) IRQ setup from
up_rtc_initialize was later reset in up_irqinitialize, (4) write
access to backup registers without enabling access to backup domain,
(5) possible races in set/cancel alarm. tested with STM32F103C8
only. device now wakes up from forced STANDBY mode by alarm. From
Leif Jakob (2017-06-14).
* stm32f103-minimum: Fix compiler error in MCP2415 logic (2017-06-14).
* Fixed ARMv7-M Toolchain setting. Cortex-M4 only have Single
Precision FPU. From Hidetaka Takano (2017-06-14).
* wireless/ieee802154: Lots of fixes, cleanup, new functionality.
Functional. From Anthony Merlino (2017-06-14).
* Fixed ARMv7-M Toolchain definition for Cortex-M4. From Hidetaka
Takano (2017-06-15).
* Improve configure.sh behavior: (1) enable to call from top
directory. (2) enable to designate direct path for config. (3)
install .gdbinit if the target has. From Hidetaka Takano
(2017-06-15).
* Update tools/configure.c to same functionality as configure.sh. Add
an array of optional file names. Currently, .gdbinit is the only
optional file but other things like IDE-specific project files might
need to be copied as well (2017-06-15).
* STM32 HRTIM: outputs enable, period and compare functions, cosmetics.
From Mateusz Szafoni (2017-06-15).
* tool/configure will now copy Eclipse project files if they are
present in the board directory file (2017-06-15).
* configs/.gitignore: Make sure that any .gdbinit, .project, or
.cproject files are ignore so that they are less likely to be
included in a patch or PR (2017-06-15).
* wireless/ieee802154: Fixes issue with wrong information being sent in
a rejected association response frame. From Anthony Merlino
(2017-06-15).
* wireless/ieee802154: Fixes issue with wrong information being sent in
a rejected association response frame. From Anthony Merlino
(2017-06-15).
* Rename configs/mrf24j40-radio to mrf24j40-mac (2017-06-15).
* clicker2-stm32: Add a configuration that will, eventually, be used
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
for 6loWPAN testing (2017-06-15).
* Fix a typo. And typo in Kconfig file is reflect in all defconfig
files (2017-06-15).
* SAMv7: TWIHS driver add reference counting. From David Sidrane
(2017-06-15).
* STM32 HRTIM: structures for deadtime and chopper, cosmetics. From
Mateusz Szafoni (2017-06-16).
* Clicker2-STM32: Enable RAMLOG in mrf24j40-6lowpan configuration.
Update README (2017-06-16).
* STM32 F4 FLASH: Enable/disable the flash write protection on any
sector. I have verified it to work on the stm32f427. From Sebastien
Lorquet (2017-06-16).
* STM32 SPI/I2S: Back out a bad pin mapping change from
4ab2a3661ea57211f4ae12fe21c5de3454ba0ef2. Try to staighten out some
I2C3 and SPI3 pin configuration stuff (2017-06-16).
* Clicker2-stm32: Allow both IEEE 802.15.4 MAC character and network
devices to be registered (2017-06-16).
* Clicker2-STM32: Enable networking and 6loWPAN in the
mrf24j40-6lowpan configuration. Fix a couple of new 6loWPAN compile
issues revealed by this new configuration (2017-06-16).
* Merge remote-tracking branch 'origin/master' into ieee802154
(2017-06-16).
* clicker2-stm32: mrf24j40-6lowpan configuration needs to enabled the
ieee 802.15.4 MAC network device as well (2017-06-16).
* stm32:flash add CONFIG_STM32_STM32F469 to list defining OPTCR1. From
David Sidrane (2017-06-17).
* ieee802.15.4 loopback: Better simulation addressing: sort, extended,
panid, and IP address conversion (2017-06-17).
* ieee802154 MAC: Fix a warning when compiled for a target with 64-bit
addressing (2017-06-17).
* Update some 6loWPAN configurations based on changes to NSH Kconfig
(2017-06-17).
* wireless/ieee802154: Fixes ordering of strings associated with
changed enum. From Anthony Merlino (2017-06-17).
* wireless/ieee802154: Renames mac802154_poll to mac802154_radiopoll to
be more obvious. Merges shared logic for sending data request
commands. Minor improvements and simplified logic. From Anthony
Merlino (2017-06-17).
* STM32 HRTIM: Faults and events configuration, timers mode
configuration, add hrtim ops, ADC triggering and DAC synch events.
From Mateusz Szafoni (2017-06-18).
* Add RFC6775 header file (2017-06-18).
* rfc6775: Fix header, add references, correct naming. This is NOT
ICMPv6, but part of 6LoWPAN that acts like ICMPv6 (2017-06-18).
* wireless/ieee802154: Renames Kconfig option, adds option for
unimplemented receiver priority. From Anthony Merlino (2017-06-18).
* STM32 HRTIM: Fix initialization bug, minor changes. Remove unneeded
definitions. From Mateusz Szafoni (2017-06-18).
* IEEE 802.15.4 MAC: Add list management and prioritization logic that
will permit the MAC layer to support bound multiple clients
(2017-06-18).
* ieee 802.15.4: Need counting protection on the logic that releases
the notification resources. Otherwise, notification handlers may be
operating with a stale pointer (2017-06-18).
* IEEE 802.15.4 Network Driver: Add logic to setup the network mask,
update the MAC-based IPv6 addressing when the network is brought up.
The idea is that addressing changes are supposed to occur only while
the network is down but won't take effect until the network is up
again (2017-06-18).
* Swithches IEEE 802.15.4 based code to using byte arrays instead of
uint16_t values for short address and PAN ID. From Anthony Merlino
(2017-06-19).
* Throw error when error happens in the tcp_listen function. From
Roland Takacs (2017-06-19).
* Support listening sockets in the getsockname() function. From Roland
Takacs (2017-06-19).
* IEEE 802.15.4/6LoWPAN: Correct one more usage of saddr; also update a
README and the TODO list (2017-06-19).
* STM32 ADC: invalidate dma buffer before use. Missing invalidation
caused old samples being fetched from cache. From Jussi Kivilinna
(2017-06-19).
* Enable UDP example in clicker1-stm32/mrf24j40-6lowpan example, make
sure that CONFIG_EXAMPLES_UDP_NETINIT is set in all other
examples/udp configurations (2017-06-19).
* Use struct instead of pointer to the struct as sizeof argument in
memset in usbmsc.c. Otherwise it leads to error: argument to
'sizeof' in 'memset' call is the same pointer type 'struct
usbmsc_lun_s *' as the destination. From Oleg Evseev (2017-06-19).
* /configs/clicker2-stm32/mrf24j40-6lowpan: Enables both client and
server UDP tests on the target; Update a README file (2017-06-19).
* wireless/ieee802154: Cleans up some endianness issues and fixes poll
request issue. From Anthony Merlino (2017-06-19).
* STM32 L4: Set I2C SDA and SCL pins to open drain mode. From Pekka
Ervasti (2017-06-20).
* STM32 L4: I2C4 was writing to wrong RCC registers. From Juha
Niskanen (2017-06-20).
* STM32 F7: Set I2C4 SDA and SCL pins to open drain mode. From Juha
Niskanen (2017-06-20).
* 6LoWPAN: Add debug statements; Update configuration, need to specific
6LoWPAN compatible port numbers (2017-06-20).
* mac802154_req_data() can return without releasing the exclsem
(2017-06-20).
* STM32: Allow clock frequencies > 168 Mhz on stm32f427/429. We need
to enable the power overdrive for this case. This patch allows the
required bits to be set in proper sequence. It also modifies the
local register access operations to allow more than 16-bit registers.
From Sebastien Lorquet (2017-06-20).
* Kinetis:I2C driver added I2C3, reference counting and reset.
Refactored the driver to support reference counting and reset added
I2C3. From David Sidrane (2017-06-20).
* ieee802154 network driver now retries if ieee802154_req_data()
returns EINTR. In clicker2-stm32 6LoWPAN configuration, increased
the number of TX descriptors to match then number of IOBs
(2017-06-20).
* Kinetis:I2C fixed mis-placed kinetis_i2c_endwait. Fixed accedently
replaced post with wait. From David Sidrane (2017-06-20).
* ieee802154_req_data: Don't modify the IOB until we are certain that
no EINTR errors will occur. Otherwise, the retry will fail
(2017-06-20).
* ieee802154 MAC: Free allocated TX descriptor if an error occurs after
the descriptor has been allocated (2017-06-20).
* ieee802154: Adds some missing elements to start support for
beacon-enabled networks. From Anthony Merlino (2017-06-20).
* ieee802154: Fixes Kconfig naming for number of TX desc and number of
notifications. From Anthony Merlino (2017-06-21).
* pthread_mutex_unlock(): Missing check for the case where
pthread_mutex_lock() is called when the mutex is not locked. In that
case, it would increment the underlying semaphore avove 1. This is
the fix for a problem noted by initialkjc@yahoo.com (2017-06-21).
* Missing option to select CONFIG_MAC802154_NNOTIF in Kconfig
(2017-06-21).
* clicker2-stm32/mrf24j40-6lowpan: Network now runs on LP work queue
(2017-06-21).
* STM32 L4 DMA: Correct USART3_RX bad channel definition. From Juha
Niskanen (2017-06-21).
* 6LoWPAN: Correct an error in calculating the location of the UDP
header (2017-06-21).
* wireless/ieee802154: Minor naming change to align better with coding
guidelines. From Anthony Merlino (2017-06-21).
* mrf24j40: Fix a warning (which is actually an error) (2017-06-21).
* 6LoWPAN: Correct a few addressing issues. The apps/examples/udp test
now appears to be fully functional. Also reserve two bytes at the
end of the frame for the FCS (2017-06-21).
* Do not search net device when all-zeros address is used. From Roland
Takacs (2017-06-22).
* Fix problems in last commit noted by Jeongchan Kim: last change
returned -EINVAL vs EINVAL; Treat the case where the mutex is already
unlocked just like the case where the mutex is held by another thread
-- return EPERM (2017-06-22).
* Logic of a353602aa9cc50ed958df11af35e3972101b5f40 only applies if
CONFIG_NETDEV_MULTINIC (2017-06-22).
* 6LoWPAN: Fixes needed when extended addressing is enabled. Currently
breaks short addressing. Loopback driver needs to initialize the MAC
meta data; Address decompression logic must have the MAC address to
handle the most common compression cases. Fix a src/dest address
confusion. Fix yet another addressing problem. That does it.
Several recent, proper bugfixes unmasked a few errors in the 6LoWPAN
logic. But I think full functionality is restored (2017-06-22).
* ieee802154: Stubs out some SCAN.request code. From Anthony Merlino
(2017-06-22).
* drivers/net/tun.c: Use critical section instead of semaphore in
tun_ifdown(). From Masayuki Ishikawa (2017-06-23).
* netdb: Fixed buffer size used for sending DNS queries should depend
on the configured DNS name size. From Ritjaina (2017-06-23).
* 6LoWPAN: Add missing IPv6 address creation to HC1 decode logic. Fix a
typo in an index that prevented use with HC1 and extended addresses
(2017-06-23).
* clicker2-stm32/mrg24j40-6lowpan: Add apps/examples/nettest. Refresh
all configurations that enable the nettest (2017-06-23).
* configs/sim/sixlowpan: Disable I2C tool. Not so useful in a
simulation (2017-06-23).
* 6LoWPAN: TCP logic was not obeying MTU packet size limitations.
Other TCP-specific issues also fixed. There remains a major
outstanding issue with ACK handling. Handle case where the local
address is zero (listen socket). Major re-architecting of TCP logic
to properly handle TCP stuf like ACKs and TPC windowing which were
not properly covered in the initial design. Still does not work;
hangs waiting of ACKs.Various fixes for a clean build if either TCP
or UDP are disabled. Given the current state of TCP, it is
recommended that you disable TCP. HC06, copy TCP header as though it
were data. Modify the the way TCP headers are transferred -- yet
again. TCP packet reassembly now seems to work OK, but no there now
does not seem to be a listener on the port (2017-06-24).
* IEEE802.15.4: Update RX statistics in network driver (2017-06-25).
* 6LoWPAN TCP: Fix more ACK handling, fix some callback flag settings.
Now the TCP test appears fully functional on 6LoWPAN (2017-06-25).
* ieee802154: Finishes transmission of beacon frames, and performing a
passive scan. From Anthony Merlino (2017-06-25).
* ieee80215: starts adding support for beacon-enabled networking. From
Anthony Merlino (2017-06-26).
* STM32L4 serial: Allow configuring Rx DMA buffer size. From Juha
Niskanen (2017-06-26).
* stm32f33xxx_rcc: cleanup + move hrtim clock source selection. fix
typo in stm32f33xxx_rcc.h. From Mateusz Szafoni (2017-06-26).
* 6LoWPAN: Fix duplicate and bad memcpy in loopback driver
(2017-06-26).
* Beacon logic: Damage control. Looks like something went wrong with
the PR merge (2017-06-26).
* ieee802154: Renames mac802154_indalloc to ieee802154_indalloc since
the functions are ieee802154 scoped functions. Improves notification
freeing functionality. Each notification now has a number of
clients. When the last client calls free, the notification is freed
back to the pool. From Anthony Merlino (2017-06-26).
* Clicker2-STM32: Add support for the Telnet client to the
mrf24j40-6lowpan configuration. Useless at the moment because the
NuttX telnet daemon does not yet support IPv6 (2017-06-27).
* ieee802154: Supports get request for coordinator address. From
Anthony Merlino (2017-06-27).
* ieee802154: Finishes beacon association functionality. From Anthony
Merlino (2017-06-27).
* smart: fix wrong freeing of device structure and use-after-free
issues on error paths. From Jussi Kivilinna (2017-06-28).
* net/: IPv6 packet input, Improve checks that the packet is destined
for us. There might be some odd things that can happen in certain
forwarding scenarios (2017-06-28).
* Fix -Werror=implicit-fallthrough on gcc7. From Julien Lecoeur
(2017-06-28).
* Fix warning implicit-fallthrough with arm-none-eabi-gcc 7. From
Julien Lecoeur (2017-06-28).
* 6LoWPAN: Add configurable support for 6LoWPAN star topology. With
this change, the endpoints which are the 'points' of the star will
forward all traffic to the coordinator. The coordinator is assumed
to be the 'hub' of the star. This function also implements IPv6
forwarding. That forwarding implementation is minimal, just enough
to support the forwarding requirements of the star hub node
(2017-06-28).
* Clicker2-STM32 + net/: Add configurations to support the endpoint
and hub roles in a star topology. Fix various things that broke when
IPv6 forwarding was enabled (2017-06-29).
* 6LowPan: Change how the destination node address is handled in the
star endpoint configuration. When the star endpoint sent the IPv6
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
destination address, the HC06 compression logic elided the address --
meaning that it could be reconstructed by the recipient based on the
receiver's assigned short address. However, when intercepted by the
hub, the uncompressed address does not know the short address of the
recipient and instead uses the short address of the hub. This means
two things: (1) it looks like the hub address is the destination
address, and (2) the uncompressed UDP packet has a bad checksum.
This change assures that the destination IPv6 address is not elided
in the case of the star endpoint configuration (2017-06-30).
* 6LoWPAN: Fix a misconception about HC06 16-bit IPv6 address
compression (2017-06-30).
* 6LoWPAN fix compile issue in star hub configuration (2017-06-30).
* This change backs out the 'misconception' fix of
76e6dba2e4bfab9515bef2866c5c59fd2a2f0fa0 and reimplements it in a way
that actually seems to work (2017-06-30).
* ieee802154: Random fixes to get beacon-enabled networking more
stable. From Anthony Merlino (2017-06-30).
* 6LoWPAN: TCP send logic was returning a failure in one case when, in
fact, the send was successful (2017-06-01).
* include/nuttx/net and net/: Move private prototype of
netdev_foreach() from the public include/nuttx/net/net.h to the
private net/netdev/ndetdev.h header file where it belongs
(2017-07-01).
* ieee802154: Cleans up some wireless logging. Fixes resp_waittime
field in ieee802154_macattr_u. Supports multiple incoming superframe
events. From Anthony Merlino (2017-07-01).
* Initial clang compile. From Goran MekiÄ (2017-07-01).
* Add CLANG definitions in Kconfig and Toolchain.defs (2017-07-02).
* samv71-xult: Add support for the MRF24J40 radio and create a
mrf24j40-starhub configuration. A few fixes to IPv6 and 6LoWPAN were
required to have 6LoWPAN and Ethernet coexisting. Untested and
expect some complexity in the bring-up. Put the serial console on
UART3, i.e., on a Arduino serial shield. Add missing MRF24J40
bring-up logic (2017-07-02).
* stm32f4 discovery: Add logic to register the button driver and the
user led driver if so configured. From Jan Pobrislo (2017-07-02).
* samv71-xult: Fix SP0 vs. TWHS0 in mrf24j40-starhub/defconfig; fix
copy-paste errors in SPI initialization logic. Fix a typo in
MRF24J40 initialization (2017-07-02).
* drivers/wireless/ieee802154: Moved radios to individual
sub-directories. From Anthony Merlino (2017-07-03).
* stm32f40xxx_rtcc ISR register and write protection fix. From Eetu
Nevalainen (2017-07-03).
* samv71-xult/mrf24j40-starhub: Disabled CONFIG_BOARD_INITIALIZE;
Correct MRF24J40 interrupt edge. Fix MRF24J40 interrupt pin. Should
have pull-ups on interrupting inputs. Reset pins backward. Add
reset logic (but comment out because it is not necessary)
(2017-07-03).
* Add some partial IP forwarding logic. Add some fragments of TCP
forwarding logic (2017-07-03).
* IPv6 forwarding logic must decrement the TTL and drop the packet if
the hop limit is exceeded (2017-07-04).
* IP forwarding. Adds a little more structure to handle passing
packets received on one network device to another network device.
Logic is still incomplete (2017-07-04).
* UDP networking: The TTL (time to live) was not being set in the IPv4
or IPv6 header unless the UDP socket was bound (2017-07-04).
* SAME70-Xplained: Add MRF24J40 support (2017-07-04).
* I've found that the interrupts aren't enabled since nothing updates
them after btn_poll() marks the file descriptor structure as being
polling. I've managed to make it work with this change. From Jan
Pobrislo (2017-07-04).
* include/nuttx/input: Remove bogus, obsolete keypad.h header file
(2017-07-04).
* net/udp: Fix a copy-paste error that could effect networking when
both IPv4 and IPv6 are enabled (2017-07-05).
* configs/Board.mk: Remove comment form end of line. In windows native
build, it appears to be trying to make that an extra parameter to the
AR command. From Jeff (2017-07-05).
* IP Forwarding: Flesh out TCP, UDP, and ICMPv6 packet forwarding
logic. In checking if the Ethernet MAC address is in the
ARP/Neighbor table, add an additional check to skip in the case of
CONFIG_NET_MULTILINK and the devices is not an Ethernet device. Add
IPv4 packet forwarding logic. Initial commit is an untested clone of
the IPv6 forwarding logic with a few minor logic changes for IPv4
(2017-07-05).
* IP forwarding: Add optional support to forward broadcast and
multicast packets. Add missing ICMP support (2017-07-06).
* FS: Remove DEBUGASSERT() in block_proxy() because the flags are
cleared later. From Masayuki Ishikawa (2017-07-06).
* Eliminate a warning with arm-none-eabi-gcc 7.1.0. From Julien
Lecoeur (2017-07-06).
* In arch/arm/src/stm32/Kconfig when the CPU is a STM32F4, some
STM32_HAVE_xx with xx = {OTGFS, TIM3, TIM4, SPI3, I2S3, I2C3} are
selected by default. But for F410 these peripherals are absent. This
change add tests to check if the target CPU is an F410 or not and
selects according to the situation. This also adds a select for
STM32_HAVE_DAC1 present on this STM32 flavor. From Gwenhael
Goavec-Merou (2017-07-06).
* Rename CONFIG_STM32_STM32F40XX to CONFIG_STM32_STM32FXXXX since it is
used by F4 parts other than F40x (2017-07-06).
* STM32 Kconfig: 'unfold' some of the dependencies to provide better
long term configuration support. This also effective reverts the
recent 15b85738e7b5b9df6377f56e2a6a629346f87964 (2017-07-06).
* ICMPv6: Fix so that ICMPv6 can be used with 6LoWPAN (2017-07-06).
* IPv6 Neighbor: Update table format to support IEEE 802.15.4 MAC
addresses (2017-07-06).
* configs/Board.mk: Remove quotes from CONFIG_ARCH_FAMILY. Causes
problems with Windows native build. From Jeff (2017-07-06).
* IP forwarding design simplication; might save some memory. Also fix
some compile issues introduce with last commit in MULTINIC
configration (2017-07-06).
* IP Forwarding: Another IP forwarding design simplification: Remove
an unnecessary field from state structure (2017-07-06).
* ICMPv6: Fix an address size calculation that was bungled in a recent
commit (2017-07-06).
* Networking: Improve naming and simplify some logic of previous
commit (2017-07-07).
* Networking: Correct some issues that prevent TCP from working
correctly when both IPv4 and IPv6 are enabled (2017-07-07).
* Add definitions that will permit TUN-only networking (2017-07-07).
* Move TUN ioctl commnd to include/nuttx/net/ioctl.h so that it will
always be unique. It a error in netdev_register: it was not handling
device names properly when TUN is the only network device
(2017-07-07).
* sim/ipforward: Add an IP forwarding configuration using TUN devices
and apps/examples/tun (2017-07-07).
* In TUN driver, do all polling on worker thread. Otherwise, the stack
gets very deep (2017-07-07).
* IP forwarding: Major rearchitecting of the outgoing portion of the
IP forwarding logic necessary into to properly received
device-related forwarding events (2017-07-07).
* ieee802154: Changes mac locking/unlocking to aid in debugging. From
Anthony Merlino (2017-07-07).
* IP forwarding: Remove some unnecessary data structure definitions
(2017-07-07).
* Makefile.unix: Add savedefconfig target. From Gwenhael Goavec-Merou
(2017-07-08).
* Add Gwenhael's change to Makefile.win and update README.txt to
described the new make target (2017-07-08).
* IP forwarding: Two bugfixes (1) IPFWD poll event must be unique and
different from other device poll events otherwise, some other waiting
task might get the poll, (2) Add logic necessary to forward 6LoWPAN
packets (2017-07-08).
* net/procfs: Fix some spacing when both IPv6 and IPv4 are enabled
(2017-07-08).
* Networking routing tables: Fix a compilation error when IPv6 and
routing are enabled (2017-07-08).
* ICMPv6: Add 6LoWPAN and IP forwarding support (2017-07-09).
* configs/b-l475e-iot01a: Add basic support for the STMicro
b-l475e-iot01a board. From Simon Piriou (2017-07-09).
* IP Forwarding: Fix a compile problem when IP forwarding of broadcast
messages is enabled (2017-07-09).
* ieee802154: mac802154_purge_timeout was not unlocking MAC before
returning. From Anthony Merlino (2017-07-09).
* ieee802154: Minor bug fix. Purging of indirect transaction was not
unlocking MAC. From Anthony Merlino (2017-07-09).
* Makefile.*: Add CONFIG_ARCH_CHIP_* definitions to defconfig in
savedefconfig target. Last of the conversions of defconfig files to
compressed format (2017-07-09).
* ieee802154: Improves internal timer logic to handle work serially.
Before, the MAC timer used a watchdog to schedule work with the high
priority worker queue. However, since everything in the MAC is
supposed to be serialized through the use of the high priority work
queue, but the timer uses a watchdog, there are some unintended
consequences. To simplify, we now use the delayed work feature of the
work queue. From Anthony Merlino (2017-07-09).
* Update configure.sh, configure.bat, configure.c: With compressed
format, part of the installation requires that we run 'make
olddefconfig' to restore the uncompressed defconfig format. Also,
while I was at it, I also added options to select host platform on
configure command line (2017-07-10).
* tools/refresh.sh: Now runs make savedefconfig before copying the new
defconfig file in place; Also, added a new option --defaults. Since
the number of defaults that you now have to answer is so large, the
option lets you just accept the default values. So it works just
like --slilent but still prompts you for the decision to save or
discard the new defconfig file (2017-07-10).
* tools/tesbuild.sh: Fix missing $ before variable name (2017-07-10).
* configs/clicker2-stm32: Adds support for per-function-call stack
checking. From Anthony Merlino (2017-07-10).
* drivers/wireless/ieee802154/mrf24j40: Minor timing fix. Matches
recommended value in datasheet. Splits up driver into multiple files
to make it easier to navigate. Fixes issue with non-beacon enabled
mode. From Anthony Merlino (2017-07-10).