Commit graph

24187 commits

Author SHA1 Message Date
Gregory Nutt
027e5ef1a1 LPC43xx: Fix some errors/warnings in ADC driver 2016-01-15 13:37:12 -06:00
Gregory Nutt
19810eef6b Update Changelog and README.txt 2016-01-15 13:14:07 -06:00
Gregory Nutt
6c2cd3edee Changes from review of last pull request 2016-01-15 10:55:58 -06:00
Lok Tep
a089847f39 Merged nuttx/arch into master 2016-01-15 15:32:55 +01:00
Gregory Nutt
fd91b4dd85 Fix minor typo in ChangeLog 2016-01-14 15:20:30 -06:00
Gregory Nutt
2030784891 sim: Add more symbols to nuttx-names.dat 2016-01-14 15:14:25 -06:00
Gregory Nutt
a0c4c071ed tools/cnvwindeps.c: Omit dependency paths that include spaces 2016-01-11 08:01:42 -06:00
Juha Niskanen
8a671d604d stm32/chip: Fix STM32L15 TIM5 base address. 2016-01-11 07:25:50 -06:00
Gregory Nutt
f6718fb050 Merge remote-tracking branch 'origin/master' into windeps 2016-01-09 20:04:53 -06:00
Gregory Nutt
4b71d74a2b Minor typo fix in warning 2016-01-09 19:57:48 -06:00
Gregory Nutt
c5bcfc166d tools/mkwindeps.sh. A script that coordinates the use of cnvwindeps.exe 2016-01-09 17:27:56 -06:00
Gregory Nutt
435b29fa7c Update submodules 2016-01-09 16:39:30 -06:00
Gregory Nutt
10001f8556 WINTOOl should be selected only for Cygwin. MSYS and native should not have it. 2016-01-09 16:34:33 -06:00
Gregory Nutt
468732e064 mkdeps.sh and mkdeps.bat have been deleted. All configurations must now use the compiler mkeps program 2016-01-09 16:07:12 -06:00
Gregory Nutt
b390bd802a tools/cnvwindeps.c: Add a tool that will convert dependencies created by a Windows native toolchain for use the Cygwin make 2016-01-09 13:51:34 -06:00
Gregory Nutt
7231439290 Test for CONFIG_AVR_HAS_MEMX_PTR must be after inclusion of config.h 2016-01-09 08:11:25 -06:00
Gregory Nutt
1ac6ecac87 Changes to last pull request needed for conformance with coding standard 2016-01-09 07:27:22 -06:00
Gregory Nutt
d0578bfc2b Changes to last pull request needed for conformance with coding standard 2016-01-09 07:25:24 -06:00
Gregory Nutt
203899cca8 Merged in kloper/arch/atmega2560 (pull request #48)
debug macros for AVR (take #2): Introduce debug macro hooks for AVR
2016-01-09 07:17:35 -06:00
Dimitry Kloper
642b92b391 Introduce debug macro hooks for AVR
When AVR_HAS_MEMX_PTR is enabled provide dbg macro hooks that place
the format strings in program memory releasing RAM for other tasks.
2016-01-09 14:44:38 +02:00
Gregory Nutt
953298d516 Update submodules 2016-01-08 11:26:45 -06:00
Gregory Nutt
7a393f9e8b Eliminate some warnings 2016-01-08 11:26:16 -06:00
Gregory Nutt
278701f93d Eliminate warnings (one of which looks like a bug) 2016-01-08 11:22:57 -06:00
Gregory Nutt
68e3f5d9ce All AVR toolchain configuration names must end with _TOOLCHAIN to work properly with nuttx/tools/testbuilds.sh 2016-01-08 10:39:59 -06:00
Gregory Nutt
5496c450c5 Update submodules 2016-01-08 07:51:21 -06:00
Gregory Nutt
595799212c SAMV7: Add logic to check if multiple banks are busy in TXINI interrupt processing. This logic is probably necessary, but currently commented out because it is untested 2016-01-08 07:47:00 -06:00
Gregory Nutt
31294fb468 Update submodules 2016-01-07 08:15:00 -06:00
Gregory Nutt
dfe3240973 AVR: Rename ATMEGA_PC_SIZE to AVR_PC_SIZE since it must be used in common AVR logic. Add definitions for other AVR architectures as necessary for compilation 2016-01-07 08:14:09 -06:00
Gregory Nutt
ce2a0b6b51 Eliminate a warning 2016-01-06 10:05:39 -06:00
Gregory Nutt
951c40215a Atmega: Eliminate some warnings 2016-01-06 09:50:15 -06:00
Dimitry Kloper
06d83c6261 Introduce support for Atmel toolchain in-flash strings
Atmel toolchain AVR compiler provides a transparent in-flash object support using __flash and __memx symbols. The former indicates to compiler that this is a flash-based object.  The later used with pointer indicates that the referenced object may reside either in flash or in RAM. The compiler automatically makes 32-bit pointer with flag indicating whether referenced object is in flash or RAM and generates code to access either in run-time. Thus, any function that accepts __memx object can transparently work with RAM and flash objects.

For platforms with a Harvard architecture and a very small RAM like AVR this allows to move all constant strings used in trace messages to flash in the instruction address space, releasing resources for other things.

This change introduces IOBJ and IPTR type qualifiers.  The 'I' indicates that the object may like in instruction space on a Harvard architecture machine.

For platforms that do not have __flash and __memx or similar symbols IOBJ and IPTR are empty, making the types equivalent to, for example, 'const char' and 'const char*'.  For Atmel compiler these will become 'const __flash char' and 'const __memx char*'.  All printf() functions and syslog() functions are changed so that the qualifier is used with the format parameter.

From: Dimitry Kloper <dikloper@cisco.com>
2016-01-05 10:29:29 -06:00
Gregory Nutt
fe94318bb4 PIC32MX/MZ: Fix error in assember macro. Noted by Tilak Tangudu 2016-01-05 10:04:50 -06:00
Dimitry Kloper
16212f19e7 AVR: Introduce Atmel Toolchain as a configuration option
Atmel's AVR8 toolchain is similar to WinAVR, but at present moment
it has one important feature that WinAVR does not. The __flash and __memx
allow built in comiler support for transparent program memory pointers.
Functions that use such pointers will work both with RAM arrays and
flash memory arrays. The compiler generates an appropriate code automatically.
For systems with tiny memory like atmega, this is very important and
allows to move all static const strings into flash.
2016-01-04 21:53:44 +02:00
Dimitry Kloper
b9f06dc5e3 ATMEGA2560: Fix compilation when CONFIG_DISABLE_SIGNALS is undefined 2016-01-04 21:39:48 +02:00
Gregory Nutt
efd5a63cf3 Update submodules 2016-01-01 12:18:04 -06:00
Gregory Nutt
b29ec04459 Trivial update to C comments 2016-01-01 12:17:40 -06:00
Gregory Nutt
9835eeb181 signals: Basic framework to support SIGEV_THREAD 2015-12-30 13:20:31 -06:00
Gregory Nutt
b323e1d5ff Trivial, cosmetic 2015-12-30 12:36:22 -06:00
Gregory Nutt
695a8890a6 Rename pm_internal.h to pm.h 2015-12-29 18:19:03 -06:00
Gregory Nutt
d235dcc3b0 Rename the LPC2378 header file internal.h to lpc2378.h 2015-12-29 18:17:23 -06:00
Gregory Nutt
71c289ce4f Rename all architecture files of form xyz_internal.h to just xyz.h 2015-12-29 18:07:11 -06:00
Gregory Nutt
fc30b31ed3 Update ChangeLog 2015-12-29 13:05:34 -06:00
Gregory Nutt
68cc2ecfd2 ATMEGA2560: Most cosmetic changes from review of pull request 2015-12-29 13:02:20 -06:00
Dimitry Kloper
0b8a43abbb Merged nuttx/arch/master into atmega2560 2015-12-29 19:10:57 +02:00
Dimitry Kloper
3c0c90e07d Minor identation fix 2015-12-29 19:09:20 +02:00
Dimitry Kloper
3746305f12 AVR: Minor adapt to a differnt TIMER IRQ notions for Atmega2560 2015-12-29 19:08:13 +02:00
Dimitry Kloper
556954141e AVR: Add support for AVR chips with 24-bit Program Counter register
The main challenge is to change the context switch code to be aware of the
extra byte that is saved on stack during call and intterupt. This relates also
to the task startup and signal handling.
2015-12-29 19:01:06 +02:00
Dimitry Kloper
99aab135b2 AVR: Make setting of XDIV optional for platforms that support it
Put setting of XDIV into ifdef since not AVR platforms support it.
2015-12-29 18:56:12 +02:00
Dimitry Kloper
462307f4b7 AVR: Clear EIND on system start-up
For AVR chips (Atmega2560) Program Counter register larger than 16 bits
EIND represents the most significant byte that is used for EICALL and EIJMP
instructions.

Setting of EIND is normally managed by compiler, but I have seen a situation
when for first 64K flash segment compiler didn't set EINT explicitly. Thus
setting EIND at system startup makes sure we are safe.
2015-12-29 18:46:28 +02:00
Dimitry Kloper
9a4a06bf47 AVR: Explicitly disable interrupts as the first step of system init
Disabling interrupts at the very beginning of system init does not
make sense after reset since interrupts are disabled anyway. But
it is very convenient for debugging purposes, in situations when the
system misbehaves and ocassionally jumps to zero.
2015-12-29 18:35:36 +02:00