nuttx/arch/arm/src
Dave Marples b49b07cb75 rch/arm/src/imxrt/imxrt_serial.c: o, just to complete the documentation of this...it looks like two issues, which confused me greatly;
1) Operational issue

TC (Transmission complete) and TDRE (TX Buffer Empty) were transposed in imxrt_serial.c.  The end result was that for unoptimised code everything worked fine, but optimised code got itself into a real mess and continually fired interrupts.  The patch attached fixes this. This one would have been found much more quickly if this particular board had supported SWO :-/

2) Startup issue

There are a number of chip errata that apply to the 1052 first revision (A-suffix) that don't apply to the second (B-suffix). Those got me for a while and it's important to use an EVK_B_ dev board if you're suffering stability problems with this particular chip. However, even with that resolved with either optimised or unoptimised code when there is no SNVS (Battery Backup) power and the power is switched on the CPU appears to boot but gets stuck with timer interrupts not being generated. The CPU is running and it will execute linear code.   I have determined this by putting an 'imxrt_lowputc('A'+irq)' into up_doirq. For the non-running case the output looks like this;

LLLL

this implies 4 0x0b interrupts have been generated, and nothing else. If I hit keys on the keyboard I get 'e' in the flow.  0x0b is the SVC instruction and is the mechanism by which NuttX handles task switching.  'e' is 0x24, which corresponds to the LPUART1 interrupt.  Other than these, the system does not respond further but is happily in the idle loop.  In this circumstance if you hit SW2 on the EVKB board though the logjam 'unjams' and normal service is established, output now looks like;

LLLLPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPLPP ...etc.

Where 'P' is 0x0f (the SYSTICK interrupt)....this is what _should_ be happening so; SYSTICK starts up after SW2 has been pressed.

From this point on everything works correctly and you can reboot the CPU, put new code into it or do whatever you wish, **provided power is not cycled off**. If power is cycled off then return to the top and go through the process again.

When there is SNVS power to the CPU then power can be switched on and off as you wish, and the CPU will boot correctly. This has been determined by putting 3V onto J6.

I think we are probably doing something naughty with the way we are starting the clocks to the timers.  There are certainly some restrictions on imxrt clock manipulation which we have studiously avoided. I am investigating further and have some potential patches but even if I find the root cause it should not be included in 8.2 as the change could be disruptive.
2019-11-12 09:05:25 -06:00
..
a1x
am335x
arm Fix some typos. Mostly inital->initial. 2019-09-27 06:32:32 -06:00
armv6-m Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
armv7-a armv7-a and xtensa: Apply Masayuki Ishakawa's change of cef90a3865 to these these other SMP architectures as well. 2019-10-04 07:17:35 -06:00
armv7-m Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_bbsram_mpu (pull request #1069) 2019-11-08 16:17:28 +00:00
armv7-r
c5471 Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
common arch/: Add rpmsg_serialini() call to every implementation of up_initialize() for rpmsg uart initialization. 2019-11-04 08:11:50 -06:00
cxd56xx Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
dm320 Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
efm32 Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
imx1 Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
imx6 Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
imxrt rch/arm/src/imxrt/imxrt_serial.c: o, just to complete the documentation of this...it looks like two issues, which confused me greatly; 2019-11-12 09:05:25 -06:00
kinetis Merged in david_s5/nuttx/master_k66_ethernet (pull request #1064) 2019-10-30 18:29:54 +00:00
kl Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
lc823450 Merged in masayuki2009/nuttx.nuttx/fix_cpustart (pull request #1051) 2019-10-16 03:16:48 +00:00
lpc17xx_40xx arch/arm/src/lpc17xx_40xx/lpc17_40_ethernet.c: Use usleep() instead of up_delay() for large wait times. 2019-10-04 13:01:47 -06:00
lpc31xx Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
lpc43xx Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
lpc54xx arch/arm/src/lpc54xx/lpc54_clockconfig.c: Fix PLL settings. For the lpc54628 Rev. E board the PLL was not configured properly and the board wouldn't boot correctly. I checked the startup files from the official IDE and inspected the assembly instructions for the libraries used. 2019-09-22 13:41:38 -06:00
lpc214x Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
lpc2378 Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
max326xx Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
moxart
nrf52 Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
nuc1xx Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
s32k1xx arch/arm/src/s32k1xx/s32k1xx_flashcfg.c: Flash configuration array should be const (although it really does not matter in this context). 2019-10-22 17:44:16 -06:00
sam34 Merged in masayuki2009/nuttx.nuttx/fix_cpustart (pull request #1051) 2019-10-16 03:16:48 +00:00
sama5 Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
samd2l2 Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
samd5e5 Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
samv7 Fix some typos 2019-09-17 10:46:23 -06:00
stm32 Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_siglewire (pull request #1070) 2019-11-10 12:27:47 +00:00
stm32f0l0g0 Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_siglewire (pull request #1070) 2019-11-10 12:27:47 +00:00
stm32f7 Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_siglewire (pull request #1070) 2019-11-10 12:27:47 +00:00
stm32h7 Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_siglewire (pull request #1070) 2019-11-10 12:27:47 +00:00
stm32l4 Merged in david_s5/nuttx/px4_firmware_nuttx-8.1+_siglewire (pull request #1070) 2019-11-10 12:27:47 +00:00
str71x Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
tiva arch/arm/src/tiva/common/tiva_flash.c: Improve tiva_write() (but needs more work!) 2019-11-06 20:35:35 -06:00
tms570
xmc4 Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
.gitignore
Makefile