Skip to content

Release candidate #8637

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 198 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
198 commits
Select commit Hold shift + click to select a range
20a842b
Fix doxygen comments and spelling errors
SenRamakri Oct 11, 2018
0483eae
NRF52: setup the UART_RTS pin during startup to enable console RX
Oct 1, 2018
d1a9ec7
NRF52: setup the UART_RTS pin during startup to enable console RX
Oct 1, 2018
cb69f8c
update unit testing documentation for Mac OS Mojave
lorjala Oct 4, 2018
6da02f0
Documentation improvements only - Prevent protected attributes from a…
TacoGrandeTX Oct 12, 2018
5d34776
Remove RawSerial protected member functions
Oct 12, 2018
6200cd1
Remove Serial protected member functions and attributes
Oct 12, 2018
85a049a
Add (Not Connected)
Oct 12, 2018
65a28f7
Remove note about Stream/Serial deprecation
Oct 12, 2018
a369799
Add note about default baud rate is 9600
Oct 12, 2018
e4ac85d
Revert "Remove note about Stream/Serial deprecation"
Oct 15, 2018
d6d6222
Move inline code snippets to code blocks
kegilbert Oct 17, 2018
5f712f5
Fix typo in DirHandle.md
Oct 17, 2018
d80cf82
Edit DirHandle.h
Oct 18, 2018
4351ec9
EventQueue documentation fix.
Oct 18, 2018
b1b2670
Tools: Use logical paths in ignored_dirs
theotherjimmy Oct 2, 2018
705f8c9
Fix minor formatting mistake
theotherjimmy Oct 2, 2018
6a5c5c9
Remove unused local
theotherjimmy Oct 2, 2018
5b90a73
Remove what we're checking for membership
theotherjimmy Oct 19, 2018
0b488c6
Tools: Restrict toolchains reported by mbed compile -S to official ones
theotherjimmy Sep 25, 2018
ca60b12
Track supported information within toolchain clasess
theotherjimmy Oct 3, 2018
82ac0e9
Corrected OFFICILLY_SUPPORTED typo
Oct 18, 2018
21cc67e
Tools: Don't traceback on missing linker script
theotherjimmy Sep 25, 2018
dfc4f83
Stop shouting at users in error messages
theotherjimmy Oct 19, 2018
fa28d2e
K66F has an SD Card on board. Configure it as the default block devic…
Oct 9, 2018
7b8286f
Ensure storage feature is not added to K66F
Oct 17, 2018
01fee5f
tests-mbed_hal-rtc_time: alocate required test data on stack
mprse Oct 11, 2018
6f18a1b
tests-mbed_hal-rtc_time: use templates instead of global variable
mprse Oct 11, 2018
429fa35
Fix typo in the printf (no functional change)
adustm Oct 19, 2018
53f2175
Component SD test: skip multiple thread test depending on RAM
jeromecoutant Oct 19, 2018
249b697
LPC54608: Raise the core freq on LPC54608 targets
mmahadevan108 Oct 19, 2018
69ffcf7
write size first
paul-szczepanek-arm Oct 19, 2018
fcfdb09
Cellular: Fix for AT handler consume to tag
Oct 10, 2018
69de155
mbedgt-network-wifi WIFI CONNECT TC - check that SSID is cached by dr…
Oct 19, 2018
a116d59
STM32 RTC : Prescaler calculation issue
jeromecoutant Oct 22, 2018
b496781
Adding file type for linker script arg in make script
bridadan Oct 22, 2018
f2633de
Clean up UARTSerial.cpp includes.
tkem Oct 21, 2018
79f5fc1
C030_R410M cellular target added
mudassar-ublox Oct 5, 2018
69be786
fix total link count
pingdan32 Sep 3, 2018
ad39129
add entry in config file for total links configuration
pingdan32 Sep 26, 2018
4b34310
MCUXpresso: Add the QSPI HAL driver
mmahadevan108 Oct 17, 2018
41b0698
QSPI: Remove QSPI from UBRIDGE and USENSE target
mmahadevan108 Oct 18, 2018
0494904
K82F, KL82Z: Update the QSPI SDK driver to the latest version
mmahadevan108 Oct 17, 2018
be67ce2
K82F FRDM: Update the K82F Freedom board for QSPI
mmahadevan108 Oct 17, 2018
7f3734d
K82F, KL82Z: Update register access mode for QSPI IPCR register
mmahadevan108 Oct 17, 2018
6922f43
KL82Z FRDM: Update the KL82Z Freedom board for QSPI
mmahadevan108 Oct 17, 2018
0b14c83
Update the QSPI unit test for Freescale boards
mmahadevan108 Oct 17, 2018
7364a89
Add general block device tests
theamirocohen Oct 4, 2018
eaf9fa0
features/storage/TESTS/blockdevice/general_block_device/README.md
theamirocohen Oct 4, 2018
68efa1c
Fix minor issues
theamirocohen Oct 15, 2018
a5fc2bf
Fix typos
theamirocohen Oct 17, 2018
0d650ba
Copy edit README.md
Oct 18, 2018
65a4287
Fix build issues
theamirocohen Oct 22, 2018
c87f44e
Fix no block device handling
theamirocohen Oct 23, 2018
b3b68bc
NRF52 : Fix UART RTS initialization
Oct 18, 2018
b76e6f1
Continue Socket and WiFi tests even on test failure.
Oct 23, 2018
f3127a4
Merge duplicate keys in JSON.
theotherjimmy Oct 23, 2018
99aa1dc
Use the parsing status as a way to detect if the IP string represent …
Taiki-San Oct 22, 2018
ea5023a
mbed_rtc_time.h - documentation fix
mprse Oct 23, 2018
87ca647
fix documentation and example
paul-szczepanek-arm Oct 23, 2018
2aaf97d
hide protected
paul-szczepanek-arm Oct 23, 2018
79b0665
Copy edit I2CSlave.h
Oct 23, 2018
682c3b9
Span: Improve documentation
pan- Oct 23, 2018
05f180a
Span: Add related non member function to class documentation.
pan- Oct 23, 2018
500ae57
Span: Improve subspan return type.
pan- Oct 23, 2018
f0adfbb
Span: define doc groups.
pan- Oct 23, 2018
c7b5852
doxygen cleanup
paul-szczepanek-arm Oct 23, 2018
c43139b
Edit SPISlave.h
Oct 23, 2018
3623e6b
EventFlags docs update.
Oct 23, 2018
24f86d2
Edit EventFlags.h
Oct 23, 2018
66a0a58
Explain default port number, and construction
ConradBraam Oct 23, 2018
37dba36
Add comma to SocketAddress.h
Oct 23, 2018
0d882a9
Checksum the vector table of the LPC54XXX
c1728p9 Oct 3, 2018
7446ebb
EventQueue: Add required header file and namespace element instead ad…
Sep 5, 2018
ba02b48
RTOS: Add required header file and namespace element instead add all
Sep 5, 2018
d7795e8
Platform: Add required header file and namespace element instead add all
Sep 5, 2018
6775c9f
ATCmdParser: Added namespace std for va_list
Oct 2, 2018
fac5ed0
storage component: update astyle
0xc0170 Sep 25, 2018
f6b9e5b
Fix mis-recognize that Windows-formatted SD card has valid partitions
ccli8 Oct 9, 2018
c81bb42
Fix for unit test build on Windows machines
michalpasztamobica Oct 24, 2018
803f92f
Fix LowPowerTickerWrapper operation when suspended
Sep 27, 2018
1a3b0b2
lp ticker wrapper: Add undefined behavior warning
Oct 19, 2018
e2867d6
Fix hardware flow control on NRF52 series
Oct 1, 2018
ae4df91
Remove debug flow control from NRF52_DK and NRF52840_DK
Oct 25, 2018
a82a08f
Update the Mbed TLS README.md
simonbutcher Sep 26, 2018
b8f940d
Update Mbed TLS README.md followng review
simonbutcher Oct 3, 2018
63d2073
Improve Mbed TLS README.md
simonbutcher Oct 24, 2018
2b56914
editorial changes, passive to active, removing redundancy
Oct 25, 2018
8c5326d
Edit README.md
Oct 25, 2018
1cb0d32
NonCopyable: Prevent doc generation for protected member function.
pan- Oct 23, 2018
c2271b3
NonCopyable: Rewrite of class documentation.
pan- Oct 23, 2018
9a91e34
NonCopyable: Add into platform doc group.
pan- Oct 23, 2018
343c14f
Copy edit NonCopyable.h
Oct 23, 2018
41e5755
NonCopyable: Fix edit.
pan- Oct 24, 2018
e22863c
Minor streamlining of long sentences
Oct 26, 2018
580782d
MbedCRC doxygen fix
maciejbocianski Oct 24, 2018
5bd0e72
spi doxygen fixes
paul-szczepanek-arm Oct 23, 2018
e82a8b1
imperative
paul-szczepanek-arm Oct 23, 2018
23d9b73
fix syntax err from misplaced ifdef
paul-szczepanek-arm Oct 24, 2018
ba59e57
SPI capitalisation
paul-szczepanek-arm Oct 24, 2018
b55e247
active voice
paul-szczepanek-arm Oct 24, 2018
84b96ab
Update SPI.h
paul-szczepanek-arm Oct 25, 2018
6a0d5a6
Fix interleaved ifdefs with DEVICE_SPI_ASYNCH + DOXYGEN_ONLY
geky Oct 25, 2018
35bac5c
docs(api-condvar): Update documentation for the ConditionVariable API
Oct 23, 2018
850cbb3
Copy edit ConditionVariable.h
Oct 23, 2018
e4acfe2
future to present tense
Oct 25, 2018
9de93a1
Adding punctuation
Oct 25, 2018
68081ac
Capitalization, header level adjustment
Oct 25, 2018
5dd2ac1
Doxygen: Move free standing HAL tests module inside their related HAL…
pan- Oct 24, 2018
1066909
update internetsocket docs
paul-szczepanek-arm Oct 24, 2018
d94271e
Edit InternetSocket.h
Oct 25, 2018
a94a659
doxy cleanup
paul-szczepanek-arm Oct 24, 2018
57d5473
Edit UDPSocket.h
Oct 25, 2018
a42a652
Doxygen: Hide friend declarations in dox.
pan- Oct 24, 2018
88c0da0
PlatformMutex docs update
Oct 24, 2018
c1166e8
Edit PlatformMutex.h
Oct 24, 2018
5941e96
contributing: update the text
0xc0170 Oct 25, 2018
35489c8
Edit CONTRIBUTING.md
Oct 25, 2018
c325c94
Add warning about deviating from the template format
adbridge Oct 25, 2018
6c27dac
Edit issue_template.md
Oct 25, 2018
3826083
BLE support added
aqib-ublox Oct 17, 2018
ff8304d
update with ARM coding standard
aqib-ublox Oct 18, 2018
2049cd5
updating method name to make it more descriptive
aqib-ublox Oct 23, 2018
591ff20
NUCLEO_L4R5ZI: fix 8-bytes data alignment
bcostm Oct 26, 2018
4a6c90d
build_api: remove unused import
Oct 26, 2018
590cf42
check for feature before using
paul-szczepanek-arm Oct 26, 2018
e1887a7
TCPSocket accept refactored to close cleanly and icetea test added
michalpasztamobica Oct 22, 2018
c09aa64
STM32F407VG: Add TRNG support
adamheinrich Oct 26, 2018
4f7af55
api->API
kegilbert Oct 17, 2018
c748fd3
Copy edit FileHandle.h
Oct 17, 2018
5d4b8c4
Make changes from comments to FileHandle.h
Oct 29, 2018
c36afcc
Move #endif to fix PwmOut.h doxygen
c1728p9 Oct 29, 2018
07588db
Added unsupported features for UBLOX targets
mudassar-ublox Oct 26, 2018
570329c
fixes the credentials storage, copies them internally rather than jus…
Oct 29, 2018
8d004c4
Fix typos in Drivers doxygen
kegilbert Oct 26, 2018
119a2d4
Fix the incorrect comment for set_blocking()
tz-arm Oct 30, 2018
9de9544
Added compilation of latest doxygen release. Tweaked doxygen failure …
Oct 30, 2018
3270a92
Disable current failing doxygen command until fixes are made
Oct 30, 2018
f97a073
Fixes ATCmdParser OOB handling performance-wise
kjbracey Jan 17, 2018
bfd0302
Phy drivers: Added S2-LP driver
Oct 30, 2018
4369911
S2-LP: astyle run done
Oct 30, 2018
5d006ec
S2-LP: Removed license files
Oct 31, 2018
7e9407d
S2-LP: Renamed GPIO to RF_S2LP_GPIO as it had conflict with some plat…
Oct 31, 2018
6fd0cac
S2-LP: Needs Nanostack configuration and device SPI
Oct 31, 2018
e18222d
DISCO_F769NI: add definitions for bootloader
bcostm Oct 29, 2018
def8634
DISCO_F769NI: enable bootloader in targets.json
bcostm Oct 30, 2018
fdee899
Fix Ice Tea test execution order to be sorted by names.
mprse Oct 30, 2018
955d44f
Updated all python modules to either have a max or specific version.
Oct 25, 2018
808ceab
Fix Makefile export with Python 3
lassebm Oct 29, 2018
392df40
Rework make.py Ct pLI to avoid treating apps as tests
theotherjimmy Oct 24, 2018
be45ef2
Reformat make.py
theotherjimmy Oct 24, 2018
3fbdada
Remove unused imports
theotherjimmy Oct 24, 2018
f6838ff
Updated and pinned version for requests
Nov 1, 2018
1bbe608
Fix missing doxygen pages
c1728p9 Nov 1, 2018
45c0fa1
Unittest fixes
Nov 1, 2018
816d33f
Initial support for PSoC 6.
Nodraak Jul 3, 2017
5e629e4
Initial version with support for PSoC 6 CY8C63XX and both cores using…
lrusinowicz Oct 16, 2017
24fcd69
Updated TARGET_Cypress sub-tree for FUTURE_SEQUANA target:
lrusinowicz Oct 22, 2018
9e377f6
Added BLE support based on CORDIO stack.
lrusinowicz Oct 22, 2018
9c93f3a
Added required changes outside of TARGET_Cypress tree:
lrusinowicz Oct 22, 2018
4a07001
Simplified M0/M4 binary merging functionality. Now, M0 binary image t…
lrusinowicz Oct 25, 2018
43f5aa9
Added missing README files for Cypress PDL library. hex files subfold…
lrusinowicz Oct 29, 2018
e87c6b3
Removed "intermediate" PSOC6 targets from buildable target list.
lrusinowicz Nov 2, 2018
b7c0fbd
Disabled makefile exporters for PSoC 6 based targets.
lrusinowicz Nov 2, 2018
a5bb524
docs(api-queue): Update documentation for the Queue API
Oct 24, 2018
ea7be7c
Edit Queue.h
Oct 25, 2018
2fda1c2
doxygen fixes
paul-szczepanek-arm Oct 24, 2018
e3f0699
return codes
paul-szczepanek-arm Oct 24, 2018
b581299
remove redundancy and maintainance overhead
paul-szczepanek-arm Oct 24, 2018
43c489e
missing doxy
paul-szczepanek-arm Oct 24, 2018
2f2cb1e
incorrect doc was copy pasted
paul-szczepanek-arm Oct 24, 2018
f6000d3
Update CellularBase.h
paul-szczepanek-arm Oct 25, 2018
30da672
Update WiFiInterface.h
paul-szczepanek-arm Oct 25, 2018
addffcb
capitalisation
paul-szczepanek-arm Oct 25, 2018
e1d6001
review fixes
paul-szczepanek-arm Oct 25, 2018
722d382
Sentence restructuring, punctuation
Oct 26, 2018
2be0af7
Articles and capitalization
Oct 26, 2018
b0b22fa
Capitalization, formatting of true and false, punctuation.
Oct 26, 2018
c11e33e
Commas
Oct 26, 2018
1d41b0e
Capitalizing IoT
Oct 26, 2018
50639d6
Adding periods
Oct 26, 2018
ccda9b8
One more missing period.
Oct 26, 2018
f614965
Reformatting heading levels
Oct 26, 2018
8bae0b1
...remainder of file... to [remainder of file]
Oct 26, 2018
377be71
True -> `true`, inserting article
Oct 26, 2018
99cc7f2
Adding missing punctuation.
Oct 26, 2018
cecd96f
Breaking behaviors into two sections
Oct 26, 2018
43ed879
Sentence restructuring, punctuation
Oct 26, 2018
395ad28
Articles and capitalization
Oct 26, 2018
4a14db5
Make variables that are private in ConditionVariable.h, protected Par…
Oct 26, 2018
91695ab
Update linker scripts for bootloader for L496GZ
Oct 23, 2018
7f66158
change mode to 664
Oct 23, 2018
a30aef7
code review for Update linker scripts for bootloader target L496GZ
Oct 24, 2018
08cc9df
code review for Update linker scripts for bootloader target L496GZ
Oct 24, 2018
3d70681
STM32F413ZH: add defines for bootloader
bcostm Oct 26, 2018
8731bc4
STM32F413ZH: enable bootloader in targets.json
bcostm Oct 26, 2018
d5c8baa
STM32F413ZH: fix wrong flash size for ARM compiler
bcostm Oct 26, 2018
6d95eaa
Switch the IPv4 parser to the one recently introduced in libservice. …
Taiki-San Aug 27, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 16 additions & 0 deletions .github/issue_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
<!--

************************************** WARNING **************************************

The ciarcom bot parses this header automatically. Any deviation from the
template may cause the bot to automatically correct this header or may result in a
warning message, requesting updates.

Please ensure that nothing follows the Issue request type section, all
issue details are within the Description section and no changes are made to the
template format (as detailed below).

*************************************************************************************

-->

### Description

<!--
Expand Down
16 changes: 13 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,25 @@ matrix:
# Print versions we use
- doxygen --version
before_script:
# Build doxygen
- >
(git clone --depth=1 --single-branch --branch Release_1_8_14 https://github.com/doxygen/doxygen;
cd doxygen;
mkdir build;
cd build;
cmake -G "Unix Makefiles" ..;
make;
sudo make install)
# Create BUILD directory for tests
- mkdir BUILD
script:
# Assert that the Doxygen build produced no warnings.
# The strange command below asserts that the Doxygen command had an
# output of zero length
- >
doxygen doxyfile_options 2>&1 |
tee BUILD/doxygen.out && [ ! -s BUILD/doxygen.out ]
- doxygen doxyfile_options 2>&1
# Once Mbed OS has been fixed, enable the full test by replacing the top line with this:
# - ( ! doxygen doxyfile_options 2>&1 | grep . )

# Assert that all binary libraries are named correctly
# The strange command below asserts that there are exactly 0 libraries
# that do not start with lib
Expand Down
46 changes: 3 additions & 43 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,5 @@
# Description
This document is cheat sheet for everyone who wants to contribute to [ARMmbed/mbed-os](https://github.com/ARMmbed/mbed-os) GitHub repository at GitHub.
All changes in code base should originate from GitHub Issues and take advantage of existing GitHub flows. Goal is to attract contributors and allow them contribute to code and documentation at the same time.
# Contributing to Mbed OS

Guidelines from this document are created to help new and existing contributors understand process workflow and align to project rules before pull request is submitted. It explains how a participant should do things like format code, test fixes, and submit patches.
Mbed OS is an open-source, device software platform for the Internet of Things. Contributions are an important part of the platform, and our goal is to make it as simple as possible to become a contributor.

## Where to get more information?
You can read more on our [documentation page](https://docs.mbed.com/docs/mbed-os-handbook/en/latest/cont/contributing/).

# How to contribute
We really appreciate your contributions! We are Open Source project and we need your help. We want to keep it as easy as possible to contribute changes that get things working in your environment. There are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things.

Before a pull request will be merged, the [mbed Contributor Agreement](http://developer.mbed.org/contributor_agreement/) must be signed.

You can pick up existing [mbed-os GitHub Issue](https://github.com/ARMmbed/mbed-os/issues) and solve it or implement new feature you find important, attractive or just necessary. We will review your proposal via pull request mechanism, give you comments and merge your changes if we decide your contribution satisfy criteria such as quality.

# Enhancements vs Bugs
Enhancements are:
* New features implementation.
* Code refactoring.
* Coding rules, coding styles improvements.
* Code comments improvement.
* Documentation work.

Bugs are:
* Issues rose internally or externally by [ARMmbed/mbed-os](https://github.com/ARMmbed/mbed-os) users.
* Internally (within mbed team) created issues from Continuous Integration pipeline and build servers.
* Issues detected using automation tools such as compilers, sanitizers, static code analysis tools etc.

# Gate Keeper role
Gate Keeper is a person responsible for GitHub process workflow execution and is responsible for repository / project code base. Gate Keeper is also responsible for code (pull request) quality stamp and approves or rejects code changes in project’s code base.

Gate Keepers will review your pull request code, give you comments in pull request comment section and in the end if everything goes well merge your pull request to one of our branches (most probably default ```master``` branch).

Please be patient, digest Gate Keeper's feedback and respond promptly :)

# mbed SDK porting
* For more information regarding mbed SDK porting please refer to [mbed SDK porting](http://developer.mbed.org/handbook/mbed-SDK-porting) handbook.
* Before starting the mbed SDK porting, you might want to familiarize with the [mbed SDK library internals](http://developer.mbed.org/handbook/mbed-library-internals) first.

# Glossary
* Gate Keeper – persons responsible for overall code-base quality of [ARMmbed/mbed-os](https://github.com/ARMmbed/mbed-os) project.
* Enhancement – New feature deployment, code refactoring actions or existing code improvements.
* Bugfix – Issues originated from GitHub Issues pool, raised internally within mbed classic team or issues from automated code validators like linters, static code analysis tools etc.
* Mbed classic – mbed SDK 2.0 located in GitHub at [ARMmbed/mbed-os](https://github.com/ARMmbed/mbed-os).
To encourage productive collaboration, as well as robust, consistent and maintainable code, we have a set of guidelines for contributing to Mbed OS. Please see: [contributing guidelines](https://os.mbed.com/docs/latest/reference/contributing.html).
7 changes: 5 additions & 2 deletions TESTS/mbed_hal/critical_section/critical_section_test.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,11 @@
* limitations under the License.
*/

/** \addtogroup hal_critical_tests
/** \addtogroup hal_critical
* @{
* \defgroup hal_critical_test Tests
* Tests definitions of the HAL Critical module.
* @{
*/

#ifndef MBED_CRITICAL_SECTION_TEST_H
Expand Down Expand Up @@ -45,7 +48,7 @@
template <int N>
void test_critical_section();


/**@}*/
/**@}*/

#endif // MBED_CRITICAL_SECTION_TEST_H
118 changes: 118 additions & 0 deletions TESTS/mbed_hal/qspi/flash_configs/Freescale/K82F/flash_config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
/* mbed Microcontroller Library
* Copyright (c) 2018-2018 ARM Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef MBED_QSPI_FLASH_CONFIG_H
#define MBED_QSPI_FLASH_CONFIG_H

#include "../../MX25RXX35F_config.h"

/* Fast mode not supported in MX25U3235F */
#undef FAST_MODE_ENABLE
#undef FAST_MODE_DISABLE

#ifdef QSPI_SECTOR_COUNT
#undef QSPI_SECTOR_COUNT
#define QSPI_SECTOR_COUNT 1024 // for MX25U3235F
#endif

/* The values for MX25U3235F are different, specify this here */
#undef QSPI_COMMON_MAX_FREQUENCY
#undef QSPI_WRSR_MAX_TIME
#undef QSPI_PAGE_PROG_MAX_TIME
#undef QSPI_ERASE_SECTOR_MAX_TIME
#undef QSPI_ERASE_BLOCK_32_MAX_TIME
#undef QSPI_ERASE_BLOCK_64_MAX_TIME

/* Implementation of these macros are slightly different for MX25U3235F */
#undef EXTENDED_SPI_ENABLE
#undef EXTENDED_SPI_DISABLE

/* Max frequency for basic rw operation in MX25U3235F */
#define QSPI_COMMON_MAX_FREQUENCY 54000000

/* WRSR operations max time [us] (datasheet max time + 15%) */
#define QSPI_WRSR_MAX_TIME 46000 // 40ms

/* Write operations max time [us] (datasheet max time + 15%) */
#define QSPI_PAGE_PROG_MAX_TIME 3450 // 3ms

/* erase operations max time [us] (datasheet max time + 15%) */
#define QSPI_ERASE_SECTOR_MAX_TIME 230000 // 200 ms
#define QSPI_ERASE_BLOCK_32_MAX_TIME 1150000 // 1s
#define QSPI_ERASE_BLOCK_64_MAX_TIME 2300000 // 2s

#define EXTENDED_SPI_ENABLE() \
\
const int32_t reg_size = QSPI_STATUS_REG_SIZE; \
uint8_t reg_data[reg_size] = { 0 }; \
\
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
if (write_enable(qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
reg_data[0] = STATUS_BIT_QE; \
if (write_register(QSPI_CMD_WRSR, reg_data, \
reg_size, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
WAIT_FOR(WRSR_MAX_TIME, qspi); \
\
memset(reg_data, 0, QSPI_STATUS_REG_SIZE); \
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
return ((reg_data[0] & STATUS_BIT_QE) != 0 ? \
QSPI_STATUS_OK : QSPI_STATUS_ERROR)



#define EXTENDED_SPI_DISABLE() \
\
const int32_t reg_size = QSPI_STATUS_REG_SIZE; \
uint8_t reg_data[reg_size] = { 0 }; \
\
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
if (write_enable(qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
reg_data[0] &= ~(STATUS_BIT_QE); \
\
if (write_register(QSPI_CMD_WRSR, reg_data, \
reg_size, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
WAIT_FOR(WRSR_MAX_TIME, qspi); \
\
reg_data[0] = 0; \
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
return ((reg_data[0] & STATUS_BIT_QE) == 0 ? \
QSPI_STATUS_OK : QSPI_STATUS_ERROR)

#endif // MBED_QSPI_FLASH_CONFIG_H
118 changes: 118 additions & 0 deletions TESTS/mbed_hal/qspi/flash_configs/Freescale/KL82Z/flash_config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
/* mbed Microcontroller Library
* Copyright (c) 2018-2018 ARM Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef MBED_QSPI_FLASH_CONFIG_H
#define MBED_QSPI_FLASH_CONFIG_H

#include "../../MX25RXX35F_config.h"

/* Fast mode not supported in MX25L12845G */
#undef FAST_MODE_ENABLE
#undef FAST_MODE_DISABLE

#ifdef QSPI_SECTOR_COUNT
#undef QSPI_SECTOR_COUNT
#define QSPI_SECTOR_COUNT 4096 // for MX25L12845G
#endif

/* The values for MX25U3235F are different, specify this here */
#undef QSPI_COMMON_MAX_FREQUENCY
#undef QSPI_WRSR_MAX_TIME
#undef QSPI_PAGE_PROG_MAX_TIME
#undef QSPI_ERASE_SECTOR_MAX_TIME
#undef QSPI_ERASE_BLOCK_32_MAX_TIME
#undef QSPI_ERASE_BLOCK_64_MAX_TIME

/* Implementation of these macros are slightly different for MX25L12845G */
#undef EXTENDED_SPI_ENABLE
#undef EXTENDED_SPI_DISABLE

/* Max frequency for basic rw operation based on max bus frequency of 24MHz */
#define QSPI_COMMON_MAX_FREQUENCY 23000000

/* WRSR operations max time [us] (datasheet max time + 15%) */
#define QSPI_WRSR_MAX_TIME 46000 // 40ms

/* Write operations max time [us] (datasheet max time + 15%) */
#define QSPI_PAGE_PROG_MAX_TIME 1000 // 0.75ms

/* erase operations max time [us] (datasheet max time + 15%) */
#define QSPI_ERASE_SECTOR_MAX_TIME 460000 // 400 ms
#define QSPI_ERASE_BLOCK_32_MAX_TIME 1150000 // 1s
#define QSPI_ERASE_BLOCK_64_MAX_TIME 2300000 // 2s

#define EXTENDED_SPI_ENABLE() \
\
const int32_t reg_size = QSPI_STATUS_REG_SIZE; \
uint8_t reg_data[reg_size] = { 0 }; \
\
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
if (write_enable(qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
reg_data[0] = STATUS_BIT_QE; \
if (write_register(QSPI_CMD_WRSR, reg_data, \
reg_size, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
WAIT_FOR(WRSR_MAX_TIME, qspi); \
\
memset(reg_data, 0, QSPI_STATUS_REG_SIZE); \
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
return ((reg_data[0] & STATUS_BIT_QE) != 0 ? \
QSPI_STATUS_OK : QSPI_STATUS_ERROR)



#define EXTENDED_SPI_DISABLE() \
\
const int32_t reg_size = QSPI_STATUS_REG_SIZE; \
uint8_t reg_data[reg_size] = { 0 }; \
\
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
if (write_enable(qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
reg_data[0] &= ~(STATUS_BIT_QE); \
\
if (write_register(QSPI_CMD_WRSR, reg_data, \
reg_size, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
WAIT_FOR(WRSR_MAX_TIME, qspi); \
\
reg_data[0] = 0; \
if (read_register(STATUS_REG, reg_data, \
QSPI_STATUS_REG_SIZE, qspi) != QSPI_STATUS_OK) { \
return QSPI_STATUS_ERROR; \
} \
\
return ((reg_data[0] & STATUS_BIT_QE) == 0 ? \
QSPI_STATUS_OK : QSPI_STATUS_ERROR)

#endif // MBED_QSPI_FLASH_CONFIG_H
4 changes: 4 additions & 0 deletions TESTS/mbed_hal/qspi/flash_configs/flash_configs.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@
#include "STM/DISCO_F413ZH/flash_config.h"
#elif defined(TARGET_EFM32GG11_STK3701)
#include "SiliconLabs/EFM32GG11_STK3701/flash_config.h"
#elif defined(TARGET_K82F)
#include "Freescale/K82F/flash_config.h"
#elif defined(TARGET_KL82Z)
#include "Freescale/KL82Z/flash_config.h"
#endif

#endif // MBED_FLASH_CONFIGS_H
6 changes: 5 additions & 1 deletion TESTS/mbed_hal/qspi/qspi_test.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,11 @@
* limitations under the License.
*/

/** \addtogroup hal_qspi_tests
/** \addtogroup hal_qspi
* @{
* \defgroup hal_qspi_tests Tests
* QSPI tests of the HAL.
* @{
*/
#ifndef MBED_QSPI_TEST_H
#define MBED_QSPI_TEST_H
Expand Down Expand Up @@ -96,3 +99,4 @@ void qspi_write_read_test(void);
#endif

/** @}*/
/** @}*/
Loading