Commit Graph

382 Commits

Author SHA1 Message Date
Gregory Nutt
b6b16bf4da Fix forward references that were mangled in last large changes. 2017-04-29 06:59:35 -06:00
Sebastien Lorquet
c56c6f7ccc ARM arch changes 2017-04-28 18:23:29 +02:00
Masayuki Ishikawa
f5b6ae627d EFM32 I2C: Fix timeout calculation 2017-04-06 17:12:13 +09:00
David Cabecinhas
08e92abb0b ARM: Remove redundant interrupt stack coloring 2017-03-16 19:13:39 +08:00
Gregory Nutt
ded155c638 Fixes for coding standard: '*' needs to 'snuggle' with following variable name 2017-02-28 18:22:58 -06:00
Gregory Nutt
a19b39a9e3 EFM32 Serial: Convert to use new interrupt argument interface. 2017-02-28 11:24:06 -06:00
Gregory Nutt
7d2d541c70 Adapt some drivers to utilize the IRQ argument feature. 2017-02-27 20:54:18 -06:00
Mark Schulte
b3222bbc8a irq_dispatch: Add argument pointer to irq_dispatch
Provide a user defined callback context for irq's, such that when
registering a callback users can provide a pointer that will get
passed back when the isr is called.
2017-02-27 06:27:56 -06:00
Gregory Nutt
62a1f6f110 up_timer_initialize() is named incorrectly. The prefix should be the architecture name, not up_ since it is private to the architecture. up_timerisr() is similarly misnamed and should also be private since it is used only with the xyz_timerisr.c files. Also updat TODO list. 2017-02-07 10:35:04 -06:00
Gregory Nutt
4a8c6a6d2d ELF: Move ARMv6-M, ARMv7-M, and legacy ARM versions of ELF relocation logic to libc/machine 2017-01-21 15:24:25 -06:00
Gregory Nutt
be5ba90d4f Move optimized ARM memcpy functions from arch/arm/src/ to libc/machine/. This is necessary for the PROTECTED and KERNEL build modes. Otherwise, memcpy() will be built in to kernel space and not accessible to applications. 2017-01-20 10:53:46 -06:00
Gregory Nutt
3c4684ef5f Eliminate CONFIG_ARCH_OPTIMIZED_FUNCTIONS. Move options to select architectur-specific C library options from libc/Kconfig to libc/machine/Kconfig and rename. 2017-01-20 09:30:07 -06:00
Pierre-noel Bouteville
017773eda3 EFM32: Fix a compilation error 2016-12-07 09:13:13 -06:00
Gregory Nutt
d28181da10 arch: Disable priority inheritance on all semaphores used for signaling in all USB host drivers 2016-11-03 17:05:53 -06:00
Gregory Nutt
8b07aa6f7c arch: Disable priority inheritance on all semaphores used for signaling in all SPI drivers 2016-11-03 14:51:44 -06:00
Gregory Nutt
e1cd9febbf arch: Disable priority inheritance on all semaphores used for signaling in all I2C/TWI drivers 2016-11-03 14:23:42 -06:00
Gregory Nutt
6df28bc74e Make bit-order SPI H/W feature configurable for better error detection 2016-08-08 11:54:13 -06:00
Gregory Nutt
c3cfd37791 Fix cloned variable error in all SPI drivers 2016-08-08 11:04:01 -06:00
Gregory Nutt
2ae3953f9e STM32/EFM32: If any hardware feature other and LSBFIRST is selected, return -ENOSYS. 2016-08-08 10:37:28 -06:00
Gregory Nutt
7d4cb73bd6 STM32 and EFM32 SPI drivers adopted an incompatible conventions somewhere along the line. The set the number of bits to negative when calling SPI_SETBITS which had the magical side-effect of setting LSB first order of bit transmission. This is not only a hokey way to pass control information but is supported by no other SPI drivers.
This change three things:  (1) It adds HWFEAT_LSBFIRST as a new H/W feature.  (2) It changes the implementations of SPI_SETBITS in the STM32 and EFM32 derivers so that negated bit numbers are simply errors and it adds the SPI_HWFEATURES method that can set the LSB bit order, and (3) It changes all calls with negative number of bits from all drivers: The number of bits is now always positive and SPI_HWFEATUREs is called with HWFEAT_LSBFIRST to set the bit order.
2016-08-08 08:28:13 -06:00
Gregory Nutt
14de4b99f8 Simplify some computations 2016-07-23 08:13:25 -06:00
Gregory Nutt
1b9b3a7b47 pwm.h moved from include/nuttx/ to include/nuttx/drivers. 2016-07-20 13:48:24 -06:00
Pierre-noel Bouteville
76f12b1f69 I'm using syslog through ITM. In this case syslog_channel function is call before ram initialisation in stm32_clockconfig. But syslog channel uses a global variable that is reset to default by the RAM initialization. 2016-07-14 07:29:39 -06:00
Paul A. Patience
a4d5845887 efm32, lcp43, stm32, stm32l4: disable interrupts with NVIC_IRQ_CLEAR 2016-06-28 15:12:39 -04:00
Gregory Nutt
5118264e6c Rename CONFIG_SYSLOG_CONSOLE to CONFIG_CONSOLE_SYSLOG 2016-06-21 09:35:51 -06:00
Gregory Nutt
aed4d0e198 Missed a few *llinfo() to *info() conversions 2016-06-20 16:24:09 -06:00
Gregory Nutt
2a751068e6 Without lowsyslog() *llerr() is not useful. Eliminate and replace with *err(). 2016-06-20 12:44:38 -06:00
Gregory Nutt
43eb04bb8f Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info(). 2016-06-20 11:59:15 -06:00
Gregory Nutt
d40a473f72 Without lowsyslog() *llwarn() is not useful. Eliminate and replace with *warn(). 2016-06-20 09:37:08 -06:00
Gregory Nutt
5b2aa7bf99 Remove all traces of CONFIG_SYSLOG 2016-06-19 13:59:43 -06:00
Gregory Nutt
9e048e167f EFM32/DM320: Convert *err() to either *info() or add ERROR:, depending on if an error is reported 2016-06-17 12:50:18 -06:00
Gregory Nutt
0d3ecb3ddd Fix another victim of the mass name changes: xyz_errmonitor->xyz_dbgmonitor 2016-06-17 07:00:33 -06:00
Gregory Nutt
0c8c7fecf0 Add _ to the beginning of all debug macros to avoid name collisions 2016-06-16 12:33:32 -06:00
Gregory Nutt
b7f0fbc073 Centralize definitions associated with CONFIG_DEBUG_RTC 2016-06-16 07:39:23 -06:00
Gregory Nutt
37b9742189 Centralize definitions associated with CONFIG_DEBUG_TIMER 2016-06-16 07:16:25 -06:00
Gregory Nutt
03cbe671ad Centralize definitions associated with CONFIG_DEBUG_PWM 2016-06-15 17:23:56 -06:00
Gregory Nutt
5c89b18af8 Centralize definitions associated with CONFIG_DEBUG_I2C 2016-06-15 16:30:12 -06:00
Gregory Nutt
ba03134bed Centralize definitions associated with CONFIG_DEBUG_SPI 2016-06-15 10:41:13 -06:00
Gregory Nutt
a97d3ae707 Centralize definitions associated with CONFIG_DEBUG_GPIO 2016-06-15 09:20:23 -06:00
Gregory Nutt
c4e6f50eac Centralize definitions associated with CONFIG_DEBUG_IRQ 2016-06-15 08:35:22 -06:00
Gregory Nutt
a1469a3e95 Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err() 2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2 Rename *lldbg to *llerr 2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726 Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES 2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9 Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO 2016-06-11 11:50:18 -06:00
Gregory Nutt
275f8988f8 Fix a cloned error in debug macro definitions 2016-06-10 10:13:30 -06:00
Pierre-noel Bouteville
94a14de190 Fix EFM32 FLASH conditional compilation 2016-06-03 08:38:11 -06:00
Gregory Nutt
3d3b7b5422 EFM32, STM32, TIVA: Allow lower half driver to build if any ADC is selected. Should not depend on CONFIG_ADC. 2016-05-27 06:46:33 -06:00
Gregory Nutt
9d6845b7ec Add ADC bind method to the EFM32 and LPC17xx ADC drivers 2016-05-26 11:57:18 -06:00
Gregory Nutt
9ec104834a Remove CONFIG_USARTn_ISUART 2016-05-25 11:21:48 -06:00
Gregory Nutt
c089a2f241 Rename CONFIG_ARCH_HAVE_OTHER_UART to CONFIG_OTHER_UART_SERIALDRIVER 2016-05-25 10:48:33 -06:00
Gregory Nutt
2a87741e72 Rename CONFIG_ARCH_HAVE_UARTn to CONFIG_UARTn_SERIALDRIVER 2016-05-25 10:45:01 -06:00
Gregory Nutt
249a2e48e5 Rename CONFIG_ARCH_HAVE_USARTn to CONFIG_USARTn_SERIALDRIVER 2016-05-25 10:39:23 -06:00
Gregory Nutt
267e20c729 PM: Add domain to all PM interfaces. Internal PM data structures now handle multiple PM domains. 2016-03-27 13:01:32 -06:00
Gregory Nutt
32acc35c88 PM: Add activity domain to all PM callbacks 2016-03-27 11:18:54 -06:00
Gregory Nutt
a1ee5ae6e5 EFM32 Serial: Fix typo in initializer. Noted by Pierre-noel Bouteville 2016-03-12 08:53:41 -06:00
Gregory Nutt
51be83aa3a ARM: Fix missing header file. Update comments in all *_irq.c files. 2016-03-09 15:08:58 -06:00
Gregory Nutt
4d4f54a789 Rename current_regs to g_current_regs; For ARM, g_current_regs needs to be an array to support multiple CPUs 2016-03-09 13:41:48 -06:00
Gregory Nutt
9c63736c98 Standard some naming if code sectino comments 2016-02-21 18:06:09 -06:00
Gregory Nutt
666cc280f4 Rename irqenable() to up_irq_enable(); rename irqdisable() to up_irq_disable() 2016-02-14 16:54:09 -06:00
Gregory Nutt
83bc1c97c3 Rename irqsave() and irqrestore() to up_irq_save() and up_irq_restore() 2016-02-14 16:11:25 -06:00
Gregory Nutt
70e502adb0 Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-13 19:11:09 -06:00
Gregory Nutt
3caffdd82e Standardization of some naming in preparation for a large automated change 2016-02-13 12:57:09 -06:00
Gregory Nutt
a6eb9a351c Add spinlock support for ARMv7-M architectures 2016-02-09 13:44:22 -06:00
Gregory Nutt
1e4f2ae2c1 Rename up_i2c initialize and uninitialize functions using the correct MCU-specific naming 2016-02-02 12:08:23 -06:00
Gregory Nutt
d2571985ef I2C: up_i2creset should not be a global function; Now it is an I2C interface method 2016-02-02 11:21:45 -06:00
Gregory Nutt
30624c8dfa EFM32, STM32, and Tiva I2C Drivers: Clean up some kruft that is no longer needed after the last massive I2C interfcase change 2016-02-01 19:51:55 -06:00
Gregory Nutt
c9a7d48cb2 I2C: Fix some compile time issues found with tools/testbuild.sh 2016-02-01 18:02:39 -06:00
Gregory Nutt
0693e76be8 I2C: Remove the setfrequency method from the interface 2016-02-01 16:30:29 -06:00
Gregory Nutt
a64f36a63e I2C: Remove setaddress method 2016-02-01 12:14:20 -06:00
Gregory Nutt
ce988c7ed3 Remove the read and write methods from the I2C interface 2016-02-01 09:22:10 -06:00
Gregory Nutt
2171438c61 I2C_TRANSFER support is no longer optional 2016-01-31 14:00:53 -06:00
Gregory Nutt
531d73af41 Remove I2C slave methods from I2C master interface; rename i2c_dev_s to i2c_master_s. 2016-01-30 08:35:46 -06:00
Gregory Nutt
9f9b85a932 Move include/nuttx/i2c.h to include/nuttx/i2c/i2c_master.h 2016-01-30 07:59:44 -06:00
Gregory Nutt
3b6a502eff For LK MCUs, rename up_spiinitialize to kl_spibus_initialize 2016-01-26 16:19:03 -06:00
Gregory Nutt
d06fae98a3 EFM32: Rename efm_spi_initialize to efm_spibus_initialize for compatibility with corresponding changes to other platforms 2016-01-26 15:58:33 -06:00
Gregory Nutt
c0fb4e34a7 I2C: Eliminate the I2C_WRITEREAD method 2016-01-26 10:23:09 -06:00
Gregory Nutt
52109ade2d Flesh out unfinished lock() method implementations in al SPI drivers 2016-01-24 09:15:57 -06:00
Gregory Nutt
b7cbbab761 Remove CONFIG_SPI_OWNBUS: Now it is not just a good idea, it is the law 2016-01-23 18:10:21 -06:00
Gregory Nutt
4bd6adb725 Add dummy hwfeatures method to all SPI interfaces 2016-01-23 15:09:38 -06:00
Gregory Nutt
5ebd84c890 Update to use 64-bit timer when available 2016-01-21 11:53:58 -06:00
Gregory Nutt
dfec6a0dd0 Rename CONFIG_ARMV7M_MPU to CONFIG_ARM_MPU so that we can reuse the configuration settings for the ARMV7R MPU 2015-12-14 13:56:21 -06:00
Gregory Nutt
daea1e614b All architectures need to build ELF support if either CONFIG_ELF or CONFIG_MODULE are selected. Cortex-M7 also must support module cache corherence 2015-12-12 09:35:05 -06:00
Gregory Nutt
25a2e17347 Rename up_rtcinitialize to up_rtc_initialize so that it looks like other RTC interfaces 2015-11-20 08:27:04 -06:00
Gregory Nutt
79df561669 Rename board_led_off to board_autoled_off 2015-11-01 09:09:36 -06:00
Gregory Nutt
b28e32e3d3 Rename board_led_on to board_autoled_on 2015-11-01 09:07:06 -06:00
Gregory Nutt
d90f597a05 More spacing/alignment issues 2015-10-08 19:31:58 -06:00
Gregory Nutt
b6638315a4 Correct some spacing issues 2015-10-07 11:39:06 -06:00
Gregory Nutt
d0d62668e7 Make some spacing comply better with coding standard 2015-10-06 18:32:16 -06:00
Gregory Nutt
fc3ed64864 Make some spacing comply better with coding standard 2015-10-06 17:28:32 -06:00
Gregory Nutt
3fdd914203 Costmetic fixes to C coding style 2015-10-05 17:13:53 -06:00
Gregory Nutt
9caf33e13b Standardize the width of all comment boxes in C header files 2015-10-03 07:28:30 -06:00
Gregory Nutt
7ced84c5f0 Standardize the width of all comment boxes in C files 2015-10-03 07:25:03 -06:00
Gregory Nutt
36726b1bc4 Standardize the width of all comment boxes in header files 2015-10-02 17:42:29 -06:00
Gregory Nutt
ddf936c913 Various fixes for compilation issues found by tools/testbuild.sh 2015-10-01 11:09:39 -06:00
Gregory Nutt
da3c05a898 Minor changes from review of merge 2015-09-06 07:10:21 -06:00
pnb
55dcbb4ca2 efm32 addons missing file 2015-09-06 13:10:41 +02:00
Gregory Nutt
975d912b40 Cosmetic: Move # of pre-processior command to column 1 2015-09-05 09:07:37 -06:00
Gregory Nutt
2ed09233d3 Changes to conform to coding standard. 2015-09-05 07:50:02 -06:00
Gregory Nutt
60d444cd69 Changes to conform to coding standard. Also, I assume references to STM32 should be EFM32? 2015-09-05 07:33:50 -06:00
Gregory Nutt
e714cd748c Changes to conform to coding standard. Also, I assume references to STM32 should be EFM32? 2015-09-05 07:31:16 -06:00
pnb
1314f60caf start of adc for efm32 2015-09-05 10:51:33 +02:00
pnb
c327cce0b8 add bitband support 2015-09-05 10:40:34 +02:00
pnb
c83d533d90 add flash read/write support 2015-09-05 10:37:53 +02:00
pnb
3c35458ac2 fix some I2C problem 2015-09-05 10:22:08 +02:00
pnb
ea596e45d3 add efm32_gpioirqclear 2015-09-05 10:20:24 +02:00
pnb
ed8531a53b GPIO fix bug GPIO_DRIVE_... definition 2015-09-05 10:17:05 +02:00
pnb
9564f878a9 set Gpio drive only if not standard 2015-09-05 10:15:42 +02:00
pnb
fa65bef573 commetic 2015-09-05 10:11:06 +02:00
Gregory Nutt
70f1a49fbe arch/arm/src/up_iternal.h and several ARM Make.defs files: In the original implementation, NOT defined(CONFIG_ARMV7M_CMNVECTOR) was a sufficient test to determine if lazy floating point register saving was being used. But recents changes added common lazy register as well so now that test must be (NOT defined(CONFIG_ARMV7M_CMNVECTOR) || defined(CONFIG_ARMV7M_LAZYFPU)). 2015-08-31 08:40:02 -06:00
Gregory Nutt
da6c5aabdf All ARMV7-M IRQ setup: Always set the NVIC vector table address. This is needed in cases where the code is running with a bootload and when the code is running from RAM. It is also needed by the logic of up_ramvec_initialize() which gets the vector base address from the NVIC. Suggested by Pavel Pisa 2015-08-21 08:42:24 -06:00
Gregory Nutt
ba6c0b3fa3 Fix more common typos 2015-08-16 11:06:29 -06:00
Gregory Nutt
e29220183a Fix some common typos 2015-08-16 10:59:10 -06:00
Gregory Nutt
1f5e16dc95 Fix some warnings/errors detected by nuttx/tools/testbuilds.sh 2015-07-10 18:41:26 -06:00
Gregory Nutt
d1847d2e0b Correct write to incorrect register in EFM32 SPI driver. From Pierre-noel Bouteville. 2015-06-09 12:50:30 -06:00
Gregory Nutt
f875a26ed2 Add SPI GPIO pin initialization. From Pierre-noel Bouteville. 2015-06-05 14:26:21 -06:00
Gregory Nutt
38735fafeb More missing semicolons after DEBUGASSERT 2015-05-27 13:32:39 -06:00
Gregory Nutt
321b54f49a Updated EFM32 RTC driver from Pierre-noel Bouteville 2015-05-19 14:53:01 -06:00
Gregory Nutt
0883ea1af0 USB host drivers: Cannot take semaphores in cancel() method 2015-05-14 09:58:21 -06:00
Gregory Nutt
5fad63c28a STM32/EFM32 USB host drivers. Remove some detritus left from previous change 2015-05-14 07:55:55 -06:00
Gregory Nutt
c2c7dadf0f The USB host cancellation now applies to all transfers and so it no longer conditional 2015-05-11 12:04:03 -06:00
Gregory Nutt
cac9879ad2 EHCI HCDs will now support cancellation of syncrhonous transfers 2015-05-11 11:43:31 -06:00
Gregory Nutt
3f092b8f9c STM32 and EFM32 host will now support cancellation of synchronous methods 2015-05-11 11:15:28 -06:00
Gregory Nutt
0536435ff8 Correct an error recently introduced in the STM32 and EFM32 USB host controller drivers.
The test for data partially transferred is incorrectec: chan->xfrd != xfrlen
Should be chan->xfrd > 0

From Ronly XLN.
2015-05-11 09:04:25 -06:00
Gregory Nutt
b8483aea40 In go_os_start that sets the IDLE thread stack coloration, mov does not set condition codes which are tested by the following beq. Need to use movs instead. Noted by David Sidrane 2015-05-07 20:36:08 -06:00
Gregory Nutt
8f959373e1 USB host: Modify the transfer() and asynch() methods so that the actual size of the transfer is returned. Unverified on initial commit. 2015-05-05 13:14:22 -06:00
Gregory Nutt
823af4b409 USB host: Need to include the port structure when disconnecting, otherwise may destroy a root hub port 2015-05-02 10:44:18 -06:00
Gregory Nutt
149d8c039d EFM32 USB host: Add missing trace data and some missing connection-related logic; update a configuration 2015-04-30 13:46:53 -06:00
Gregory Nutt
501d82928d STM32/EFM32 USB host: Implemented asynchronous cancel method 2015-04-30 11:24:18 -06:00
Gregory Nutt
c096b7d426 USB Hub: Fix compile problems when hub debug enabled 2015-04-30 08:12:55 -06:00
Gregory Nutt
a4455d07c1 STM32 HUB: Fix more compilation errors when hub support is enabled 2015-04-30 08:00:41 -06:00
Gregory Nutt
2f7682f7df Fix some errors in initial re-verification of USB host on the STM32F4-Discovery 2015-04-30 07:28:30 -06:00
Gregory Nutt
d4feb7205f First cut, dirty conversion of EFM32, STM32 FS and HS host drivers to the new interfaces 2015-04-29 15:53:58 -06:00
Gregory Nutt
d77a19f0a2 Two r's and only two r's in the word interrupt 2015-04-23 14:04:43 -06:00
Gregory Nutt
321ccb3ba3 Fix several typos in comments 2015-04-09 16:13:03 -06:00
Gregory Nutt
fe38ca23e5 Cosmetic 2015-04-09 07:59:31 -06:00
Gregory Nutt
ae15c6963c Make some file section headers more consistent with standard 2015-04-08 08:04:12 -06:00
Gregory Nutt
801d556452 EFM32: Add I2C driver. From Pierre-noel Bouteville 2015-03-14 14:47:53 -06:00
Gregory Nutt
d8a99fb73f SAMV71-XULT: Enable 64-bit floating point support 2015-03-11 12:30:14 -06:00
Gregory Nutt
521de710b8 EFM32 updates from Pierre-noel Bouteville 2015-03-08 07:12:47 -06:00
Gregory Nutt
9bcdf974a0 Add new common lazy FPU state saving option for ARMv7-M. Not yet verified 2015-03-06 08:26:43 -06:00
Gregory Nutt
429863f348 arch/: board function prototypes are now in include/nuttx/board.h. Remove from architecture header file; Add inclusion of nuttx/board.h to all files referencing board functions 2015-02-27 17:19:38 -06:00
Gregory Nutt
56b29b00ea EFM32 USB Device: Is not basically functional with this change. From Pierre-noel Bouteville. 2015-02-16 15:45:49 -06:00
Gregory Nutt
c662563b83 Forgot to add a file in the last commit 2015-02-13 10:05:10 -06:00
Gregory Nutt
501bc15fbd RTC: Remove all backdoor interfaces from rtc.h 2015-02-13 08:41:34 -06:00
Gregory Nutt
8bac6b71ce SYSLOG: Add an option to use the syslog'ing device as the system consolution. This option enables a low-level, write-only console device at /dev/console (similar to the low-level UART console device). From Pierre-noel Bouteville. 2015-02-08 06:53:24 -06:00
Gregory Nutt
d617384d27 EFM: Remove a misbehaving assertion. From Pierre-noel Bouteville
Also remove spaces before and after paretheses to conform to coding standard.
2015-02-03 13:34:37 -06:00
Gregory Nutt
515856c3d9 EFM32 Add support of BURTC and add possibility of debug message of RMU: Pierre-noel Bouteville 2015-02-01 06:19:53 -06:00
Gregory Nutt
0817d47964 Fix a missing quotation mark in configuration description 2015-01-30 12:28:04 -06:00
Gregory Nutt
6b900ec05c EFM32: Logic to unconditionally enable LE clocking. Even you don't use core clock LE as source for LFA or LFB, to read are write any register not clocked by HFPERCLK or HFCORECLK, HFCORECLKLE should be enabled. From Pierre-noel Bouteville. 2015-01-30 07:44:49 -06:00