Merge remote-tracking branch 'origin/master' into composite

This commit is contained in:
Gregory Nutt 2017-06-29 10:18:16 -06:00
commit 18a32ed2ca
278 changed files with 5294 additions and 827 deletions

View File

@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttShell (NSH)</i></font></big></h1>
<p>Last Updated: June 13, 2017</p>
<p>Last Updated: June 26, 2017</p>
</td>
</tr>
</table>
@ -431,67 +431,73 @@
<tr>
<td><br></td>
<td>
<a href="#cmdtime">2.58 Time execution of another command (time)</a>
<a href="#cmdtelnetd">2.58 Start the Telnet Daemon (telnetd)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdunmount">2.59 Unmount a File System (umount)</a>
<a href="#cmdtime">2.59 Time execution of another command (time)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmduname">2.60 Print system information (uname)</a>
<a href="#cmdunmount">2.60 Unmount a File System (umount)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdunset">2.61 Unset an Environment Variable (unset)</a>
<a href="#cmduname">2.61 Print system information (uname)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdurldec">2.62 URL Decode (urldecode)</a>
<a href="#cmdunset">2.62 Unset an Environment Variable (unset)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdurlencode">2.63 URL Encode (urlencode)</a>
<a href="#cmdurldec">2.63 URL Decode (urldecode)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmduseradd">2.64 Add a New User (useradd)</a>
<a href="#cmdurlencode">2.64 URL Encode (urlencode)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmduserdel">2.65 Delete a user (userdel)</a>
<a href="#cmduseradd">2.65 Add a New User (useradd)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdusleep">2.66 Wait for Microseconds (usleep)</a>
<a href="#cmduserdel">2.66 Delete a user (userdel)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdwget">2.67 Get File Via HTTP (wget)</a>
<a href="#cmdusleep">2.67 Wait for Microseconds (usleep)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdxd">2.68 Hexadecimal Dump of Memory (xd)</a>
<a href="#cmdwget">2.68 Get File Via HTTP (wget)</a>
</td>
</tr>
<tr>
<td><br></td>
<td>
<a href="#cmdxd">2.69 Hexadecimal Dump of Memory (xd)</a>
</td>
</tr>
<tr>
@ -2823,7 +2829,6 @@ sh &lt;script-path&gt;
to by <code>&lt;script-path&gt;</code>.
</p>
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
@ -2865,7 +2870,33 @@ sleep &lt;sec&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdtime"><h2>2.58 Time execution of another command (time)</h2></a>
<a name="cmdtelnetd"><h2>2.58 Time Start the Telnet Daemon (telnetd)</h2></a>
</td>
</tr>
</table>
<p><b>Command Syntax:</b></p>
<ul><pre>
telnetd
</pre></ul>
<p>
<b>Synopsis</b>.
Start the Telnet daemon if it is not already running.
</p>
<p>
The Telnet daemon may be started either programmatically by calling <code>nsh_telnetstart()</code> or it may be started from the NSH command line using this <code>telnetd</code> command.
</p>
<p>
Normally this command would be suppressed with <code>CONFIG_NSH_DISABLE_TELNETD</code>because the Telnet daemon is automatically started in <code>nsh_main.c</code>. The exception is when <code>CONFIG_NSH_NETLOCAL</code> is selected. In that case, the network is not enabled at initialization but rather must be enabled from the NSH command line or via other applications.
</p>
<p>
In that case, when <code>nsh_telnetstart()</code> is called before the the network is initialized, it will fail.
</p>
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdtime"><h2>2.59 Time execution of another command (time)</h2></a>
</td>
</tr>
</table>
@ -2923,7 +2954,7 @@ nsh&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdunmount"><h2>2.59 Unmount a File System (umount)</h2></a>
<a name="cmdunmount"><h2>2.60 Unmount a File System (umount)</h2></a>
</td>
</tr>
</table>
@ -2953,7 +2984,7 @@ nsh&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmduname"><h2>2.60 Print system information (uname)</h2></a>
<a name="cmduname"><h2>2.61 Print system information (uname)</h2></a>
</td>
</tr>
</table>
@ -3020,7 +3051,7 @@ uname [-a | -imnoprsv]
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdunset"><h2>2.61 Unset an Environment Variable (unset)</h2></a>
<a name="cmdunset"><h2>2.62 Unset an Environment Variable (unset)</h2></a>
</td>
</tr>
</table>
@ -3046,7 +3077,7 @@ nsh&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdurldec"><h2>2.62 URL Decode (urldecode)</h2></a>
<a name="cmdurldec"><h2>2.63 URL Decode (urldecode)</h2></a>
</td>
</tr>
</table>
@ -3063,7 +3094,7 @@ urldecode [-f] &lt;string or filepath&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdurlencode"><h2>2.63 URL Encode (urlencode)</h2></a>
<a name="cmdurlencode"><h2>2.64 URL Encode (urlencode)</h2></a>
</td>
</tr>
</table>
@ -3080,7 +3111,7 @@ urlencode [-f] &lt;string or filepath&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmduseradd"><h2>2.64 Add a New User (useradd)</h2></a>
<a name="cmduseradd"><h2>2.65 Add a New User (useradd)</h2></a>
</td>
</tr>
</table>
@ -3097,7 +3128,7 @@ useradd &lt;username&gt; &lt;password&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmduserdel"><h2>2.65 Delete a user (userdel)</h2></a>
<a name="cmduserdel"><h2>2.66 Delete a user (userdel)</h2></a>
</td>
</tr>
</table>
@ -3114,7 +3145,7 @@ userdel &lt;username&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdusleep"><h2>2.66 Wait for Microseconds (usleep)</h2></a>
<a name="cmdusleep"><h2>2.67 Wait for Microseconds (usleep)</h2></a>
</td>
</tr>
</table>
@ -3131,7 +3162,7 @@ usleep &lt;usec&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdwget"><h2>2.67 Get File Via HTTP (wget)</h2></a>
<a name="cmdwget"><h2>2.68 Get File Via HTTP (wget)</h2></a>
</td>
</tr>
</table>
@ -3158,7 +3189,7 @@ wget [-o &lt;local-path&gt;] &lt;url&gt;
<table width ="100%">
<tr bgcolor="#e4e4e4">
<td>
<a name="cmdxd"><h2>2.68 Hexadecimal Dump of Memory (xd)</h2></a>
<a name="cmdxd"><h2>2.69 Hexadecimal Dump of Memory (xd)</h2></a>
</td>
</tr>
</table>
@ -3519,6 +3550,11 @@ nsh&gt;
<td>!<code>CONFIG_DISABLE_SIGNALS</code></td>
<td><code>CONFIG_NSH_DISABLE_SLEEP</code></td>
</tr>
<tr>
<td><b><code>telnetd</code></b></td>
<td><code>CONFIG_NSH_TELNET</code></td>
<td><code>CONFIG_NSH_DISABLE_TELNETD</code></td>
</tr>
<tr>
<td><b><code>test</code></b></td>
<td>!<code>CONFIG_NSH_DISABLESCRIPT</code></td>
@ -4974,7 +5010,7 @@ CONFIG_NSH_LOGIN_FAILCOUNT=3
CONFIG_NSH_LOGIN_FIXED=y
</pre></ul>
<p>
The fixed login credentials are selected via:
The fixed login credentials are selected via:
</p>
<ul><pre>
CONFIG_NSH_LOGIN_USERNAME=admin
@ -5420,6 +5456,7 @@ xxd -i romfs_img >nsh_romfsimg.h
<li><a href="#custinit">Start-up script</a></li>
<li><a href="#custinit"><code>stm32_appinit.c</code></a></li>
<li><a href="#custapps">Synchronous built-in applications</a></li>
<li><a href="#cmdtelnetd"><code>telnetd</code></a></li>
<li><a href="#cmdtest"><code>test</code></a></li>
<li><a href="#cmdtime"><code>time</code></a></li>
<li><a href="#cmdunmount"><code>umount</code></a></li>

View File

@ -3297,7 +3297,7 @@ void lpwork_restorepriority(uint8_t reqprio);
<p>
If <code>CONFIG_ARCH_KERNEL_STACK=y</code> is selected then the platform specific code must export these additional interfaces:
</p>
<ul>
<ul>
<li>
<a href="#up_addrenv_kstackalloc">4.5.15 <code>up_addrenv_kstackalloc()</code></a>:
Allocate the process kernel stack.
@ -3699,7 +3699,7 @@ void lpwork_restorepriority(uint8_t reqprio);
<h4><a name="boardsmp">4.7 Symmetric Multiprocessing (SMP) Application Interface</a></h4>
<p>
According to Wikipedia: "Symmetric multiprocessing (SMP) involves a symmetric multiprocessor system hardware and software architecture where two or more identical processors connect to a single, shared main memory, have full access to all I/O devices, and are controlled by a single operating system instance that treats all processors equally, reserving none for special purposes. Most multiprocessor systems today use an SMP architecture. In the case of multi-core processors, the SMP architecture applies to the cores, treating them as separate processors.
According to Wikipedia: "Symmetric multiprocessing (SMP) involves a symmetric multiprocessor system hardware and software architecture where two or more identical processors connect to a single, shared main memory, have full access to all I/O devices, and are controlled by a single operating system instance that treats all processors equally, reserving none for special purposes. Most multiprocessor systems today use an SMP architecture. In the case of multi-core processors, the SMP architecture applies to the cores, treating them as separate processors.
</p>
<p>
"SMP systems are tightly coupled multiprocessor systems with a pool of homogeneous processors running independently, each processor executing different programs and working on different data and with capability of sharing common resources (memory, I/O device, interrupt system and so on) and connected using a system bus or a crossbar."
@ -3735,7 +3735,7 @@ spinlock_t up_testset(volatile FAR spinlock_t *lock);
<p><b>Returned Value</b>:</p>
<ul>
<p>
The spinlock is always locked upon return.
The spinlock is always locked upon return.
The value of previous value of the spinlock variable is returned, either <code>SP_LOCKED</code> if the spinlock was previously locked (meaning that the test-and-set operation failed to obtain the lock) or <code>SP_UNLOCKED</code> if the spinlock was previously unlocked (meaning that we successfully obtained the lock)
</p>
</ul>

1
TODO
View File

@ -1239,7 +1239,6 @@ o Network (net/, drivers/net)
be supported in order to support ping6 on a 6LoWPAN network.
If RFC 6775 were implemented, then arbitrary IPv6 addresses,
including addresses from DHCPv6 could be used.
can
UPDATE: With IPv6 neighbor discovery, any IPv6 address may
be associated with any short or extended address. In fact,

View File

@ -55,7 +55,7 @@
* - L486 has AES
* - L496, L4A6 has 320 Kib SRAM, 2xCAN and CameraIF. Most (all?) of these have I2C4.
* - L4A6 has AES and HASH
*
*
* ----------- ---------------- ----- ------ ------ ---- ---- -----
* PART PACKAGE GPIOs LCD Tamper FSMC CapS AdcCh
* ----------- ---------------- ----- ------ ------ ---- ---- -----

View File

@ -112,7 +112,7 @@ extern "C"
#endif
/****************************************************************************
* Name:
* Name:
*
* Description:
*

View File

@ -119,7 +119,7 @@ void arch_clean_dcache(uintptr_t start, uintptr_t end)
int32_t tmpways = ways;
/* Isolate the cache line associated with this address. For example
* if the cache line size is 32 bytes and the cache size is 16KB, then
* if the cache line size is 32 bytes and the cache size is 16KB, then
*
* sshift = 5 : Offset to the beginning of the set field
* smask = 0x007f : Mask of the set field

View File

@ -119,7 +119,7 @@ void arch_flush_dcache(uintptr_t start, uintptr_t end)
int32_t tmpways = ways;
/* Isolate the cache line associated with this address. For example
* if the cache line size is 32 bytes and the cache size is 16KB, then
* if the cache line size is 32 bytes and the cache size is 16KB, then
*
* sshift = 5 : Offset to the beginning of the set field
* smask = 0x007f : Mask of the set field

View File

@ -120,7 +120,7 @@ void arch_invalidate_dcache(uintptr_t start, uintptr_t end)
int32_t tmpways = ways;
/* Isolate the cache line associated with this address. For example
* if the cache line size is 32 bytes and the cache size is 16KB, then
* if the cache line size is 32 bytes and the cache size is 16KB, then
*
* sshift = 5 : Offset to the beginning of the set field
* smask = 0x007f : Mask of the set field

View File

@ -26,7 +26,7 @@
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*
* Copyright (C) 2014 Pierre-noel Bouteville . All rights reserved.
* Author: Pierre-noel Bouteville <pnb990@gmail.com>
*

View File

@ -78,7 +78,7 @@
************************************************************************************/
THUMB
up_fullcontextrestore:
/* Perform the System call with R0=1 and R1=regs */
@ -90,5 +90,5 @@ up_fullcontextrestore:
/* This call should not return */
bx lr /* Unnecessary ... will not return */
END

View File

@ -111,7 +111,7 @@ uint32_t itm_sendchar(uint32_t ch)
/****************************************************************************
* Name: itm_receivechar
*
*
* Description:
*
* Input Parameters:
@ -122,7 +122,7 @@ uint32_t itm_sendchar(uint32_t ch)
*
****************************************************************************/
int32_t itm_receivechar(void)
int32_t itm_receivechar(void)
{
int32_t ch = -1; /* Assume no character available */
@ -150,7 +150,7 @@ int32_t itm_receivechar(void)
*
****************************************************************************/
int32_t itm_checkchar (void)
int32_t itm_checkchar (void)
{
return (g_itm_rxbuffer != ITM_RXBUFFER_EMPTY);
}

View File

@ -223,7 +223,7 @@ int up_create_stack(FAR struct tcb_s *tcb, size_t stack_size, uint8_t ttype)
top_of_stack = (uint32_t)tcb->stack_alloc_ptr + stack_size - 4;
/* The ARM stack must be aligned to 8-byte alignment for EABI.
* If necessary top_of_stack must be rounded down to the next
* If necessary top_of_stack must be rounded down to the next
* boundary
*/

View File

@ -133,7 +133,7 @@ int up_use_stack(struct tcb_s *tcb, void *stack, size_t stack_size)
top_of_stack = (uint32_t)tcb->stack_alloc_ptr + stack_size - 4;
/* The ARM stack must be aligned to 8-byte alignment for EABI.
* If necessary top_of_stack must be rounded down to the next
* If necessary top_of_stack must be rounded down to the next
* boundary
*/

View File

@ -98,7 +98,7 @@ CHIP_CSRCS = efm32_start.c efm32_clockconfig.c efm32_irq.c efm32_timerisr.c
CHIP_CSRCS += efm32_gpio.c efm32_lowputc.c efm32_timer.c efm32_i2c.c
ifeq ($(CONFIG_EFM32_FLASHPROG),y)
CHIP_CSRCS += efm32_flash.c
CHIP_CSRCS += efm32_flash.c
endif
ifeq ($(CONFIG_EFM32_BITBAND),y)

View File

@ -88,6 +88,6 @@ struct efm32_calibrate_s
{
const uint32_t address; /* Address of calibration register */
const uint32_t value; /* Default value for calibration register */
};
};
#endif /* __ARCH_ARM_SRC_EFM32_CHIP_EFM32_CALIBRATE_H */

View File

@ -79,16 +79,16 @@
/* MSC Register Offsets ********************************************************************************************************/
#define EFM32_DEVINFO_CAL_OFFSET 0x0000
#define EFM32_DEVINFO_ADC0CALn_OFFSET(n) (0x0004+(n)*4)
#define EFM32_DEVINFO_DAC0CALn_OFFSET(n) (0x0018+(n)*4)
#define EFM32_DEVINFO_AUXHFRCOCALn_OFFSET(n) (0x0024+(n)*4)
#define EFM32_DEVINFO_HFRCOCALn_OFFSET(n) (0x002c+(n)*4)
#define EFM32_DEVINFO_MEMINFO_PAGE_SIZE_OFFSET 0x0034
#define EFM32_DEVINFO_UNIQUEL_OFFSET 0x0040
#define EFM32_DEVINFO_UNIQUEH_OFFSET 0x0044
#define EFM32_DEVINFO_MEMINFO_SIZE_OFFSET 0x0048
#define EFM32_DEVINFO_PART_OFFSET 0x004c
#define EFM32_DEVINFO_CAL_OFFSET 0x0000
#define EFM32_DEVINFO_ADC0CALn_OFFSET(n) (0x0004+(n)*4)
#define EFM32_DEVINFO_DAC0CALn_OFFSET(n) (0x0018+(n)*4)
#define EFM32_DEVINFO_AUXHFRCOCALn_OFFSET(n) (0x0024+(n)*4)
#define EFM32_DEVINFO_HFRCOCALn_OFFSET(n) (0x002c+(n)*4)
#define EFM32_DEVINFO_MEMINFO_PAGE_SIZE_OFFSET 0x0034
#define EFM32_DEVINFO_UNIQUEL_OFFSET 0x0040
#define EFM32_DEVINFO_UNIQUEH_OFFSET 0x0044
#define EFM32_DEVINFO_MEMINFO_SIZE_OFFSET 0x0048
#define EFM32_DEVINFO_PART_OFFSET 0x004c
/* MSC Register Addresses ******************************************************************************************************/
@ -121,7 +121,7 @@
#define _DEVINFO_CAL_CRC_SHIFT 0 /* Integrity CRC checksum shift */
#define _DEVINFO_CAL_TEMP_MASK 0x00FF0000UL /* Calibration temperature, DegC, mask */
#define _DEVINFO_CAL_TEMP_SHIFT 16 /* Calibration temperature shift */
#define _DEVINFO_ADC0CAL0_1V25_GAIN_MASK 0x00007F00UL /* Gain for 1V25 reference, mask */
#define _DEVINFO_ADC0CAL0_1V25_GAIN_SHIFT 8 /* Gain for 1V25 reference, shift */
#define _DEVINFO_ADC0CAL0_1V25_OFFSET_MASK 0x0000007FUL /* Offset for 1V25 reference, mask */
@ -130,7 +130,7 @@
#define _DEVINFO_ADC0CAL0_2V5_GAIN_SHIFT 24 /* Gain for 2V5 reference, shift */
#define _DEVINFO_ADC0CAL0_2V5_OFFSET_MASK 0x007F0000UL /* Offset for 2V5 reference, mask */
#define _DEVINFO_ADC0CAL0_2V5_OFFSET_SHIFT 16 /* Offset for 2V5 reference, shift */
#define _DEVINFO_ADC0CAL1_VDD_GAIN_MASK 0x00007F00UL /* Gain for VDD reference, mask */
#define _DEVINFO_ADC0CAL1_VDD_GAIN_SHIFT 8 /* Gain for VDD reference, shift */
#define _DEVINFO_ADC0CAL1_VDD_OFFSET_MASK 0x0000007FUL /* Offset for VDD reference, mask */
@ -139,33 +139,33 @@
#define _DEVINFO_ADC0CAL1_5VDIFF_GAIN_SHIFT 24 /* Gain for 5VDIFF reference, mask */
#define _DEVINFO_ADC0CAL1_5VDIFF_OFFSET_MASK 0x007F0000UL /* Offset for 5VDIFF reference, mask */
#define _DEVINFO_ADC0CAL1_5VDIFF_OFFSET_SHIFT 16 /* Offset for 5VDIFF reference, shift */
#define _DEVINFO_ADC0CAL2_2XVDDVSS_OFFSET_MASK 0x0000007FUL /* Offset for 2XVDDVSS reference, mask */
#define _DEVINFO_ADC0CAL2_2XVDDVSS_OFFSET_SHIFT 0 /* Offset for 2XVDDVSS reference, shift */
#define _DEVINFO_ADC0CAL2_TEMP1V25_MASK 0xFFF00000UL /* Temperature reading at 1V25 reference, mask */
#define _DEVINFO_ADC0CAL2_TEMP1V25_SHIFT 20 /* Temperature reading at 1V25 reference, DegC */
#define _DEVINFO_DAC0CAL0_1V25_GAIN_MASK 0x007F0000UL /* Gain for 1V25 reference, mask */
#define _DEVINFO_DAC0CAL0_1V25_GAIN_SHIFT 16 /* Gain for 1V25 reference, shift */
#define _DEVINFO_DAC0CAL0_1V25_CH1_OFFSET_MASK 0x00003F00UL /* Channel 1 offset for 1V25 reference, mask */
#define _DEVINFO_DAC0CAL0_1V25_CH1_OFFSET_SHIFT 8 /* Channel 1 offset for 1V25 reference, shift */
#define _DEVINFO_DAC0CAL0_1V25_CH0_OFFSET_MASK 0x0000003FUL /* Channel 0 offset for 1V25 reference, mask */
#define _DEVINFO_DAC0CAL0_1V25_CH0_OFFSET_SHIFT 0 /* Channel 0 offset for 1V25 reference, shift */
#define _DEVINFO_DAC0CAL1_2V5_GAIN_MASK 0x007F0000UL /* Gain for 2V5 reference, mask */
#define _DEVINFO_DAC0CAL1_2V5_GAIN_SHIFT 16 /* Gain for 2V5 reference, shift */
#define _DEVINFO_DAC0CAL1_2V5_CH1_OFFSET_MASK 0x00003F00UL /* Channel 1 offset for 2V5 reference, mask */
#define _DEVINFO_DAC0CAL1_2V5_CH1_OFFSET_SHIFT 8 /* Channel 1 offset for 2V5 reference, shift */
#define _DEVINFO_DAC0CAL1_2V5_CH0_OFFSET_MASK 0x0000003FUL /* Channel 0 offset for 2V5 reference, mask */
#define _DEVINFO_DAC0CAL1_2V5_CH0_OFFSET_SHIFT 0 /* Channel 0 offset for 2V5 reference, shift */
#define _DEVINFO_DAC0CAL2_VDD_GAIN_MASK 0x007F0000UL /* Gain for VDD reference, mask */
#define _DEVINFO_DAC0CAL2_VDD_GAIN_SHIFT 16 /* Gain for VDD reference, shift */
#define _DEVINFO_DAC0CAL2_VDD_CH1_OFFSET_MASK 0x00003F00UL /* Channel 1 offset for VDD reference, mask */
#define _DEVINFO_DAC0CAL2_VDD_CH1_OFFSET_SHIFT 8 /* Channel 1 offset for VDD reference, shift */
#define _DEVINFO_DAC0CAL2_VDD_CH0_OFFSET_MASK 0x0000003FUL /* Channel 0 offset for VDD reference, mask */
#define _DEVINFO_DAC0CAL2_VDD_CH0_OFFSET_SHIFT 0 /* Channel 0 offset for VDD reference, shift*/
#define _DEVINFO_AUXHFRCOCAL0_BAND1_MASK 0x000000FFUL /* 1MHz tuning value for AUXHFRCO, mask */
#define _DEVINFO_AUXHFRCOCAL0_BAND1_SHIFT 0 /* 1MHz tuning value for AUXHFRCO, shift */
#define _DEVINFO_AUXHFRCOCAL0_BAND7_MASK 0x0000FF00UL /* 7MHz tuning value for AUXHFRCO, mask */
@ -174,12 +174,12 @@
#define _DEVINFO_AUXHFRCOCAL0_BAND11_SHIFT 16 /* 11MHz tuning value for AUXHFRCO, shift */
#define _DEVINFO_AUXHFRCOCAL0_BAND14_MASK 0xFF000000UL /* 14MHz tuning value for AUXHFRCO, mask */
#define _DEVINFO_AUXHFRCOCAL0_BAND14_SHIFT 24 /* 14MHz tuning value for AUXHFRCO, shift */
#define _DEVINFO_AUXHFRCOCAL1_BAND21_MASK 0x000000FFUL /* 21MHz tuning value for AUXHFRCO, mask */
#define _DEVINFO_AUXHFRCOCAL1_BAND21_SHIFT 0 /* 21MHz tuning value for AUXHFRCO, shift */
#define _DEVINFO_AUXHFRCOCAL1_BAND28_MASK 0x0000FF00UL /* 28MHz tuning value for AUXHFRCO, shift */
#define _DEVINFO_AUXHFRCOCAL1_BAND28_SHIFT 8 /* 28MHz tuning value for AUXHFRCO, mask */
#define _DEVINFO_HFRCOCAL0_BAND1_MASK 0x000000FFUL /* 1MHz tuning value for HFRCO, mask */
#define _DEVINFO_HFRCOCAL0_BAND1_SHIFT 0 /* 1MHz tuning value for HFRCO, shift */
#define _DEVINFO_HFRCOCAL0_BAND7_MASK 0x0000FF00UL /* 7MHz tuning value for HFRCO, mask */
@ -188,26 +188,26 @@
#define _DEVINFO_HFRCOCAL0_BAND11_SHIFT 16 /* 11MHz tuning value for HFRCO, shift */
#define _DEVINFO_HFRCOCAL0_BAND14_MASK 0xFF000000UL /* 14MHz tuning value for HFRCO, mask */
#define _DEVINFO_HFRCOCAL0_BAND14_SHIFT 24 /* 14MHz tuning value for HFRCO, shift */
#define _DEVINFO_HFRCOCAL1_BAND21_MASK 0x000000FFUL /* 21MHz tuning value for HFRCO, mask */
#define _DEVINFO_HFRCOCAL1_BAND21_SHIFT 0 /* 21MHz tuning value for HFRCO, shift */
#define _DEVINFO_HFRCOCAL1_BAND28_MASK 0x0000FF00UL /* 28MHz tuning value for HFRCO, shift */
#define _DEVINFO_HFRCOCAL1_BAND28_SHIFT 8 /* 28MHz tuning value for HFRCO, mask */
#define _DEVINFO_MEMINFO_FLASH_PAGE_SIZE_MASK 0xFF000000UL /* Flash page size (refer to ref.man for encoding) mask */
#define _DEVINFO_MEMINFO_FLASH_PAGE_SIZE_SHIFT 24 /* Flash page size shift */
#define _DEVINFO_UNIQUEL_MASK 0xFFFFFFFFUL /* Lower part of 64-bit device unique number */
#define _DEVINFO_UNIQUEL_SHIFT 0 /* Unique Low 32-bit shift */
#define _DEVINFO_UNIQUEH_MASK 0xFFFFFFFFUL /* High part of 64-bit device unique number */
#define _DEVINFO_UNIQUEH_SHIFT 0 /* Unique High 32-bit shift */
#define _DEVINFO_MEMINFO_SIZE_SRAM_MASK 0xFFFF0000UL /* Flash size in kilobytes */
#define _DEVINFO_MEMINFO_SIZE_SRAM_SHIFT 16 /* Bit position for flash size */
#define _DEVINFO_MEMINFO_SIZE_FLASH_MASK 0x0000FFFFUL /* SRAM size in kilobytes */
#define _DEVINFO_MEMINFO_SIZE_FLASH_SHIFT 0 /* Bit position for SRAM size */
#define _DEVINFO_PART_PROD_REV_MASK 0xFF000000UL /* Production revision */
#define _DEVINFO_PART_PROD_REV_SHIFT 24 /* Bit position for production revision */
#define _DEVINFO_PART_DEVICE_FAMILY_MASK 0x00FF0000UL /* Device Family, 0x47 for Gecko */

View File

@ -52,6 +52,6 @@
# define EFM32_FLASH_PAGESIZE 512
#elif defined(CONFIG_EFM32_EFM32TG)
# define EFM32_FLASH_PAGESIZE 512
#endif
#endif
#endif /* __ARCH_ARM_SRC_EFM32_CHIP_EFM32_FLASH_H */

View File

@ -284,7 +284,7 @@
#endif
/* GPIO Register Bit Field Definitions *****************************************************************************************/
/* Bit fields for GPIO P_CTRL */
#define _GPIO_P_CTRL_RESETVALUE 0x00000000UL /* Default value for GPIO_P_CTRL */

View File

@ -109,6 +109,6 @@ struct efm32_romtable_s
const uint32_t pid2; /* Chip minor rev MSB, JEP_106_PRESENT, JEP_106_NO */
const uint32_t pid3; /* Chip minor rev LSB */
const uint32_t cid0; /* Unused */
};
};
#endif /* __ARCH_ARM_SRC_EFM32_CHIP_EFM32_ROMTABLE_H */

View File

@ -152,7 +152,7 @@ struct efm32_leuart_s
****************************************************************************/
static inline uint32_t efm32_serialin(struct efm32_leuart_s *priv, int offset);
static inline void efm32_serialout(struct efm32_leuart_s *priv, int offset,
static inline void efm32_serialout(struct efm32_leuart_s *priv, int offset,
uint32_t value);
static inline void efm32_setuartint(struct efm32_leuart_s *priv);

View File

@ -66,7 +66,7 @@
#if defined(CONFIG_EFM32_TIMER0_PWM) || \
defined(CONFIG_EFM32_TIMER1_PWM) || \
defined(CONFIG_EFM32_TIMER2_PWM) || \
defined(CONFIG_EFM32_TIMER3_PWM)
defined(CONFIG_EFM32_TIMER3_PWM)
/****************************************************************************
* Pre-processor Definitions

View File

@ -36,9 +36,9 @@
#ifndef __ARCH_ARM_SRC_EFM32_EFM32_PWM_H
#define __ARCH_ARM_SRC_EFM32_EFM32_PWM_H
/* The EFM32 does not have dedicated PWM hardware. Rather, pulsed output
* control is a capability of the EFM32 timers. The logic in this file
* implements the lower half of the standard, NuttX PWM interface using the
/* The EFM32 does not have dedicated PWM hardware. Rather, pulsed output
* control is a capability of the EFM32 timers. The logic in this file
* implements the lower half of the standard, NuttX PWM interface using the
* EFM32 timers. That interface is described in include/nuttx/drivers/pwm.h.
*/
@ -55,9 +55,9 @@
****************************************************************************/
/* Configuration **************************************************************/
/* Timer devices may be used for different purposes. One special purpose is
* to generate modulated outputs for such things as motor control.
* If CONFIG_EFM32_TIMERn is defined then the CONFIG_EFM32_TIMERn_PWM must also
* be defined to indicate that timer "n" is intended to be used for pulsed
* to generate modulated outputs for such things as motor control.
* If CONFIG_EFM32_TIMERn is defined then the CONFIG_EFM32_TIMERn_PWM must also
* be defined to indicate that timer "n" is intended to be used for pulsed
* output signal generation.
*/

View File

@ -243,7 +243,7 @@ struct efm32_usart_s
****************************************************************************/
static inline uint32_t efm32_serialin(struct efm32_usart_s *priv, int offset);
static inline void efm32_serialout(struct efm32_usart_s *priv, int offset,
static inline void efm32_serialout(struct efm32_usart_s *priv, int offset,
uint32_t value);
static inline void efm32_setuartint(struct efm32_usart_s *priv);
@ -897,7 +897,7 @@ static int efm32_ioctl(struct file *filep, int cmd, unsigned long arg)
#ifdef CONFIG_SERIAL_IFLOWCONTROL
priv->iflow = (termiosp->c_cflag & CRTS_IFLOW) != 0;
#endif
#endif
#endif
/* Note that only cfgetispeed is used because we have knowledge
* that only one speed is supported.

View File

@ -136,7 +136,7 @@
****************************************************************************/
/* Per SPI callouts to board-specific logic */
typedef CODE void (*imx_select_t)(FAR struct spi_dev_s *dev,
uint32_t devid, bool selected);
typedef CODE uint8_t (*imx_status_t)(FAR struct spi_dev_s *dev,

View File

@ -143,7 +143,7 @@ typedef uint16_t iomux_pinset_t;
/****************************************************************************
* Public Function Prototypes
****************************************************************************/
/****************************************************************************
* Name: imx_padmux_map
*

View File

@ -230,7 +230,7 @@ void arm_timer_initialize(void)
putreg32(GPT_OCR3_VALUE, IMX_GPT_OCR3);
putreg32(GPT_PR_VALUE - 1, IMX_GPT_PR);
/* Configure restart mode. Interrupts will be received on OC3, then OC2,
* then OC1 when the counter will be reset to zero and the whole sequence
* starts again.

View File

@ -153,11 +153,11 @@
#ifdef KINETIS_K64
# define KINETIS_USB_USBFRMADJUST \
(KINETIS_USB0_BASE+KINETIS_USB_USBFRMADJUST_OFFSET)
(KINETIS_USB0_BASE+KINETIS_USB_USBFRMADJUST_OFFSET)
# define KINETIS_USB_USB0_CLK_RECOVER_CTRL \
(KINETIS_USB0_BASE+KINETIS_USB_USB0_CLK_RECOVER_CTRL_OFFSET)
(KINETIS_USB0_BASE+KINETIS_USB_USB0_CLK_RECOVER_CTRL_OFFSET)
# define KINETIS_USB_USB0_CLK_RECOVER_IRC_EN \
(KINETIS_USB0_BASE+KINETIS_USB_USB0_CLK_RECOVER_IRC_EN_OFFSET)
(KINETIS_USB0_BASE+KINETIS_USB_USB0_CLK_RECOVER_IRC_EN_OFFSET)
# define KINETIS_USB_USB0_CLK_RECOVER_INT_STATUS \
(KINETIS_USB0_BASE+KINETIS_USB_USB0_CLK_RECOVER_INT_STATUS_OFFSET)
#endif

View File

@ -170,7 +170,7 @@
#define BOARD_PHY_100BASET(s) (((s) & (2 << MII_PHYCTRL2_MODE_SHIFT)) != 0)
#define BOARD_PHY_ISDUPLEX(s) (((s) & (4 << MII_PHYCTRL2_MODE_SHIFT)) != 0)
/* Estimate the MII_SPEED in order to get an MDC close to 2.5MHz,
/* Estimate the MII_SPEED in order to get an MDC close to 2.5MHz,
based on the internal module (ENET) clock:
*
* MII_SPEED = ENET_FREQ/5000000 -1
@ -1761,7 +1761,7 @@ static inline int kinetis_initphy(struct kinetis_driver_s *priv)
usleep(LINK_WAITUS);
}
if (phydata & MII_MSR_ANEGCOMPLETE)
if (phydata & MII_MSR_ANEGCOMPLETE)
{
ninfo("%s: Autonegotiation complete\n", BOARD_PHY_NAME);
ninfo("%s: MII_MSR: %04x\n", BOARD_PHY_NAME, phydata);
@ -1769,14 +1769,14 @@ static inline int kinetis_initphy(struct kinetis_driver_s *priv)
else
{
/* TODO: Autonegotitation has right now failed. Maybe the Eth cable is not connected.
PHY chip have mechanisms to configure link OK. We should leave autconf on,
PHY chip have mechanisms to configure link OK. We should leave autconf on,
and find a way to re-configure MCU whenever the link is ready. */
ninfo("%s: Autonegotiation failed [%d] (is cable plugged-in ?), default to 10Mbs mode\n", \
BOARD_PHY_NAME, retries);
/* Stop auto negotiation */
kinetis_writemii(priv, phyaddr, MII_MCR, 0);
}

View File

@ -1651,7 +1651,7 @@ static int khci_rdsetup(struct khci_ep_s *privep, uint8_t *dest, int readlen)
/* Then give the BDT to the USB */
bdtinfo("EP%d BDT OUT [%p] {%08x, %08x}\n",
bdtinfo("EP%d BDT OUT [%p] {%08x, %08x}\n",
epno, bdtout, status, bdtout->addr);
bdtout->status = status;

View File

@ -101,7 +101,7 @@
#define LPC23XX_EMAC_BASE 0xFFE00000 /* Ethernet MAC base address */
#define LPC23XX_USB_BASE 0xFFE0C200 /* USB base address */
#define LPC23XX_SCB_BASE 0xE01FC000 /* System Control Block (SBC) base address */
#define LPC23XX_EXT_BASE 0xe01fc140 /* External Interrupt base address */
#define LPC23XX_EXT_BASE 0xe01fc140 /* External Interrupt base address */
/* AHB Register block base addresses */
@ -367,7 +367,7 @@
#define CAN1RID_OFFSET 0x24
#define CAN1RDA_OFFSET 0x28
#define CAN1RDB_OFFSET 0x2C
#define CAN1TFI1_OFFSET 0x30
#define CAN1TID1_OFFSET 0x34
#define CAN1TDA1_OFFSET 0x38
@ -394,7 +394,7 @@
#define CAN2RID_OFFSET 0x24
#define CAN2RDA_OFFSET 0x28
#define CAN2RDB_OFFSET 0x2C
#define CAN2TFI1_OFFSET 0x30
#define CAN2TID1_OFFSET 0x34
#define CAN2TDA1_OFFSET 0x38

View File

@ -24,7 +24,7 @@ renamed from lib_llpcspifi_Mx.a to lib_lpcspifi_Mx.a]
LPCSpifilib version <1.01>
==========================
Release date <12/11/2014>
1. Changed reported device string on S25FL512S from "S25FL512S 256kSec" to "S25FL512S".
1. Changed reported device string on S25FL512S from "S25FL512S 256kSec" to "S25FL512S".
2. Changelog update: Added support for MX25L1635E, MX25L6435E, MX25L8035E, S25FL016K, S25FL064P, S25FL128S, S25FL256S,
S25FL512S, W25Q16DV, and W25Q64FV devices.
3. Changelog update: Changed maxRead to 16128 (was 32768).
@ -66,9 +66,9 @@ Change Log:
2. Added support for Winbond W25Q80BV.
3. Added API's to return max speed for specific functions:
Read, QuadRead, Program, Quad Program.
4. Added prvGetStatus, prvSetStatus and prvSetQuadMode Functions to device definition structure.
4. Added prvGetStatus, prvSetStatus and prvSetQuadMode Functions to device definition structure.
5. Added spifiDevGetCount function.
6. Consolidated MX25L3235E and S25FL164K support into spifilib_fam_standard_cmd module
6. Consolidated MX25L3235E and S25FL164K support into spifilib_fam_standard_cmd module
(removed SPIFI_REG_FAMILY_xxx registration functions and replaced with
spifi_REG_FAMILY_StandardCommandSet function).
7. Fixed bug in spifiRegisterFamily where NULL was being returned instead of the

View File

@ -231,7 +231,7 @@ int up_cpu_start(int cpu)
putreg32(0x1, SAM_IPC0_IECR); /* enable : write-only */
irq_attach(SAM_IRQ_IPC0, arm_pause_handler, NULL);
up_enable_irq(SAM_IRQ_IPC0);
spin_lock(&g_cpu1_boot);
/* CPU1 boot done */

View File

@ -1,6 +1,6 @@
/************************************************************************************
* arch/arm/src/sama5/chip/sam_emaca.h
* This is the form of the EMAC interface used the SAMA5D3
* This is the form of the EMAC interface used the SAMA5D3
*
* Copyright (C) 2013-2014 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>

View File

@ -123,5 +123,5 @@
/* Flexcom TWI Register Definitions *************************************************/
#include "chip/sam_flexcom_twi.h"
#endif /* __ARCH_ARM_SRC_SAMA5_CHIP_SAM_FLEXCOM_H */

View File

@ -814,7 +814,7 @@
#if defined(ATSAMA5D2) || defined(ATSAMA5D4)
/* Master Error Interrupt Enable Register, Master Error Interrupt Disable Register,
* Master Error Interrupt Mask Register, and Master Error Status Register
* Master Error Interrupt Mask Register, and Master Error Status Register
*/
# define MATRIX_MEINT_MERR(n) (1 << (n)) /* Master x Access Error, n=0..9 */

View File

@ -283,7 +283,7 @@
#define XDMAC_CHINT_DI (1 << 2) /* Bit 2: End of Disable Interrupt */
#define XDMAC_CHINT_FI (1 << 3) /* Bit 3: End of Flush Interrupt */
#define XDMAC_CHINT_RBI (1 << 4) /* Bit 4: Read Bus Error Interrupt */
#define XDMAC_CHINT_WBI (1 << 5) /* Bit 5: Write Bus Error Interrupt */
#define XDMAC_CHINT_WBI (1 << 5) /* Bit 5: Write Bus Error Interrupt */
#define XDMAC_CHINT_ROI (1 << 6) /* Bit 6: Request Overflow Error Interrupt Disable Bit */
#define XDMAC_CHINT_ERRORS (0x00000070)

View File

@ -3,7 +3,7 @@
* 10/100 Base-T Ethernet driver for the SAMA5D4.
*
* The SAMA5D3 and SAMA5D4 EMAC implementations differ in register naming
* and in register layout but are functionally equivalent. Here they are
* and in register layout but are functionally equivalent. Here they are
* distinguished as 'A' and 'B'. For now, the 'A' and 'B' drivers are kept
* separate (mostly because the 'B' driver needs to support two EMAC blocks.
* But the 'B' driver should replace the 'A' driver someday.

View File

@ -173,9 +173,9 @@
# define DMAC_QOSCTRL_DQOS_LOW (1 << DMAC_QOSCTRL_DQOS_SHIFT) /* Sensitive bandwidth */
# define DMAC_QOSCTRL_DQOS_MEDIUM (2 << DMAC_QOSCTRL_DQOS_SHIFT) /* Sensitive latency */
# define DMAC_QOSCTRL_DQOS_HIGH (3 << DMAC_QOSCTRL_DQOS_SHIFT) /* Critical latency */
/* Common bit definitions for: Software Trigger Control Register, Interrupt Status Register,
* Busy Channels Register, and Pending Channels Register
* Busy Channels Register, and Pending Channels Register
*/
#define DMAC_CHAN(n) (1 << (n)) /* DMAC Channel n, n=0-15 */

View File

@ -335,7 +335,7 @@
* Device Endpoint Mask Register
* Device Endpoint Enable Register
*
* (1) Control, Bulk, Interrupt endpoints
* (1) Control, Bulk, Interrupt endpoints
* (2) Isochronous endpoints only
*/
@ -464,7 +464,7 @@
* (1) Not clear or set registers
* (2) Not clear register
*/
#define USBHS_HSTINT_DCONNI (1 << 0) /* Bit 0: Device Connection Interrupt */
#define USBHS_HSTINT_DDISCI (1 << 1) /* Bit 1: Device Disconnection Interrupt */
#define USBHS_HSTINT_RSTI (1 << 2) /* Bit 2: USB Reset Sent Interrupt */
@ -644,7 +644,7 @@
*/
/* All registers */
#define USBHS_HSTPIPINT_RXINI (1 << 0) /* Bit 0: Received IN Data Interrupt */
#define USBHS_HSTPIPINT_TXOUTI (1 << 1) /* Bit 1: Transmitted OUT Data Interrupt */
#define USBHS_HSTPIPINT_TXSTPI (1 << 2) /* Bit 2: Transmitted SETUP Interrupt (1) */

View File

@ -244,7 +244,7 @@
#define XDMAC_CHINT_DI (1 << 2) /* Bit 2: End of Disable Interrupt */
#define XDMAC_CHINT_FI (1 << 3) /* Bit 3: End of Flush Interrupt */
#define XDMAC_CHINT_RBI (1 << 4) /* Bit 4: Read Bus Error Interrupt */
#define XDMAC_CHINT_WBI (1 << 5) /* Bit 5: Write Bus Error Interrupt */
#define XDMAC_CHINT_WBI (1 << 5) /* Bit 5: Write Bus Error Interrupt */
#define XDMAC_CHINT_ROI (1 << 6) /* Bit 6: Request Overflow Error Interrupt Disable Bit */
#define XDMAC_CHINT_ERRORS (0x00000070)

View File

@ -709,7 +709,7 @@ ssize_t up_progmem_write(size_t address, const void *buffer, size_t buflen)
for (i = 0; i < (SAMV7_PAGE_SIZE / sizeof(uint32_t)); i++)
{
*dest++ = *src++;
*dest++ = *src++;
ARM_DMB();
}

View File

@ -2545,7 +2545,7 @@ static void sam_dma_interrupt(struct sam_usbdev_s *priv, int epno)
if (byct > 0 || nbusybk > 0)
{
/* Not all of the data has been sent to the host. A NBUSYBKE
/* Not all of the data has been sent to the host. A NBUSYBKE
* interrupt will be generated later. It has already been enabled.
* Now wait for the transfer to complete.
*/

View File

@ -169,7 +169,7 @@
#define STM32_OTGHS_DVBUSPULSE_OFFSET 0x082c /* Device VBUS pulsing time register */
#define STM32_OTGHS_DIEPEMPMSK_OFFSET 0x0834 /* Device IN endpoint FIFO empty interrupt mask register */
#define STM32_OTGHS_DIEP_OFFSET(n) (0x0900 + ((n) << 5))
#define STM32_OTGHS_DIEP_OFFSET(n) (0x0900 + ((n) << 5))
#define STM32_OTGHS_DIEPCTL_EPOFFSET 0x0000 /* Device endpoint control register */
#define STM32_OTGHS_DIEPINT_EPOFFSET 0x0008 /* Device endpoint interrupt register */
#define STM32_OTGHS_DIEPTSIZ_EPOFFSET 0x0010 /* Device IN endpoint transfer size register */

View File

@ -426,7 +426,7 @@
#define GPIO_I2C3_SDA_2 (GPIO_ALT|GPIO_AF4|GPIO_SPEED_50MHz|GPIO_OPENDRAIN|GPIO_PORTH|GPIO_PIN8)
#if defined(CONFIG_STM32_STM32F411)
# define GPIO_I2C3_SDA_3 (GPIO_ALT|GPIO_AF9|GPIO_SPEED_50MHz|GPIO_OPENDRAIN|GPIO_PORTB|GPIO_PIN4)
# define GPIO_I2C3_SDA_4 (GPIO_ALT|GPIO_AF9|GPIO_SPEED_50MHz|GPIO_OPENDRAIN|GPIO_PORTB|GPIO_PIN8)
# define GPIO_I2C3_SDA_4 (GPIO_ALT|GPIO_AF9|GPIO_SPEED_50MHz|GPIO_OPENDRAIN|GPIO_PORTB|GPIO_PIN8)
#endif
#define GPIO_I2C3_SMBA_1 (GPIO_ALT|GPIO_AF4|GPIO_SPEED_50MHz|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN9)
#define GPIO_I2C3_SMBA_2 (GPIO_ALT|GPIO_AF4|GPIO_SPEED_50MHz|GPIO_PUSHPULL|GPIO_PORTH|GPIO_PIN9)

View File

@ -91,7 +91,7 @@ typedef enum
STM32_CAP_MAPPED_TI1 = (1<<GTIM_CCMR1_CC1S_SHIFT),
STM32_CAP_MAPPED_TI2 = (2<<GTIM_CCMR1_CC1S_SHIFT),
/*TODO STM32_CAP_MAPPED_TRC = (3<<GTIM_CCMR1_CC1S_SHIFT),*/
/* Event prescaler */
STM32_CAP_INPSC_MASK = (GTIM_CCMR1_IC1PSC_MASK),
@ -144,7 +144,7 @@ typedef enum
STM32_CAP_CLK_EXT,
/* TODO: Add other clock */
} stm32_cap_clk_t;
/* Capture flags */
@ -170,7 +170,7 @@ typedef enum
#define STM32_CAP_FLAG_IRQ_CH(ch) (GTIM_SR_CC1IF<<((ch)-1))
#define STM32_CAP_FLAG_OF_CH(ch) (GTIM_SR_CC1OF<<((ch)-1))
#define STM32_CAP_CHANNEL_COUNTER 0
/* Capture Operations */
struct stm32_cap_ops_s

View File

@ -392,11 +392,11 @@ int up_rtc_initialize(void)
modifyreg32(STM32_RCC_BDCR, RCC_BDCR_BDRST, 0);
putreg16(RTC_MAGIC, RTC_MAGIC_REG);
}
/* Select the lower power external 32,768Hz (Low-Speed External, LSE) oscillator
* as RTC Clock Source and enable the Clock.
*/
modifyreg16(STM32_RCC_BDCR, RCC_BDCR_RTCSEL_MASK, RCC_BDCR_RTCSEL_LSE);
/* Enable RTC and wait for RSF */

View File

@ -83,7 +83,7 @@
# error "This chip is not yet supported"
#endif
/* TODO: At the moment there is no implementation
/* TODO: At the moment there is no implementation
for timer and external triggers */
#if defined(SDADC_HAVE_TIMER)
@ -641,7 +641,7 @@ static void sdadc_rccreset(FAR struct stm32_dev_s *priv, bool reset)
*
****************************************************************************/
#if 0
#if 0
static void sdadc_power_down_idle(FAR struct stm32_dev_s *priv, bool pdi_high)
{
uint32_t regval;
@ -785,7 +785,7 @@ static int sdadc_bind(FAR struct adc_dev_s *dev,
* sdadc_register()
* Does mostly the SDAC register setting.
* Leave the device in power down mode.
* Note that SDACx clock is already enable (for all SDADC) by the
* Note that SDACx clock is already enable (for all SDADC) by the
* rcc_enableapb2()
*
* Input Parameters:
@ -867,7 +867,7 @@ static void sdadc_reset(FAR struct adc_dev_s *dev)
/* TODO: JEXTEN / JEXTSEL */
/* Number of calibrations is for 3 configurations */
setbits |= (2 << SDADC_CR2_CALIBCNT_SHIFT);
/* Set CR2 configuration */
@ -929,10 +929,10 @@ static void sdadc_reset(FAR struct adc_dev_s *dev)
*
* Description:
* Configure the ADC. This method is called the first time that the SDADC
* device is opened.
* device is opened.
* This is called by the upper half driver sdadc_open().
* This will occur when the port is first
* opened in the application code (/dev/sdadcN).
* opened in the application code (/dev/sdadcN).
* It would be called again after closing all references to this file and
* reopening it.
* This function wakes up the device and setup the DMA / IRQ
@ -1008,7 +1008,7 @@ static int sdadc_setup(FAR struct adc_dev_s *dev)
* Name: sdadc_shutdown
*
* Description:
* Disable the ADC. This method is called when the last instance
* Disable the ADC. This method is called when the last instance
* of the SDADC device is closed by the user application.
* This method reverses the operation the setup method.
*
@ -1085,12 +1085,12 @@ static void sdadc_rxint(FAR struct adc_dev_s *dev, bool enable)
}
else
{
/* Interrupt enable for injected channel group overrun
/* Interrupt enable for injected channel group overrun
and end of conversion */
setbits = SDADC_CR1_JOVRIE | SDADC_CR1_JEOCIE;
setbits = SDADC_CR1_JOVRIE | SDADC_CR1_JEOCIE;
}
#else
setbits = SDADC_CR1_JOVRIE | SDADC_CR1_JEOCIE;
setbits = SDADC_CR1_JOVRIE | SDADC_CR1_JEOCIE;
#endif
if (enable)
@ -1273,7 +1273,7 @@ static int sdadc_interrupt(int irq, FAR void *context, FAR void *arg)
}
/* do no clear this interrupt (cleared by reading data) */
pending &= ~SDADC_ISR_JEOCF;
}
@ -1300,14 +1300,14 @@ static int sdadc_interrupt(int irq, FAR void *context, FAR void *arg)
* The logic is, save and initialize the channel list in the private driver
* structure and return the corresponding adc device structure.
*
* Each SDADC will convert the channels indicated each
* Each SDADC will convert the channels indicated each
* time a conversion is triggered either by sofware, timer or external event.
* Channels are numbered from 0 - 8 and must be given in order (contrarily
* to what says ST RM0313 doc !!!).
*
* Input Parameters:
* intf - Could be {1,2,3} for SDADC1, SDADC2, or SDADC3
* chanlist - The list of channels eg. { 0, 3, 7, 8 }
* chanlist - The list of channels eg. { 0, 3, 7, 8 }
* cchannels - Number of channels
*
* Returned Value:
@ -1350,7 +1350,7 @@ struct adc_dev_s *stm32_sdadcinitialize(int intf, FAR const uint8_t *chanlist,
}
/* Check channel list in order */
DEBUGASSERT((cchannels <= SDADC_MAX_SAMPLES) && (cchannels > 0));
for (i = 0; i < cchannels - 1; i ++)
{

View File

@ -114,8 +114,8 @@
/* SDADC Channels/DMA ******************************************************
* The maximum number of channels that can be sampled at each scan.
* If DMA support is not enabled, then only a single channel
* ought to be sampled.
* If DMA support is not enabled, then only a single channel
* ought to be sampled.
* Otherwise, unless sampling frequency is reduced,
* data overruns would occur.
*/

View File

@ -248,7 +248,7 @@ static int stm32_tickless_setchannel(uint8_t channel)
*/
ccmr_val = (ATIM_CCMR_MODE_FRZN << ATIM_CCMR1_OC1M_SHIFT);
/* Set polarity */
ccer_val |= ATIM_CCER_CC1P << (channel << 2);
@ -913,7 +913,7 @@ int up_timer_start(FAR const struct timespec *ts)
*/
g_tickless.period = (uint16_t)(period + count);
STM32_TIM_SETCOMPARE(g_tickless.tch, g_tickless.channel,
g_tickless.period);

View File

@ -598,7 +598,7 @@ static void stm32_stdclockconfig(void)
#endif
#if defined(CONFIG_RTC_LSECLOCK)
/* Low speed external clock source LSE
/* Low speed external clock source LSE
*
* TODO: There is another case where the LSE needs to
* be enabled: if the MCO pin selects LSE as source.

View File

@ -176,7 +176,7 @@ void stm32f0_disable_hsi48(void)
regval = getreg32(STM32F0_CRS_CFGR);
regval &= ~CRS_CFGR_SYNCSRC_MASK;
putreg32(regval, STM32F0_CRS_CFGR);
regval = getreg32(STM32F0_CRS_CR);
regval &= ~CRS_CR_AUTOTRIMEN;
putreg32(regval, STM32F0_CRS_CR);

View File

@ -53,7 +53,7 @@ enum syncsrc_e
{
SYNCSRC_GPIO = 0, /* GPIO selected as SYNC signal source */
SYNCSRC_LSE, /* LSE selected as SYNC signal source */
SYNCSRC_USB, /* USB SOF selected as SYNC signal source */
SYNCSRC_USB, /* USB SOF selected as SYNC signal source */
};
/************************************************************************************

View File

@ -210,6 +210,6 @@
*/
#define STM32_DEBUGMCU_BASE 0xe0042000
#endif /* CONFIG_STM32F7_STM32F74XX || CONFIG_STM32F7_STM32F75XX */
#endif /* __ARCH_ARM_SRC_STM32F7_CHIP_STM32F74XXX75XXX_MEMORYMAP_H */

View File

@ -678,7 +678,7 @@
#define ATIM_CCMR3_OC6CE (1 << 15) /* Bit 15: Output Compare 7 Clear Enable */
#define ATIM_CCMR3_OC5M (1 << 16) /* Bit 16: Output Compare 5 mode - bit 3 */
#define ATIM_CCMR3_OC6M (1 << 24) /* Bit 24: Output Compare 6 mode - bit 3 */
/* Capture/compare enable register */

View File

@ -216,6 +216,6 @@
*/
#define STM32_DEBUGMCU_BASE 0xe0042000
#endif /* CONFIG_STM32F7_STM32F74XX || CONFIG_STM32F7_STM32F75XX */
#endif /* __ARCH_ARM_SRC_STM32F7_CHIP_STM32F74XXX75XXX_MEMORYMAP_H */

View File

@ -2886,7 +2886,7 @@ static int stm32_dmarecvsetup(FAR struct sdio_dev_s *dev, FAR uint8_t *buffer,
/* Configure the RX DMA */
stm32_configxfrints(priv, STM32_SDMMC_DMARECV_MASK);
sdmmc_modifyreg32(priv, STM32_SDMMC_DCTRL_OFFSET, 0, STM32_SDMMC_DCTRL_DMAEN);
stm32_dmasetup(priv->dma, priv->base + STM32_SDMMC_FIFO_OFFSET,
(uint32_t)buffer, (buflen + 3) >> 2,
@ -3312,7 +3312,7 @@ void sdio_wrprotect(FAR struct sdio_dev_s *dev, bool wrprotect)
{
priv->cdstatus &= ~SDIO_STATUS_WRPROTECTED;
}
mcinfo("cdstatus: %02x\n", priv->cdstatus);
leave_critical_section(flags);
}

View File

@ -651,7 +651,7 @@
#define ATIM_CCMR3_OC6M_MASK (7 << ATIM_CCMR3_OC6M_SHIFT)
/* (See common (unshifted) bit field definitions below) */
#define ATIM_CCMR3_OC6CE (1 << 15) /* Bit 15: Output Compare 7 Clear Enable */
#define ATIM_CCMR3_OC5M (1 << 16) /* Bit 16: Output Compare 5 mode - bit 3 */
#define ATIM_CCMR3_OC6M (1 << 24) /* Bit 24: Output Compare 6 mode - bit 3 */

View File

@ -62,7 +62,7 @@
# undef CONFIG_STM32L4_CAN1
#endif
#if defined(CONFIG_CAN) && defined(CONFIG_STM32L4_CAN1)
#if defined(CONFIG_CAN) && defined(CONFIG_STM32L4_CAN1)
/* CAN BAUD */

View File

@ -238,7 +238,7 @@ int stm32l4_oneshot_initialize(FAR struct stm32l4_oneshot_s *oneshot,
*
****************************************************************************/
int stm32l4_oneshot_max_delay(FAR struct stm32l4_oneshot_s *oneshot,
int stm32l4_oneshot_max_delay(FAR struct stm32l4_oneshot_s *oneshot,
FAR uint64_t *usec)
{
DEBUGASSERT(oneshot != NULL && usec != NULL);

View File

@ -643,7 +643,7 @@ static uint16_t stm32l4pwm_getreg(struct stm32l4_pwmtimer_s *priv, int offset)
*
****************************************************************************/
static void stm32l4pwm_putreg(struct stm32l4_pwmtimer_s *priv, int offset,
static void stm32l4pwm_putreg(struct stm32l4_pwmtimer_s *priv, int offset,
uint16_t value)
{
if (priv->timtype == TIMTYPE_GENERAL32 &&
@ -2027,7 +2027,7 @@ static int stm32l4pwm_stop(FAR struct pwm_lowerhalf_s *dev)
*
****************************************************************************/
static int stm32l4pwm_ioctl(FAR struct pwm_lowerhalf_s *dev, int cmd,
static int stm32l4pwm_ioctl(FAR struct pwm_lowerhalf_s *dev, int cmd,
unsigned long arg)
{
#ifdef CONFIG_DEBUG_PWM_INFO

View File

@ -81,7 +81,7 @@ static inline void stm32l4_pwr_modifyreg(uint8_t offset, uint16_t clearbits, uin
* Enable/disable the clock to the power control peripheral. Enabling must be done
* after the APB1 clock is validly configured, and prior to using any functionality
* controlled by the PWR block (i.e. much of anything else provided by this module).
*
*
* Input Parameters:
* enable - True: enable the clock to the Power control (PWR) block.
*
@ -94,7 +94,7 @@ bool stm32l4_pwr_enableclk(bool enable)
{
uint32_t regval;
bool wasenabled;
regval = getreg32(STM32L4_RCC_APB1ENR1);
wasenabled = ((regval & RCC_APB1ENR1_PWREN) != 0);
@ -114,7 +114,7 @@ bool stm32l4_pwr_enableclk(bool enable)
regval |= RCC_APB1ENR1_PWREN;
putreg32(regval, STM32L4_RCC_APB1ENR1);
}
return wasenabled;
}

View File

@ -73,7 +73,7 @@ extern "C"
* Enable/disable the clock to the power control peripheral. Enabling must be done
* after the APB1 clock is validly configured, and prior to using any functionality
* controlled by the PWR block (i.e. much of anything else provided by this module).
*
*
* Input Parameters:
* enable - True: enable the clock to the Power control (PWR) block.
*

View File

@ -240,7 +240,7 @@ struct qspi_xctnspec_s
uint8_t isddr; /* true if 'double data rate' */
uint8_t issioo; /* true if 'send instruction only once' mode */
#ifdef STM32L4_QSPI_INTERRUPTS
uint8_t function; /* functional mode; to distinguish a read or write */
int8_t disposition; /* how it all turned out */
@ -1059,8 +1059,8 @@ static void qspi_ccrconfig(struct stm32l4_qspidev_s *priv,
* automatic status polling, etc.
*
* Input Parameters:
* irq -
* context -
* irq -
* context -
*
* Returned Value:
* OK means we handled it
@ -1072,21 +1072,21 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
uint32_t status;
uint32_t cr;
uint32_t regval;
/* Let's find out what is going on */
status = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_SR_OFFSET);
cr = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_CR_OFFSET);
/* Is it 'FIFO Threshold'? */
if ((status & QSPI_SR_FTF) && (cr & QSPI_CR_FTIE))
{
volatile uint32_t *datareg = (volatile uint32_t*)(g_qspi0dev.base + STM32L4_QUADSPI_DR_OFFSET);
if (g_qspi0dev.xctn->function == CCR_FMODE_INDWR)
{
/* Write data until we have no more or have no place to put it */
while((regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_SR_OFFSET)) & QSPI_SR_FTF)
{
if (g_qspi0dev.xctn->idxnow < g_qspi0dev.xctn->datasize)
@ -1097,7 +1097,7 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
else
{
/* Fresh out of data to write */
break;
}
}
@ -1105,7 +1105,7 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
else if (g_qspi0dev.xctn->function == CCR_FMODE_INDRD)
{
/* Read data until we have no more or have no place to put it */
while((regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_SR_OFFSET)) & QSPI_SR_FTF)
{
if (g_qspi0dev.xctn->idxnow < g_qspi0dev.xctn->datasize)
@ -1116,7 +1116,7 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
else
{
/* no room at the inn */
break;
}
}
@ -1124,27 +1124,27 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
}
/* Is it 'Transfer Complete'? */
if ((status & QSPI_SR_TCF) && (cr & QSPI_CR_TCIE))
{
/* Acknowledge interrupt */
qspi_putreg(&g_qspi0dev, QSPI_FCR_CTCF, STM32L4_QUADSPI_FCR);
/* Disable the QSPI FIFO Threshold, Transfer Error and Transfer complete Interrupts */
regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_CR_OFFSET);
regval &= ~(QSPI_CR_TEIE | QSPI_CR_TCIE | QSPI_CR_FTIE);
qspi_putreg(&g_qspi0dev, regval, STM32L4_QUADSPI_CR_OFFSET);
/* Do the last bit of read if needed */
if (g_qspi0dev.xctn->function == CCR_FMODE_INDRD)
{
volatile uint32_t *datareg = (volatile uint32_t*)(g_qspi0dev.base + STM32L4_QUADSPI_DR_OFFSET);
/* Read any remaining data */
while(((regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_SR_OFFSET)) & QSPI_SR_FLEVEL_MASK) != 0)
{
if (g_qspi0dev.xctn->idxnow < g_qspi0dev.xctn->datasize)
@ -1162,42 +1162,42 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
}
/* Use 'abort' to ditch any stray fifo contents and clear BUSY flag */
qspi_abort(&g_qspi0dev);
/* Set success status */
g_qspi0dev.xctn->disposition = OK;
/* Signal complete */
sem_post(&g_qspi0dev.op_sem);
}
/* Is it 'Status Match'? */
if ((status & QSPI_SR_SMF) && (cr & QSPI_CR_SMIE))
{
/* Acknowledge interrupt */
qspi_putreg(&g_qspi0dev, QSPI_FCR_CSMF, STM32L4_QUADSPI_FCR);
/* If 'automatic poll mode stop' is activated, we're done */
if (cr & QSPI_CR_APMS)
{
/* Disable the QSPI Transfer Error and Status Match Interrupts */
regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_CR_OFFSET);
regval &= ~(QSPI_CR_TEIE | QSPI_CR_SMIE);
qspi_putreg(&g_qspi0dev, regval, STM32L4_QUADSPI_CR_OFFSET);
/* Set success status */
g_qspi0dev.xctn->disposition = OK;
/* Signal complete */
sem_post(&g_qspi0dev.op_sem);
}
else
@ -1207,15 +1207,15 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
}
/* Is it' Transfer Error'? :( */
if ((status & QSPI_SR_TEF) && (cr & QSPI_CR_TEIE))
{
/* Acknowledge interrupt */
qspi_putreg(&g_qspi0dev, QSPI_FCR_CTEF, STM32L4_QUADSPI_FCR);
/* Disable all the QSPI Interrupts */
regval = qspi_getreg(&g_qspi0dev, STM32L4_QUADSPI_CR_OFFSET);
regval &= ~(QSPI_CR_TEIE | QSPI_CR_TCIE | QSPI_CR_FTIE | QSPI_CR_SMIE | QSPI_CR_TOIE);
qspi_putreg(&g_qspi0dev, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -1225,22 +1225,22 @@ static int qspi0_interrupt(int irq, void *context, FAR void *arg)
* presumably relative to the FSIZE field in CCR; the manual is not
* explicit, but what else could it be?
*/
g_qspi0dev.xctn->disposition = - EIO;
/* Signal complete */
sem_post(&g_qspi0dev.op_sem);
}
/* Is it 'Timeout'? */
if ((status & QSPI_SR_TOF) && (cr & QSPI_CR_TOIE))
{
/* Acknowledge interrupt */
qspi_putreg(&g_qspi0dev, QSPI_FCR_CTOF, STM32L4_QUADSPI_FCR);
/* XXX this interrupt simply means that, in 'memory mapped mode',
* the QSPI memory has not been accessed for a while, and the
* IP block was configured to automatically de-assert CS after
@ -1400,7 +1400,7 @@ static int qspi_memory_dma(struct stm32l4_qspidev_s *priv,
if (QSPIMEM_ISWRITE(meminfo->flags))
{
/* Setup the DMA (memory-to-peripheral) */
dmaflags = (QSPI_DMA_PRIO | DMA_CCR_MSIZE_8BITS | DMA_CCR_PSIZE_8BITS | DMA_CCR_MINC | DMA_CCR_DIR);
}
else
@ -1409,7 +1409,7 @@ static int qspi_memory_dma(struct stm32l4_qspidev_s *priv,
dmaflags = (QSPI_DMA_PRIO | DMA_CCR_MSIZE_8BITS | DMA_CCR_PSIZE_8BITS | DMA_CCR_MINC );
}
stm32l4_dmasetup(priv->dmach, qspi_regaddr(priv, STM32L4_QUADSPI_DR_OFFSET),
(uint32_t)meminfo->buffer, meminfo->buflen, dmaflags);
@ -1825,7 +1825,7 @@ static void qspi_setmode(struct qspi_dev_s *dev, enum qspi_mode_e mode)
*/
return;
}
spiinfo("mode=%d\n", mode);
/* Has the mode changed? */
@ -1924,12 +1924,12 @@ static int qspi_command(struct qspi_dev_s *dev,
* automatically cancel the memory mapping. You must exit the
* memory mapped mode first.
*/
if (priv->memmap)
{
return -EBUSY;
}
/* Set up the transaction descriptor as per command info */
ret = qspi_setupxctnfromcmd(&xctn, cmdinfo);
@ -1953,7 +1953,7 @@ static int qspi_command(struct qspi_dev_s *dev,
#ifdef STM32L4_QSPI_INTERRUPTS
/* interrupt mode will need access to the transaction context */
priv->xctn = &xctn;
if (QSPICMD_ISDATA(cmdinfo->flags))
@ -1964,7 +1964,7 @@ static int qspi_command(struct qspi_dev_s *dev,
if (QSPICMD_ISWRITE(cmdinfo->flags))
{
uint32_t regval;
/* Set up the Communications Configuration Register as per command
* info
*/
@ -1974,7 +1974,7 @@ static int qspi_command(struct qspi_dev_s *dev,
/* Enable 'Transfer Error' 'FIFO Threshhold' and 'Transfer Complete'
* interrupts.
*/
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TEIE | QSPI_CR_FTIE | QSPI_CR_TCIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -1983,9 +1983,9 @@ static int qspi_command(struct qspi_dev_s *dev,
{
uint32_t regval;
uint32_t addrval;
addrval = qspi_getreg(priv, STM32L4_QUADSPI_AR_OFFSET);
/* Set up the Communications Configuration Register as per command
* info
*/
@ -1993,13 +1993,13 @@ static int qspi_command(struct qspi_dev_s *dev,
qspi_ccrconfig(priv, &xctn, CCR_FMODE_INDRD);
/* Start the transfer by re-writing the address in AR register */
qspi_putreg(priv, addrval, STM32L4_QUADSPI_AR_OFFSET);
/* Enable 'Transfer Error' 'FIFO Threshhold' and 'Transfer Complete'
* interrupts
*/
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TEIE | QSPI_CR_FTIE | QSPI_CR_TCIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -2008,13 +2008,13 @@ static int qspi_command(struct qspi_dev_s *dev,
else
{
uint32_t regval;
/* We have no data phase, the command will execute as soon as we emit
* the CCR
*/
/* Enable 'Transfer Error' and 'Transfer Complete' interrupts */
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TEIE | QSPI_CR_TCIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -2025,14 +2025,14 @@ static int qspi_command(struct qspi_dev_s *dev,
qspi_ccrconfig(priv, &xctn, CCR_FMODE_INDRD);
}
/* Wait for the interrupt routine to finish it's magic */
sem_wait(&priv->op_sem);
MEMORY_SYNC();
/* Convey the result */
ret = xctn.disposition;
/* because command transfers are so small, we're not going to use
@ -2073,7 +2073,7 @@ static int qspi_command(struct qspi_dev_s *dev,
qspi_waitstatusflags(priv, QSPI_SR_TCF,1);
qspi_waitstatusflags(priv, QSPI_SR_BUSY,0);
#endif
return ret;
@ -2105,12 +2105,12 @@ static int qspi_memory(struct qspi_dev_s *dev,
* automatically cancel the memory mapping. You must exit the
* memory mapped mode first.
*/
if (priv->memmap)
{
return -EBUSY;
}
/* Set up the transaction descriptor as per command info */
ret = qspi_setupxctnfrommem(&xctn, meminfo);
@ -2134,7 +2134,7 @@ static int qspi_memory(struct qspi_dev_s *dev,
#ifdef STM32L4_QSPI_INTERRUPTS
/* interrupt mode will need access to the transaction context */
priv->xctn = &xctn;
DEBUGASSERT(meminfo->buffer != NULL && meminfo->buflen > 0);
@ -2143,7 +2143,7 @@ static int qspi_memory(struct qspi_dev_s *dev,
if (QSPIMEM_ISWRITE(meminfo->flags))
{
uint32_t regval;
/* Set up the Communications Configuration Register as per command
* info
*/
@ -2153,7 +2153,7 @@ static int qspi_memory(struct qspi_dev_s *dev,
/* Enable 'Transfer Error' 'FIFO Threshhold' and 'Transfer Complete'
* interrupts
*/
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TEIE | QSPI_CR_FTIE | QSPI_CR_TCIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -2162,9 +2162,9 @@ static int qspi_memory(struct qspi_dev_s *dev,
{
uint32_t regval;
uint32_t addrval;
addrval = qspi_getreg(priv, STM32L4_QUADSPI_AR_OFFSET);
/* Set up the Communications Configuration Register as per command
* info
*/
@ -2172,25 +2172,25 @@ static int qspi_memory(struct qspi_dev_s *dev,
qspi_ccrconfig(priv, &xctn, CCR_FMODE_INDRD);
/* Start the transfer by re-writing the address in AR register */
qspi_putreg(priv, addrval, STM32L4_QUADSPI_AR_OFFSET);
/* Enable 'Transfer Error' 'FIFO Threshhold' and 'Transfer Complete'
* interrupts
*/
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TEIE | QSPI_CR_FTIE | QSPI_CR_TCIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
}
/* Wait for the interrupt routine to finish it's magic */
sem_wait(&priv->op_sem);
MEMORY_SYNC();
/* convey the result */
ret = xctn.disposition;
#elif defined(CONFIG_STM32L4_QSPI_DMA)
@ -2230,7 +2230,7 @@ static int qspi_memory(struct qspi_dev_s *dev,
qspi_waitstatusflags(priv, QSPI_SR_TCF,1);
qspi_waitstatusflags(priv, QSPI_SR_BUSY,0);
MEMORY_SYNC();
}
@ -2260,7 +2260,7 @@ static int qspi_memory(struct qspi_dev_s *dev,
qspi_waitstatusflags(priv, QSPI_SR_TCF,1);
qspi_waitstatusflags(priv, QSPI_SR_BUSY,0);
MEMORY_SYNC();
#endif
@ -2607,17 +2607,17 @@ void stm32l4_qspi_enter_memorymapped(struct qspi_dev_s* dev,
struct qspi_xctnspec_s xctn;
/* lock during this mode change */
qspi_lock(dev, true);
if (priv->memmap)
{
qspi_lock(dev, false);
return;
}
/* Abort anything in-progress */
qspi_abort(priv);
/* Wait till BUSY flag reset */
@ -2625,22 +2625,22 @@ void stm32l4_qspi_enter_memorymapped(struct qspi_dev_s* dev,
qspi_waitstatusflags(priv, QSPI_SR_BUSY, 0);
/* if we want the 'low-power timeout counter' */
if (lpto > 0)
{
/* Set the Low Power Timeout value (automatically de-assert
* CS if memory is not accessed for a while)
*/
qspi_putreg(priv, lpto, STM32L4_QUADSPI_LPTR_OFFSET);
/* Clear Timeout interrupt */
qspi_putreg(&g_qspi0dev, QSPI_FCR_CTOF, STM32L4_QUADSPI_FCR);
#ifdef STM32L4_QSPI_INTERRUPTS
/* Enable Timeout interrupt */
regval = qspi_getreg(priv, STM32L4_QUADSPI_CR_OFFSET);
regval |= (QSPI_CR_TCEN | QSPI_CR_TOIE);
qspi_putreg(priv, regval, STM32L4_QUADSPI_CR_OFFSET);
@ -2654,24 +2654,24 @@ void stm32l4_qspi_enter_memorymapped(struct qspi_dev_s* dev,
}
/* create a transaction object */
qspi_setupxctnfrommem(&xctn, meminfo);
#ifdef STM32L4_QSPI_INTERRUPTS
priv->xctn = NULL;
#endif
/* set it into the ccr */
qspi_ccrconfig(priv, &xctn, CCR_FMODE_MEMMAP);
priv->memmap = true;
/* we should be in memory mapped mode now */
qspi_dumpregs(priv, "After memory mapped:");
/* finished this mode change */
qspi_lock(dev, false);
}
@ -2692,14 +2692,14 @@ void stm32l4_qspi_enter_memorymapped(struct qspi_dev_s* dev,
void stm32l4_qspi_exit_memorymapped(struct qspi_dev_s* dev)
{
struct stm32l4_qspidev_s *priv = (struct stm32l4_qspidev_s *)dev;
qspi_lock(dev, true);
/* A simple abort is sufficient */
qspi_abort(priv);
priv->memmap = false;
qspi_lock(dev, false);
}

View File

@ -9,7 +9,7 @@
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the

View File

@ -299,7 +299,7 @@ void __start(void)
* under application-specific circumstances. On the other hand, if we're
* using this memory for, say, additional heap space, then this is handy.
*/
for (dest = (uint32_t *)SRAM2_START; dest < (uint32_t *)SRAM2_END; )
{
*dest++ = 0;

View File

@ -230,7 +230,7 @@ struct stm32l4_tim_priv_s
static inline uint16_t stm32l4_getreg16(FAR struct stm32l4_tim_dev_s *dev,
uint8_t offset);
static inline void stm32l4_putreg16(FAR struct stm32l4_tim_dev_s *dev,
static inline void stm32l4_putreg16(FAR struct stm32l4_tim_dev_s *dev,
uint8_t offset, uint16_t value);
static inline void stm32l4_modifyreg16(FAR struct stm32l4_tim_dev_s *dev,
uint8_t offset, uint16_t clearbits,
@ -261,9 +261,9 @@ static int stm32l4_tim_setclock(FAR struct stm32l4_tim_dev_s *dev,
static void stm32l4_tim_setperiod(FAR struct stm32l4_tim_dev_s *dev,
uint32_t period);
static uint32_t stm32l4_tim_getcounter(FAR struct stm32l4_tim_dev_s *dev);
static int stm32l4_tim_setchannel(FAR struct stm32l4_tim_dev_s *dev,
static int stm32l4_tim_setchannel(FAR struct stm32l4_tim_dev_s *dev,
uint8_t channel, stm32l4_tim_channel_t mode);
static int stm32l4_tim_setcompare(FAR struct stm32l4_tim_dev_s *dev,
static int stm32l4_tim_setcompare(FAR struct stm32l4_tim_dev_s *dev,
uint8_t channel, uint32_t compare);
static int stm32l4_tim_getcapture(FAR struct stm32l4_tim_dev_s *dev,
uint8_t channel);

View File

@ -476,7 +476,7 @@ void stm32l4_dmasetup(DMA_HANDLE handle, uint32_t paddr, uint32_t maddr,
DEBUGASSERT(handle != NULL);
DEBUGASSERT(ntransfers<65536);
/* Then DMA_CNDTRx register can only be modified if the DMA channel is
* disabled.
*/

View File

@ -1040,13 +1040,13 @@
/* I2C Peripheral Properties */
#if defined(CONFIG_ARCH_CHIP_TM4C)
# define I2CSC_PP_HS (1 << 0) /* Bit 0: High-Speed Capable */
# define I2CSC_PP_HS (1 << 0) /* Bit 0: High-Speed Capable */
#endif
/* I2C Peripheral Configuration */
#if defined(CONFIG_ARCH_CHIP_TM4C)
# define I2CSC_PC_HS (1 << 0) /* Bit 0: High-Speed Capable */
# define I2CSC_PC_HS (1 << 0) /* Bit 0: High-Speed Capable */
#endif
/************************************************************************************

View File

@ -6,7 +6,7 @@
* Copyright (C) 2012, 2014 Max Nekludov. All rights reserved.
* Author: Max Nekludov <macscomp@gmail.com>
*
* Ongoing support and major revision to support the TM4C129 family
* Ongoing support and major revision to support the TM4C129 family
* (essentially a full file replacement):
*
* Copyright (C) 2015 Gregory Nutt. All rights reserved.

View File

@ -3587,7 +3587,7 @@ static inline void tiva_phy_initialize(FAR struct tiva_ethmac_s *priv)
/* Enable pulse-per-second (PPS) output signal */
tiva_configgpio(GPIO_EN0_PPS);
#endif
#endif
}
/****************************************************************************

View File

@ -432,7 +432,7 @@ static void tms570_clocksrc_configure(void)
/* Work Around for Errata SYS#46: Errata Description: Clock Source
* Switching Not Qualified with Clock Source Enable And Clock Source Valid
* Workaround: Always check the CSDIS register to make sure the clock source
* is turned on and check the CSVSTAT register to make sure the clock source
* is turned on and check the CSVSTAT register to make sure the clock source
* is valid. Then write to GHVSRC to switch the clock.
*/

View File

@ -121,7 +121,7 @@ int tms570_esm_initialize(void)
putreg32(0xffffffff, TMS570_ESM_ILCR4);
/* Set interrupt level (Writing zero does nothing) */
putreg32(0, TMS570_ESM_ILSR1);
putreg32(0, TMS570_ESM_ILSR4);

View File

@ -364,7 +364,7 @@ int xmc4_uart_configure(enum usic_channel_e channel,
* - DPTR = 16
* - LIMIT = 1
* - STBTEN = 0, the trigger of the standard transmit buffer event is
* based on the transition of the fill level from equal to below the
* based on the transition of the fill level from equal to below the
* limit, not the fact being below
* - SIZE = 16
* - LOF = 0, A standard transmit buffer event occurs when the filling

View File

@ -119,7 +119,7 @@ struct xcptcontext
uint8_t saved_pc0;
# if defined(REG_PC2)
uint8_t saved_pc2;
# endif
# endif
uint8_t saved_sreg;
#endif

View File

@ -40,7 +40,7 @@
#include <nuttx/config.h>
#include <arch/irq.h>
#include "excptmacros.h"
/************************************************************************************

View File

@ -134,7 +134,7 @@
#ifdef __cplusplus
#define EXTERN extern "C"
extern "C"
extern "C"
{
#else
#define EXTERN extern

View File

@ -373,7 +373,7 @@
#define IC3R_RPC14 7
#define IC3R_RPD2 0
#define IC3R_RPD6 14
#define IC3R_RPD10 3
#define IC3R_RPD10 3
#define IC3R_RPD14 11
#define IC3R_RPF1 4
#define IC3R_RPF4 2
@ -430,7 +430,7 @@
#define IC7R_RPC14 7
#define IC7R_RPD2 0
#define IC7R_RPD6 14
#define IC7R_RPD10 3
#define IC7R_RPD10 3
#define IC7R_RPD14 11
#define IC7R_RPF1 4
#define IC7R_RPF4 2
@ -501,7 +501,7 @@
#define INT3R_RPC14 7
#define INT3R_RPD2 0
#define INT3R_RPD6 14
#define INT3R_RPD10 3
#define INT3R_RPD10 3
#define INT3R_RPD14 11
#define INT3R_RPF1 4
#define INT3R_RPF4 2
@ -544,7 +544,7 @@
#define REFCLKI1R_RPC14 7
#define REFCLKI1R_RPD2 0
#define REFCLKI1R_RPD6 14
#define REFCLKI1R_RPD10 3
#define REFCLKI1R_RPD10 3
#define REFCLKI1R_RPD14 11
#define REFCLKI1R_RPF1 4
#define REFCLKI1R_RPF4 2
@ -587,7 +587,7 @@
#define SDI1R_RPC14 7
#define SDI1R_RPD2 0
#define SDI1R_RPD6 14
#define SDI1R_RPD10 3
#define SDI1R_RPD10 3
#define SDI1R_RPD14 11
#define SDI1R_RPF1 4
#define SDI1R_RPF4 2
@ -616,7 +616,7 @@
#define SDI3R_RPC1 10
#define SDI3R_RPC14 7
#define SDI3R_RPD2 0
#define SDI3R_RPD10 3
#define SDI3R_RPD10 3
#define SDI3R_RPD14 11
#define SDI3R_RPD6 14
#define SDI3R_RPF1 4
@ -647,7 +647,7 @@
#define SDI5R_RPC14 7
#define SDI5R_RPD2 0
#define SDI5R_RPD6 14
#define SDI5R_RPD10 3
#define SDI5R_RPD10 3
#define SDI5R_RPD14 11
#define SDI5R_RPF1 4
#define SDI5R_RPF4 2
@ -744,7 +744,7 @@
#define SS6R_RPC14 7
#define SS6R_RPD2 0
#define SS6R_RPD6 14
#define SS6R_RPD10 3
#define SS6R_RPD10 3
#define SS6R_RPD14 11
#define SS6R_RPF1 4
#define SS6R_RPF4 2
@ -759,7 +759,7 @@
#define T2CKR_RPC14 7
#define T2CKR_RPD2 0
#define T2CKR_RPD6 14
#define T2CKR_RPD10 3
#define T2CKR_RPD10 3
#define T2CKR_RPD14 11
#define T2CKR_RPF1 4
#define T2CKR_RPF4 2
@ -816,7 +816,7 @@
#define T6CKR_RPC14 7
#define T6CKR_RPD2 0
#define T6CKR_RPD6 14
#define T6CKR_RPD10 3
#define T6CKR_RPD10 3
#define T6CKR_RPD14 11
#define T6CKR_RPF1 4
#define T6CKR_RPF4 2
@ -887,7 +887,7 @@
#define U1RXR_RPC14 7
#define U1RXR_RPD2 0
#define U1RXR_RPD6 14
#define U1RXR_RPD10 3
#define U1RXR_RPD10 3
#define U1RXR_RPD14 11
#define U1RXR_RPF1 4
#define U1RXR_RPF4 2
@ -902,7 +902,7 @@
#define U2CTSR_RPC14 7
#define U2CTSR_RPD2 0
#define U2CTSR_RPD6 14
#define U2CTSR_RPD10 3
#define U2CTSR_RPD10 3
#define U2CTSR_RPD14 11
#define U2CTSR_RPF1 4
#define U2CTSR_RPF4 2
@ -1001,7 +1001,7 @@
#define U5RXR_RPC14 7
#define U5RXR_RPD2 0
#define U5RXR_RPD6 14
#define U5RXR_RPD10 3
#define U5RXR_RPD10 3
#define U5RXR_RPD14 11
#define U5RXR_RPF1 4
#define U5RXR_RPF4 2
@ -1016,7 +1016,7 @@
#define U6CTSR_RPC14 7
#define U6CTSR_RPD2 0
#define U6CTSR_RPD6 14
#define U6CTSR_RPD10 3
#define U6CTSR_RPD10 3
#define U6CTSR_RPD14 11
#define U6CTSR_RPF1 4
#define U6CTSR_RPF4 2

View File

@ -78,7 +78,7 @@ static inline void irq_setmask(unsigned int mask)
static inline unsigned int irq_pending(void)
{
unsigned int pending;
__asm__ __volatile__("rcsr %0, IP" : "=r" (pending));
return pending;

View File

@ -65,9 +65,9 @@
static inline uint32_t up_getsp(void)
{
register uint32_t sp;
__asm__ __volatile__("addi %0, sp, 0" : "=r" (sp));
return sp;
}

View File

@ -136,7 +136,7 @@ int lm32_swint(int irq, FAR void *context, FAR void *arg)
DEBUGASSERT(g_current_regs == NULL);
g_current_regs = regs;
/* Software interrupt 0 is invoked with REG_A0 (REG_X10) = system call
* command and REG_A1-6 = variable number of
* arguments depending on the system call.

View File

@ -57,7 +57,7 @@
/* Macros to get the core and vendor ID, HART, arch and ISA codes, etc.
*/
#ifdef CONFIG_RV32IM_SYSTEM_CSRRS_SUPPORT
#ifdef CONFIG_RV32IM_SYSTEM_CSRRS_SUPPORT
uint32_t up_getmisa(void);
uint32_t up_getarchid(void);
@ -91,7 +91,7 @@ uint32_t up_gethartid(void);
* Public Function Prototypes
****************************************************************************/
#ifdef CONFIG_RV32IM_HW_MULDIV
#ifdef CONFIG_RV32IM_HW_MULDIV
uint32_t up_hard_mul(uint32_t a, uint32_t b);
uint32_t up_hard_mulh(uint32_t a, uint32_t b);
uint32_t up_hard_mulhsu(uint32_t a, uint32_t b);

View File

@ -42,7 +42,7 @@ ifeq ($(CONFIG_ARCH_RV32I),y) # Base Integer support
ARCH_SUBDIR = rv32i
else ifeq ($(CONFIG_ARCH_RV32IM),y) # Integer + math support
ARCH_SUBDIR = rv32im
else
else
ARCH_SUBDIR = rv32i # Default to base RV32I core
endif
@ -152,7 +152,7 @@ VPATH += $(CHIP_DIR)
all: $(HEAD_OBJ) $(BIN)
.PHONY: board/libboard$(LIBEXT)
.PHONY: board/libboard$(LIBEXT)
$(AOBJS) $(UAOBJS) $(HEAD_OBJ): %$(OBJEXT): %.S
$(call ASSEMBLE, $<, $@)
@ -162,7 +162,7 @@ $(COBJS) $(UCOBJS): %$(OBJEXT): %.c
$(BIN) $(KBIN): $(OBJS)
$(call ARCHIVE, $@, $(OBJS))
@$(MAKE) depend
@$(MAKE) depend
$(UBIN): $(UOBJS)
$(call ARCHIVE, $@, $(UOBJS))

View File

@ -45,7 +45,7 @@ endif
# Override the arch to enable hardware MUL during assembly.
# This is to support our hardware mul test. For that test,
# we have to disable hardware mul for C code so the soft
# we have to disable hardware mul for C code so the soft
# math libs will be used to compare software mul vs hw mul.
# But hw mul must be enabled to compile the .S file, or we
# will get an illegal instruction error.

View File

@ -54,7 +54,7 @@
/* Timer 1 address definitions */
#ifdef CONFIG_NR5_TIMER1
#ifdef CONFIG_NR5_TIMER1
#define NR5_TIMER1_TACTL_OFFSET (NR5_TIMER1_BASE+NR5_TIMERA_TACTL_OFFSET)
#define NR5_TIMER1_TAR_OFFSET (NR5_TIMER1_BASE+NR5_TIMERA_TAR_OFFSET)
#define NR5_TIMER1_TACCTL0_OFFSET (NR5_TIMER1_BASE+NR5_TIMERA_TACCTL0_OFFSET)
@ -68,7 +68,7 @@
/* Timer 2 address definitions */
#ifdef CONFIG_NR5_TIMER2
#ifdef CONFIG_NR5_TIMER2
#define NR5_TIMER2_TACTL_OFFSET (NR5_TIMER2_BASE+NR5_TIMERA_TACTL_OFFSET)
#define NR5_TIMER2_TAR_OFFSET (NR5_TIMER2_BASE+NR5_TIMERA_TAR_OFFSET)
#define NR5_TIMER2_TACCTL0_OFFSET (NR5_TIMER2_BASE+NR5_TIMERA_TACCTL0_OFFSET)
@ -82,7 +82,7 @@
/* Timer 3 address definitions */
#ifdef CONFIG_NR5_TIMER3
#ifdef CONFIG_NR5_TIMER3
#define NR5_TIMER3_TACTL_OFFSET (NR5_TIMER3_BASE+NR5_TIMERA_TACTL_OFFSET)
#define NR5_TIMER3_TAR_OFFSET (NR5_TIMER3_BASE+NR5_TIMERA_TAR_OFFSET)
#define NR5_TIMER3_TACCTL0_OFFSET (NR5_TIMER3_BASE+NR5_TIMERA_TACCTL0_OFFSET)
@ -96,7 +96,7 @@
/* Timer 4 address definitions */
#ifdef CONFIG_NR5_TIMER4
#ifdef CONFIG_NR5_TIMER4
#define NR5_TIMER4_TACTL_OFFSET (NR5_TIMER4_BASE+NR5_TIMERA_TACTL_OFFSET)
#define NR5_TIMER4_TAR_OFFSET (NR5_TIMER4_BASE+NR5_TIMERA_TAR_OFFSET)
#define NR5_TIMER4_TACCTL0_OFFSET (NR5_TIMER4_BASE+NR5_TIMERA_TACCTL0_OFFSET)
@ -110,7 +110,7 @@
/* Timer 5 address definitions */
#ifdef CONFIG_NR5_TIMER5
#ifdef CONFIG_NR5_TIMER5
#define NR5_TIMER5_TACTL_OFFSET (NR5_TIMER5_BASE+NR5_TIMERA_TACTL_OFFSET)
#define NR5_TIMER5_TAR_OFFSET (NR5_TIMER5_BASE+NR5_TIMERA_TAR_OFFSET)
#define NR5_TIMER5_TACCTL0_OFFSET (NR5_TIMER5_BASE+NR5_TIMERA_TACCTL0_OFFSET)
@ -126,7 +126,7 @@
/* Control register TACTL Bit definitions */
#define TIMERA_TACTL_TAIFG (1 << 0) /* Bit 0: Interrupt Pending Flag */
#define TIMERA_TACTL_TAIFG (1 << 0) /* Bit 0: Interrupt Pending Flag */
#define TIMERA_TACTL_TAIE (1 << 1) /* Bit 1: Interrupt Enable */
#define TIMERA_TACTL_TACLR (1 << 2) /* Bit 2: TAR counter clear */
#define TIMERA_TACTL_MC_SHIFT 4 /* Bits 4-5: Mode Control */
@ -146,14 +146,14 @@
# define TIMERA_TACTL_SYS_CLOCK (2 << TIMERA_TACTL_TASSEL_SHIFT)
# define TIMERA_TACTL_EXT_CLOCK (3 << TIMERA_TACTL_TASSEL_SHIFT)
#define TIMERA_TACTL_TAPRE_SHIFT 10 /* Bits 10-15: Clock Prescaler */
#define TIMERA_TACTL_TAPRE_MASK 0x3F
#define TIMERA_TACTL_TAPRE_MASK 0x3F
# define TIMERA_TACTL_TAPRE(x) (((x) & TIMERA_TACTL_TAPRE_MASK) << TIMERA_TACTL_TAPRE_SHIFT)
/* Capture / Compare register bit definitions */
#define TIMERA_TACCTL_CCIFG (1 << 0) /* Bit 0: Capture/compare interrupt Flag */
#define TIMERA_TACCTL_COV (1 << 1) /* Bit 1: Capture overflow */
#define TIMERA_TACCTL_OUTVAL (1 << 2) /* Bit 2: Output value */
#define TIMERA_TACCTL_CCIFG (1 << 0) /* Bit 0: Capture/compare interrupt Flag */
#define TIMERA_TACCTL_COV (1 << 1) /* Bit 1: Capture overflow */
#define TIMERA_TACCTL_OUTVAL (1 << 2) /* Bit 2: Output value */
#define TIMERA_TACCTL_CCI (1 << 3) /* Bit 3: Capture/compare input value */
#define TIMERA_TACCTL_CCIE (1 << 4) /* Bit 4: Capture/Compare interrupt Enable */
#define TIMERA_TACCTL_OUTMOD_SHIFT 5 /* Bits 5-7: Output Mode */
@ -165,9 +165,9 @@
# define TIMERA_TACCTL_RESET (5 << TIMERA_TACCTL_OUTMOD_SHIFT)
# define TIMERA_TACCTL_TOGGLE_SET (6 << TIMERA_TACCTL_OUTMOD_SHIFT)
# define TIMERA_TACCTL_RESET_SET (7 << TIMERA_TACCTL_OUTMOD_SHIFT)
#define TIMERA_TACCTL_CAP (1 << 8) /* Bit 8: Capture mode select */
#define TIMERA_TACCTL_SCCI (1 << 10) /* Bit 10: Synchronized capture input */
#define TIMERA_TACCTL_SCS (1 << 11) /* Bit 11: Syncronize capture source */
#define TIMERA_TACCTL_CAP (1 << 8) /* Bit 8: Capture mode select */
#define TIMERA_TACCTL_SCCI (1 << 10) /* Bit 10: Synchronized capture input */
#define TIMERA_TACCTL_SCS (1 << 11) /* Bit 11: Syncronize capture source */
#define TIMERA_TACCTL_CCIS_SHIFT 12 /* Bits 12-13: Capture Input Select */
# define TIMERA_TACCTL_CCIS_CCIA (0 << TIMERA_TACCTL_CCIS_SHIFT)
# define TIMERA_TACCTL_CCIS_CCIB (1 << TIMERA_TACCTL_CCIS_SHIFT)

View File

@ -41,7 +41,7 @@
* No parity.
*
* It has a programmable baud rate and RX / TX interrupt capability
* and that's about it. The primary goal for the UART is to provide a
* and that's about it. The primary goal for the UART is to provide a
* debug console to the part.
*/

View File

@ -269,7 +269,7 @@ up_setq2:
ret
/****************************************************************************
* Calls the NR5M100 specific LSBENC opcode. This opcode will find the
* Calls the NR5M100 specific LSBENC opcode. This opcode will find the
* first least significant non-zero bit in a0 and return it's ordinal value.
****************************************************************************/

View File

@ -64,7 +64,7 @@
.global irq_handler
#ifdef CONFIG_RV32IM_HW_MULDIV
#ifdef CONFIG_RV32IM_HW_MULDIV
.global time_hard_mul
.global hard_mul
.global hard_mulh
@ -183,7 +183,7 @@ __start:
la t0, __nr5_init
jr t0
/* We shouldn't return from __nr5_init */
.global _init
@ -403,7 +403,7 @@ irq_handler:
lw x31, 31*4(x1)
/* Restore return PC to q0. This will cause the
* processor to enter a critical state where
* processor to enter a critical state where
* higher priority IRQs won't happen until after
* the mret, thus protecting our shared QREGS.
*/
@ -515,7 +515,7 @@ irq_regs:
irq_stack:
irq_regs_addr:
.fill 4,4
.fill 4,4
irq_stack_addr:
.fill 4,4
@ -525,7 +525,7 @@ irq_stack_addr:
* the MUL / DIV opcodes for performing HARD vs SOFT testing.
****************************************************************************/
#ifdef CONFIG_RV32IM_HW_MULDIV
#ifdef CONFIG_RV32IM_HW_MULDIV
/* Multiply, return lower 32 bits */

View File

@ -167,7 +167,7 @@ void up_irqinitialize(void)
csrw %0, 0(zero) \
csrw %1, 0(zero) \
csrw %2, 0(zero) " ::
"i"(NR5_EPIC_PRI1_REG), "i"(NR5_EPIC_PRI2_REG),
"i"(NR5_EPIC_PRI1_REG), "i"(NR5_EPIC_PRI2_REG),
"i"(NR5_EPIC_PRI3_REG) );
#endif
@ -300,7 +300,7 @@ irqstate_t up_irq_save(void)
* continue to fire, but no general purpose ints.
*/
__asm__ volatile("csrrw %0, %1, %2" : "=r"(oldIrqPri) :
__asm__ volatile("csrrw %0, %1, %2" : "=r"(oldIrqPri) :
"i"(NR5_EPIC_PRIMASK), "r"(newIrqPri));
return oldIrqPri;

View File

@ -4,7 +4,7 @@
* Copyright (C) 2016 Ken Pettit. All rights reserved.
* Author: Ken Pettit <pettitkd@gmail.com>
*
* Modified for RISC-V:
* Modified for RISC-V:
*
* Copyright (C) 2016 Ken Pettit. All rights reserved.
* Author: Ken Pettit <pettitkd@gmail.com>

View File

@ -432,7 +432,7 @@ static int up_interrupt(int irq, void *context, FAR void *arg)
for (passes = 0; passes < 256 && handled; passes++)
{
handled = false;
status = up_serialin(priv, NR5_UART_STATUS_REG_OFFSET);
/* Handle incoming, received bytes. The RX FIFO is configured to

View File

@ -101,7 +101,7 @@ static volatile struct nr5_uart_regs_s g_nr5_uart1_regs =
.tx_irq = NR5_IRQ_UART1_TX,
};
static struct nr5_uart_s g_nr5_uart1 =
static struct nr5_uart_s g_nr5_uart1 =
{
.regs = &g_nr5_uart1_regs,
.rx_buf = &g_nr5_uart1_rx_buf,
@ -172,7 +172,7 @@ void nr5_uart_init(int uart)
//up_enable_irq(dev->regs->rx_irq);
// Set the baud rate
if (up_getimpid() == cmpval)
{
*dev->regs->pBaud = 0x0d;
@ -200,7 +200,7 @@ uint8_t nr5_uart_get_rx()
rxdata = pBuf->buffer[pBuf->tail++];
if (pBuf->tail == pBuf->size)
pBuf->tail = 0;
pBuf->tail = 0;
}
up_enableints();
return rxdata;

View File

@ -46,7 +46,7 @@
************************************************************************************/
__reset_vec:
csrw NR5_EPIC_PRIMASK, 7
csrw NR5_EPIC_PRIMASK, 7
j __start
/************************************************************************************

View File

@ -3,7 +3,7 @@
#
# Copyright (C) 2012-2013, 2015 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
#
# modified for RISC-V:
#
# Copyright (C) 2016 Ken Pettit. All rights reserved.
@ -89,9 +89,9 @@ ifeq ($(CONFIG_RISCV_TOOLCHAIN),GNU_RVGW)
WINTOOL = y
endif
ifeq ($(CONFIG_RV32IM_HW_MULDIV),y)
ARCHCPUFLAGS = -march=RV32IMXcustom -m32
ARCHCPUFLAGS = -march=RV32IMXcustom -m32
else
ARCHCPUFLAGS = -march=RV32IXcustom -m32
ARCHCPUFLAGS = -march=RV32IXcustom -m32
endif
endif

View File

@ -124,7 +124,7 @@ static inline void up_registerdump(void)
g_current_regs[REG_S11]);
#ifdef RISCV_SAVE_GP
_alert("GP:%08x SP:%08x FP:%08x TP:%08x RA:%08x\n",
g_current_regs[REG_GP], g_current_regs[REG_SP], g_current_regs[REG_FP],
g_current_regs[REG_GP], g_current_regs[REG_SP], g_current_regs[REG_FP],
g_current_regs[REG_TP], g_current_regs[REG_RA]);
#else
_alert("SP:%08x FP:%08x TP:%08x RA:%08x\n",

View File

@ -119,7 +119,7 @@ void up_initial_state(struct tcb_s *tcb)
# warning "Missing logic"
#endif
/* Set the initial value of the interrupt context register.
/* Set the initial value of the interrupt context register.
*
* Since various RISC-V platforms use different interrupt
* methodologies, the value of the interrupt context is

View File

@ -119,7 +119,7 @@ config SIM_NET_HOST_ROUTE
---help---
Add a host route for the simulation that points to the created tap device. The
simulation will not be able to access the public network unless iptables is
configured to masquerade for it. See configs/sim/NETWORK-LINUX.txt for more
configured to masquerade for it. See configs/sim/NETWORK-LINUX.txt for more
information.
config SIM_NET_BRIDGE

View File

@ -213,7 +213,7 @@ static int sim_start(FAR struct oneshot_lowerhalf_s *lower,
nsec = (int64_t)ts->tv_sec * NSEC_PER_SEC +
(int64_t)ts->tv_nsec;
ticks = (systime_t)((nsec + NSEC_PER_TICK - 1) / NSEC_PER_TICK);
/* Save the callback information and start the timer */
priv->callback = callback;

View File

@ -51,7 +51,7 @@ config XTENSA_CP_LAZY
processor was never used, and (2) tasks must explicitly enable and
disable co-processors.
An alternative, "lazy" co-processor state restore is enabled with
An alternative, "lazy" co-processor state restore is enabled with
this option. That logic works like as follows:
a. CPENABLE is set to zero on each context switch, disabling all co-

View File

@ -485,7 +485,7 @@
#define XCHAL_HAVE_OLD_EXC_ARCH XCHAL_HAVE_XEA1 /* (DEPRECATED) 1 if
* old exception
* architecture (XEA1),
* architecture (XEA1),
* 0 otherwise (eg.
* XEA2) */
#define XCHAL_HAVE_EXCM XCHAL_HAVE_XEA2 /* (DEPRECATED) 1 if
@ -876,7 +876,7 @@
# define XCHAL_KSEG_CACHED_PADDR 0x00000000 /* phys.addr of
* kseg_cached */
# define XCHAL_KSEG_CACHED_SIZE 0x08000000 /* size in bytes of
* kseg_cached (assumed
* kseg_cached (assumed
* power of 2!!!) */
# define XCHAL_KSEG_BYPASS_VADDR 0xD8000000 /* virt.addr of kernel
* RAM bypass
@ -885,7 +885,7 @@
# define XCHAL_KSEG_BYPASS_PADDR 0x00000000 /* phys.addr of
* kseg_bypass */
# define XCHAL_KSEG_BYPASS_SIZE 0x08000000 /* size in bytes of
* kseg_bypass (assumed
* kseg_bypass (assumed
* power of 2!!!) */
# define XCHAL_KIO_CACHED_VADDR 0xE0000000 /* virt.addr of kernel
* I/O cached static
@ -956,7 +956,7 @@
.endif
.endm
/* Align portion of save area and bring ptr in range if necessary. Used by
/* Align portion of save area and bring ptr in range if necessary. Used by
* save area load/store sequences. Not usually invoked directly. Allows
* combining multiple (sub-)sequences arbitrarily. ptr pointer to save
* area (may be off, see .Lxchal_pofs_) minofs,maxofs range of offset from

View File

@ -74,7 +74,7 @@
* This restriction is introduced to reduce the overhead of saving and
* restoring co-processor state (which can be quite large) and in particular
* remove that overhead from interrupt handlers.
*
*
* The co-processor state save area may be in any convenient per-thread
* location such as in the thread control block or above the thread stack
* area. It need not be in the interrupt stack frame since interrupts don't

Some files were not shown because too many files have changed in this diff Show More