Commit Graph

219 Commits

Author SHA1 Message Date
Eric Holland
94e1825854 [accelerometer]added app for interacting with accelerometer from console 2015-12-02 18:13:54 -08:00
Carlos Pizano
c8ec0024da [kernel][port] port group test
A basic port watcher.

BUG=
R=travisg@google.com

Review URL: https://codereview.chromium.org/1478653002 .
2015-12-02 12:32:09 -08:00
Travis Geiselbrecht
4ab14424bd [cppcheck] clean up a few suggestions from cppcheck 2015-11-24 15:08:38 -08:00
Carlos Pizano
614eaf166a [kernel][ports] Add basic ports functionality
Missing mostly more tests, specifically group tests.

BUG=none
R=travisg@google.com

Review URL: https://codereview.chromium.org/1437453002 .
2015-11-20 14:43:27 -08:00
Travis Geiselbrecht
09acdf8afe WIP arm-m fpu 2015-11-11 18:07:07 -08:00
Travis Geiselbrecht
6475660350 WIP checkpoint 2015-11-11 13:22:07 -08:00
Travis Geiselbrecht
420c557c6e WIP fpu bits 2015-11-09 16:30:16 -08:00
Zhu, Bing
b6647f5bef [arch][x86][fpu]Change naming convention for FPU flag
To align with lk/arm flag naming convention, FPU flag
ENABLE_FPU is changed to X86_WITH_FPU

Signed-off-by: Zhu, Bing <bing.zhu@intel.com>
2015-11-09 22:14:11 +08:00
Travis Geiselbrecht
491e47fbc6 [linker] align special sections on native pointer bounary
This fixes a bug in x86-64 where it was trying to default align
input sections on 16 byte boundaries, which was screwing up the
padding between structures.
2015-11-06 12:00:04 -08:00
Travis Geiselbrecht
2c52edce0b [app][tests] set ENABLE_FPU in arch/x86 targets, enable floating point tests 2015-10-27 13:19:07 -07:00
Travis Geiselbrecht
114a350e55 [linker] align all the special sections on 8 byte boundaries, remove x86-64 hack
A bit overkill for 32bit machines, but aligning all the special data structures
on 8 byte boundaries removes any special case for 64bit machines.
2015-10-26 17:01:34 -07:00
Travis Geiselbrecht
0e1ce411ba [make] add ability to set EXTRA_LINKER_SCRIPTS in modules
This allows for individual modules to extend the main linker script,
primarily to add their own sections to interate over.
Remove the main shared_* linker scripts.
2015-10-26 16:47:18 -07:00
Travis Geiselbrecht
35ebee0e40 [merge] branch 'heapswitch'
This picks up the major work of allowing multiple heap implementations
and enable dlmalloc as an alternate heap to the simple existing one
(now called 'miniheap').

Also added a novm page allocator for memory management on systems too small
or missing an mmu to have a vm. Not much more than a simple bitmap allocator
that the heap pulls from. Allows for other heaps and/or users of physical
memory to coexist and span multiple banks of memory.
2015-10-20 16:53:00 -07:00
Travis Geiselbrecht
3b2d7a268b [make] remove the need for a module to manually add $(LOCAL_DIR)/include to the global include path
Pretty much every module in the system was already doing it, so do it
automatically.
2015-10-19 19:07:16 -07:00
Travis Geiselbrecht
38f20ec0a1 [lib][console] add pointer type arg, switch some users to it.
Patch courtesy Erik Corry
2015-10-19 12:49:20 -07:00
Gurjant Kalsi
dc079d7327 [console][uart][shell] Created a crash-time shell and a polling based UART driver to use on panic. 2015-10-12 16:38:51 -07:00
Carlos Pizano
13a1d4f530 [app][loader] Odds and ends
- Fix a bug when doing bounds checking
- Don't run elf if the entrypoint is out of bounds
- Allow to specify the memory slot to download (slot is 512K)
- Default slot for elf is 1, 3 and for data is 0, 2
2015-09-23 12:46:43 -07:00
Travis Geiselbrecht
215b5ed07f [64bit] fix a few more 64bit warnings in newer code 2015-09-20 13:11:51 -07:00
Travis Geiselbrecht
7c62a4923f [app][tests] run float_tests on arm64 as well 2015-09-20 12:13:07 -07:00
Carlos Pizano
0fa831244d [app][loader] Remove spurious parameter to printf(). 2015-09-18 16:40:25 -07:00
Carlos Pizano
3c89961208 [app][loader] Remove uneeded APP entrypoints.
We don't need our own thread.
2015-09-17 19:23:56 -07:00
Carlos Pizano
2809f91084 [app][loader] Load blobs and run elf via tftp into SDRAM
Introduces two commands:
   load any <filename>
   load elf <filename>

Then from another system in the network you can:
   tftp -i <ip-addr> put <filename>

Which for the 'any' case just loads the file into DRAM and for the 'elf'
case it parses the file and if correct it spawns a thread to run the
entrypoint.
2015-09-17 18:21:39 -07:00
Carlos Pizano
d0d5f33bfc [lib][tftp] Move tftp from inetsrv and apply review changes.
From https://codereview.chromium.org/1346853002
2015-09-16 18:23:24 -07:00
Carlos Pizano
ac406077ae [app][inetsrv] add tftp server.
Only allows writting files. Needs a per-file handler to be wired and
provisionally has a test handler wired to "tftp_test.txt" which prints
the crc32 of the complete file pushed via
   tftp -i 192.169.0.xx tftp_test.txt

Some error conditions are yet to be fully handled.
2015-09-16 18:23:24 -07:00
Gurjant Kalsi
a6c8b005db [console] Use STATIC_COMMAND macro for all console command definitions
BUG=

Review URL: https://codereview.chromium.org/1348403002 .
2015-09-16 15:37:33 -07:00
Travis Geiselbrecht
69b092666b [app][tests] fix a warning and reformat a little 2015-09-10 12:11:34 -07:00
Carlos Pizano
14317c67b5 [app][tests] Make chache_tests take an optional address parameter.
Also reduce the last test from 16MB to 8MB, so it does not bomb on
some boards.
2015-09-08 18:24:48 -07:00
Travis Geiselbrecht
9118a4d605 [merge] merge from the stm32f7 branch
Conflicts:
	arch/arm/arm-m/arch.c
2015-08-28 15:03:17 -07:00
Travis Geiselbrecht
093ce2182f [app][inetsrv] allocate all buffers from the heap 2015-08-26 17:54:46 -07:00
Travis Geiselbrecht
dd0045a5c8 [app][tests] allow mem_test to take a base pointer 2015-08-17 11:59:28 -07:00
Brian Swetland
80beda8f90 [app][mdebug] bump fw version 2015-08-11 13:36:30 -07:00
Brian Swetland
8bf440f6bc [app][mdebug] protocol version to 1.1, adjust SWO_DATA packet format 2015-08-11 13:36:30 -07:00
Brian Swetland
13615192a4 [app][lpcboot] switch to vid:pid 1209:5039 allocated from pid.codes
http://pid.codes/1209/5039/
2015-08-06 23:13:59 -07:00
Brian Swetland
732a8aad55 [app][mdebug] move to new vid:pid 1209:5038 allocated from pid.codes
http://pid.codes/1209/5038/
2015-08-06 00:44:35 -07:00
Brian Swetland
80868e44ac [app][mdebug] improve error reporting, enable reboot command 2015-08-05 18:58:43 -07:00
Brian Swetland
90a3e98154 [app][mdebug] support faster SWO rates, default to 6Mbps 2015-08-05 14:57:43 -07:00
Brian Swetland
6c1530a3d0 [app][mdebug] handle some usb edge cases 2015-08-04 18:58:44 -07:00
Brian Swetland
aea581d644 [app][mdebug] support for SWO transport back to host 2015-08-04 18:00:52 -07:00
Brian Swetland
858d5eaf8e [app][mdebug] support v1.0 rswd protocol
- report protocol version, board id, build id, maxdata
- report swd clk frequency when it changes
2015-08-03 18:46:40 -07:00
Brian Swetland
9a630fcf52 [app][mdebug] change default build configuration
- use swd-m0sub instead of swd-sgpio
- disable lk console
2015-08-03 09:40:03 -07:00
Brian Swetland
965b66a78b [app][mdebug] adjust m0sub firmware a bit
- sample input just after the falling clock edge, since the target
  output changes with the rising clock edge
- bump retry max from 32 to 8192, since stm32f4 targets are observed
  to issue WAITs for 1500+ txns at 4MHz if CPU is not halted
- (disabled) option to report retries back to m4
2015-08-03 09:36:44 -07:00
Brian Swetland
148308cfcd [app][mdebug] avoid getting stuck if IN ACK is lost
If the host receives the IN response packet but the ACK from the host
is lost, we'd be stuck until the next IN, which wouldn't come because
the host does a simple send-request / read-response thing.  Instead,
don't wait for IN txns to complete unless there's already one outstanding.

This allows us to read the next request, at which point the host will
start an IN txn for the response, which will cause the previous IN txn
to complete.
2015-08-02 19:27:47 -07:00
Brian Swetland
70a0631c5f [app][mdebug] alternate swd implementation using M0 sub-processor 2015-08-02 19:23:11 -07:00
Brian Swetland
7423f264d4 [app][lpcboot] support flashing bl & app, launching app 2015-07-31 13:21:49 -07:00
Brian Swetland
855ac68ec0 [app][mdebug] don't poll for usb txn completion 2015-07-30 15:13:46 -07:00
Brian Swetland
9ad76f486a [app][mdebug] make setclock work 2015-07-30 10:21:12 -07:00
Brian Swetland
ba29c3452e [app][mdebug] firmware for m3debug/debugger
- supports lpc43xx/lpclink2
- some performance issues to shake out yet
- client side debugger: https://github.com/swetland/m3dev
2015-07-30 10:00:12 -07:00
Brian Swetland
0363aa6335 [app][lpcboot] microbootloader for nxp m3/m4 devices
- compatible with m3dev lpcboot tool
- supports lpc43xx with external spi flash right now
- suitable for acting as a second stage flash agent after rom dfu download
2015-07-26 23:05:41 -07:00
Brian Swetland
a17c1b3a89 [app][udctest] exercise the udc api 2015-07-26 12:28:10 -07:00
Travis Geiselbrecht
440a1d50fe [app][tests][cache_test] fix the order of an error printf 2015-07-10 00:52:17 -07:00