Commit Graph

484 Commits (c164d0b56b38f39c994118ccdec6f660a00a312d)

Author SHA1 Message Date
Joris Aerts c164d0b56b Modify uVision LPC1114 template output name and directory to match others 2013-09-18 08:46:43 -07:00
Emilio Monti c02372f883 Merge pull request #70 from jorisa/master
Replace #ifdef with #if DEVICE_STDIO_MESSAGES
2013-09-18 03:08:46 -07:00
Joris Aerts c275ef3b3d Replace #ifdef with #if DEVICE_STDIO_MESSAGES
DEVICE_STDIO_MESSAGES is the only #define in device.h that is being used in the library as #ifdef rather than #if. This is misleading since setting it to 0 will not disable including the <stdio.h> libraries.
2013-09-17 18:19:22 -07:00
Emilio Monti 105c56d38b Update README.md 2013-09-17 16:24:43 +01:00
Emilio Monti 26bd46f50e Add a method to the exporter to choose the toolchain. Add initial LPC812 uvision template 2013-09-17 15:56:35 +01:00
Emilio Monti 8f1c636ef5 Merge pull request #69 from adamgreen/fixSbrkForCortexM
Fix _sbrk() implementation for Cortex-M parts.
2013-09-17 05:17:28 -07:00
Adam Green 5eb976a088 Fix _sbrk() implementation for Cortex-M parts.
A recent commit, 43acaa4166, to get _sbrk() to build successfully for
LPC2368 broke the Cortex-M implementation.  __get_MSP() isn't ever
defined as a macro, it is an inline function.  This means that the
code would always be compiled to use SP instead of MSP on Cortex-M
parts.  I switched the code to instead use the TARGET_ARM7 define
to choose which stack pointer to utilize.

I tested this fix by making sure that the LPC2368 version of the mbed
SDK would still build successfully with the Python scripts and that the
NET1 test still built and ran successfully on my mbed-LPC1768 device.
2013-09-17 04:29:35 -07:00
Emilio Monti 96ea3db1b3 Merge pull request #66 from dinau/lpc2368_mod
LPC2368 mod
2013-09-16 08:00:20 -07:00
Emilio Monti 061259c07c Merge pull request #67 from adamgreen/gccFixUSBHost
Get USBHost to build and run with GCC_ARM
2013-09-16 07:12:43 -07:00
dinau efbc52465d LPC2368 [GCC_ARM]: Silence some warnings. 2013-09-13 22:01:21 +09:00
dinau 43acaa4166 LPC2368 [GCC_ARM]: Fixed: Compilation and link errors in case "SD" example. 2013-09-13 22:01:19 +09:00
Emilio Monti 2481fbe2a2 Merge pull request #62 from arebert/lpc4088
LPC4088: PIN mode fix, export to external tools and MAC address retrieval
2013-09-13 05:59:14 -07:00
Bogdan Marinescu b9d52bda50 Merge remote-tracking branch 'github/master' 2013-09-12 16:38:13 +03:00
Erik Olieman c255ca2959 USBDevice memory leaks fixes
Fixes memory leaks in USBMSD, USBSerial (CircBuffer) and the KL25Z USB
HAL.
Original author: Erik Olieman, a few changes by Bogdan Marinescu.
2013-09-12 16:35:52 +03:00
Bogdan Marinescu 6eec86cbbf Merge pull request #64 from ytsuboi/master
[LPC812] Added RTOS support
2013-09-11 12:10:17 -07:00
Erik Olieman 94ff741989 LPC1768 InterruptIn speedup
Use __CLZ to speed up GPIO interrupt processing.
2013-09-11 18:46:18 +03:00
Bogdan Marinescu fc5774131c More changes to the synchronization script
1. added the possibility to redirect stderr to stdout in utils.run_cmd
2. synch.py now calls the above run_cmd in redirect mode instead of the
old 'cmd'  that doesn't intercept standard streams. This makes it easier
for an external tool to intercept the output of 'hg'.
2013-09-11 17:02:51 +03:00
Bogdan Marinescu 162aad2072 Changed do_sync do return the list of changed repositories 2013-09-11 13:10:11 +03:00
Bogdan Marinescu 5ec4edf76f Change the synch.py script to make it usable as a module 2013-09-11 12:59:28 +03:00
ytsuboi a693ad6d06 Merge branch 'master' of https://github.com/ytsuboi/mbed 2013-09-11 02:30:33 +09:00
ytsuboi f79b9d3430 [LPC812] Added RTOS support 2013-09-11 02:30:27 +09:00
Bogdan Marinescu 12d085ec0a Updated synchronization script
Added persistent line endings, commit message on the command line and
"quiet" option (run without user interaction).
2013-09-10 18:27:10 +03:00
Bogdan Marinescu 171dda705c Merge pull request #63 from jorisa/master
Fix hardfault when attaching callback to CAN2 when CAN1 is not defined
2013-09-10 03:22:55 -07:00
Joris Aerts efd3d8d8e0 Fix hardfault when attaching callback to CAN2 when CAN1 is not defined
Fault is triggered by trying to read LPC_CAN1->IER when the peripheral is powered off. Fixed by checking the power control register before checking the IER register.
2013-09-09 09:06:04 -07:00
Bogdan Marinescu cfa6a1d912 Merge pull request #61 from ytsuboi/master
Fixed problem in PWMOUT mapping table
2013-09-09 08:22:11 -07:00
Andreas Rebert 00cfdbad2a Merge remote-tracking branch 'upstream/master' into lpc4088 2013-09-09 14:13:08 +02:00
Andreas Rebert cbab9bbfc5 Added: Export to uVision and Code Red toolchains 2013-09-09 14:12:39 +02:00
unknown 0e36bdd457 Bugfix: PIN Modes was not set correctly
Added: Export to uVision and Code Red toolchains
2013-09-09 14:10:11 +02:00
Bogdan Marinescu 1f243a900c Merge remote-tracking branch 'github/master' 2013-09-09 12:31:42 +03:00
Bogdan Marinescu fded46b459 [LPC1768] Fix serial_clear
serial_clear() erroneously disabled the UART FIFOs.
Reported by Adam Green.
2013-09-09 12:28:11 +03:00
Toyomasa Watarai d0d2df3ce5 Fixed problem in PWMOUT mapping table
Fixed problem in PWMOUT output issue.
Startup code cean-up (correced exception names).
Corrected test cases.
2013-09-09 18:15:51 +09:00
Bogdan Marinescu d51411294f Merge pull request #57 from adamgreen/serialTxDropsRx
serial_putc() can cause rx bytes to be dropped
2013-09-09 01:19:29 -07:00
Bogdan Marinescu 946cf742b4 Merge pull request #60 from jorisa/master
Fix MASKED_ACCESS bug in gpio_init
2013-09-09 01:07:04 -07:00
Joris Aerts 743e178455 Fix MASKED_ACCESS bug in gpio_init, now same as LPC11xx (Also use PIN_SHIFT instead of magic number 8 in gpio_set) 2013-09-08 18:57:40 -07:00
Adam Green 5d27f98c7b serial_putc() can cause rx bytes to be dropped
While fixing this issue in the various LPC* ports, I noticed a comment
pointing to this mbed forum post which summarizes this bug quite well:
  https://mbed.org/forum/bugs-suggestions/topic/4473/

This bug was introduced in the following commit:
2662e105c4

The following code was added to serial_putc() as part of this commit:
    uint32_t lsr = obj->uart->LSR;
    lsr = lsr;
    uint32_t thr = obj->uart->THR;
    thr = thr;

As the forum post indicates, this causes the serial_putc() routine to
actually eat an inbound received byte if it exists since reading THR is
really reading the RBR, the Receiver Buffer Register.  This code looks
like code that was probably added so that the developer could take a
snapshot of these registers and look at them in the debugger.  It
probably got committed in error.
2013-09-07 00:44:44 -07:00
Bogdan Marinescu e03e337af6 Fix USBDevice compilation on LPC11U24_301 and LPC11U35_401
Reported by Frank Buss <fb@frank-buss.de>
2013-09-06 12:21:38 +03:00
Bogdan Marinescu 423f1abd63 Fix startup files for various versions of LPC11Uxx
LPC11U24/LPC11U24_301/LPC11U35_401 shared the same startup file for ARM
and uARM toolchains, which is wrong, because the initial SP value is
different for LPC11U24_301. This commit fixes this issue by giving each
target its own startup file.
2013-09-06 11:50:52 +03:00
Bogdan Marinescu 95f6826196 Refactor code for LPC810/LPC812
There were lots of overlaps in the code for LPC810 and LPC812, including
duplicated source files. This commit adds a TARGET_LPC81X_COMMON folder in
both HAL and CMSIS, this folder keeps common code for the targets.
2013-09-05 19:00:19 +03:00
Bogdan Marinescu 233979e88f Merge pull request #54 from ytsuboi/master
Added LPC810 support
2013-09-05 07:00:17 -07:00
Bogdan Marinescu f813bb9382 Fix GCC interpretation of dependency file
The dependency file generated by GCC might contain more than one
dependency listed on a single line, which wasn't taken into account by the
GCC dependency fille interpreter. This commit fixes this issue.
2013-09-05 15:29:13 +03:00
Bogdan Marinescu ae16d3efa8 Fix NULL pointer indirection in FilePath
If the FileBase::lookup operation in the constructor of FilePath returns
NULL, subsequent operations (such as isFile()/isFileSystem()) will call
methods on a NULL 'fb' pointer. This commit fixes this issue by adding
explicit NULL checks and a new method in FilePath (exists()).
2013-09-05 14:09:27 +03:00
ytsuboi 46003d4c3c Merge remote-tracking branch 'upstream/master' 2013-09-05 13:01:12 +09:00
Abe Karplus 96101aed32 Added complete PwmOut mappings for KL25Z 2013-09-04 15:52:58 +03:00
Bogdan Marinescu 45565cb055 Merge pull request #48 from adamgreen/gccRetargetSbrk
gcc: Provide _sbrk implementation compatible with RTX
2013-09-04 01:12:31 -07:00
ytsuboi 0718c7671a Merge remote-tracking branch 'upstream/master' 2013-09-03 19:38:34 +09:00
Bogdan Marinescu 42e27e70b9 Merge pull request #51 from adamgreen/netMorePerformanceWork
Asm versions of netstack memcpy() and lwip_standard_chksum()

[Note] I'm generally a bit reluctant when including optimizations like this (from an architectural standpoint), because they tend to be a bit too specific (for example, this one works only with lwIP+GCC+Cortex-M3 or M4), but for now it looks as this is the right place for them, although the optimized memcpy should ideally be in libc (or even better replaced with a DMA transfer in this particular case). But this will be both a nice optimization and a reminder of what we need to implement/change in the future.
2013-09-02 04:05:56 -07:00
Bogdan Marinescu f44914d59a Merge pull request #50 from dinau/lpc2368
LPC2368 [GCC_ARM, GCC_CR]: Startup codes
2013-09-02 03:43:52 -07:00
Bogdan Marinescu c9fc35f6f3 Merge pull request #49 from dinau/link_issue
Fixed: [GCC_ARM : LPC1768] Issue ignored the linker option for _print_fl...
2013-09-02 03:14:11 -07:00
Adam Green 2056ad025e usbhost: USBHost::fileControlBuf() handle alignment and endianness
Based on great feedback from Martin Kojtal on my previous commit, I
have modified my USBHost::fileControlBuf() change to be more portable.
    ddb3fbe826 (commitcomment-3988044)

The code now fills in the setupPacket byte array a byte at a time,
using bit shifts to extract lower and upper bytes from the 16-bit
values so that the code should work on big endian or little endian
machines.  I also removed the 2-byte alignment attribute from the
setupPacket array as it is no longer required.
2013-09-01 12:19:59 -07:00
dinau 8503ccb7a3 LPC2368 [GCC_ARM, GCC_CR]:
1. Added: GCC_CR toolchain ID for LPC2368. (targets.py)
2. Modified: Startup codes for GCC_ARM and GCC_CR toolchain.
3. Verified: "ticker" and "basic" test program work well, so far.
(Fixed typo.)
2013-08-31 16:00:40 +09:00