Romain Goyet
973a013d8b
[ion] Simulator uses the physical keyboard
...
Change-Id: I843faaa35931eae59bbe2d75eab36bc5820fb68e
2016-10-27 14:59:40 +02:00
Romain Goyet
5a2f12ad9f
[ion] Replay implementation of Ion::Events::getEvent
...
Change-Id: Idc6270ab0ebdfed5973c355a03f8bca0ba3f7b1f
2016-09-28 15:44:33 +02:00
Romain Goyet
6077a72ae3
[ion] Provision to clock the CPU at 96 MHz
...
Change-Id: I397ff23941dfff3ea3c2e217c0fb1ba242326cfb
2016-09-28 15:44:20 +02:00
Romain Goyet
d6c52ac3d0
[ion] Avoid explicit namespaces when they're not needed
...
Change-Id: Ibe523d0aadaf4d408f915d705475fcd779caa2a7
2016-09-21 13:57:00 +02:00
Romain Goyet
c55c4aba37
[ion] Increase the stack size to 32 KB
...
Turns out 4K was too small for our usage pattern (we measured an
overflow when drawing function curve - probably because we store a
little bit of bitmap data on the stack). So the same area was used for
the heap *and* the stack, causing terrible memory corruption.
We could use a stronger pattern (stack on the SRAM boundary + MPU to
trigger an exception when overflowing the stack) to prevent memory
smashing.
Change-Id: I4d187e154322f18e1e7deddd75f7242af777ade3
2016-09-21 13:52:26 +02:00
Romain Goyet
7ab49e9371
[ion] Remove the framebuffer from the memory map
...
Change-Id: I9b8aaacc93ec1eac54045a1d654986e1777ba4ad
2016-09-21 13:51:52 +02:00
Romain Goyet
e3c6264068
[ion] Remove _liba_heap_start, simply use _heap_start
...
Change-Id: I395762275f3aa1832210dfc3faae9c0eefb91d9e
2016-09-21 13:50:58 +02:00
Romain Goyet
66298f5cb6
[ion] Enable building with --gc-sections
...
Change-Id: Ibddb03d5fc95f99954583a51c02257dfcba3a326
2016-09-16 11:43:14 +02:00
Romain Goyet
09309d535b
[ion] Update the linker script for the device
...
Change-Id: I000b9d91707be06a808cc92a499526087d8a6d50
2016-09-16 11:43:14 +02:00
Romain Goyet
8d1f6b8f1d
[ion] Actual device suspend
...
Change-Id: I572be97169f8042122649fa7144643d8fdc217d7
2016-09-16 10:38:08 +02:00
Romain Goyet
0645a799f9
[ion] Regs now have a SCR register for Cortex M4
...
Change-Id: I890e13ef2fed1bc7b9af06dfb15a6057e183c31f
2016-09-16 10:38:08 +02:00
Romain Goyet
99691c8e3f
[ion] device/led now supports suspend/resume
...
Change-Id: Icff96947d94659d035a690cb53233d2bc77b285e
2016-09-16 10:38:08 +02:00
Romain Goyet
284a42c5a3
[ion] device/display now implements suspend/resume
...
Change-Id: Icdf99ea9a41e740df6825ad6349967320f0432b7
2016-09-16 10:38:08 +02:00
Romain Goyet
b5ec82b488
[ion] Remove a warning about an unused variable (m_index in ADC)
...
Change-Id: I678147f682a3f132991a9fa2ca8586c458ceb6de
2016-09-15 20:47:22 +02:00
Romain Goyet
99a4e3de91
[ion] Enable suspend/resume
...
Change-Id: I1fe580de7f98b95c768416ca889a7d74dad851ca
2016-08-31 17:07:41 +02:00
Romain Goyet
a380bbdaad
[ion] Simpler pixel pushing
...
Change-Id: Ifdc461a80375d03d10a55230225f4d0465fada44
2016-08-30 15:21:55 +02:00
Romain Goyet
de449606d5
[ion] Cleanup
...
Change-Id: Ie978e8554f181d8d46fbc535c58d1a9021deb7c9
2016-08-29 16:58:52 +02:00
Romain Goyet
19c484640f
[ion] Measure the battery voltage
...
Change-Id: Ic3c05eb65e2db3a66f2d2413821a0c121facd98f
2016-08-29 16:55:48 +02:00
Romain Goyet
a46e14f238
[ion] Fix a typo
...
Change-Id: Icf984602b58ef1c0ace87f2a2efaa75a4a6fc433
2016-08-29 13:38:06 +02:00
Romain Goyet
55ce65be9c
[ion] Set the backlight on boot
...
Change-Id: Ifdb7a14ff4667633b6aed85fc61b88dd4467b3bf
2016-08-29 13:38:06 +02:00
Romain Goyet
831c42796b
[ion] Add battery-related functions
...
Change-Id: Ib63b48140a8347d0d07902d956a3685fb040c481
2016-08-29 13:25:14 +02:00
Romain Goyet
457b7215fd
[Ion] Enable setting the LED's color
...
Change-Id: Ib3e25be8d180f9d19ad3a0d0861b210d8a702194
2016-08-23 17:29:07 +02:00
Romain Goyet
439f2702d8
[Ion] Remove C registers
...
Change-Id: Ic6330126b38ec58f1936862693b5874989499017
2016-08-23 17:07:16 +02:00
Romain Goyet
753a4a7cb5
[Ion] Move to C++
...
Change-Id: Id75fca5e92a3fdf18258015bcda7cd70297b0fdb
2016-08-23 16:30:15 +02:00
Romain Goyet
d2ff3457b5
[ion] Fix RGB/BGR ordering on ili9341
...
Change-Id: I5e3aa5c811af0bff74f82373c6867ac7f45422e2
2016-08-18 17:43:43 +02:00
Romain Goyet
fb4a67ae41
[ion] Ensure ion_sleep is not optimized out
...
Change-Id: Ifb468a8bc163acade32225b39aa261d552bdb4c9
2016-08-18 17:16:10 +02:00
Romain Goyet
827ec2fc20
[ion] Update the keyboard for NW8902
...
Change-Id: Ieb04e4b729d6fb17355410d0877576c46cbc0865
2016-08-18 17:15:49 +02:00
Romain Goyet
2eeec9e929
[ion] Clean ion_sleep
...
Change-Id: Ib71e7e535ecd2ee572d09f2e64f2cba9368c614f
2016-08-18 16:45:36 +02:00
Romain Goyet
809fdfdfab
[ion] Cleanup
...
Change-Id: I14d1cb07cd075a40db4ab4e6246d5b3d1cc2140a
2016-08-18 16:36:49 +02:00
Romain Goyet
596d0d3876
[Ion] Much simpler display driver
...
Change-Id: Ia64a14ca5ed58f70590a27b968569832a0ecb722
2016-08-18 16:35:55 +02:00
Romain Goyet
a0aa16c504
[ion] Enable the FSMC
...
Change-Id: Ic564b819723bd5b1049ba5695095d7d9034cc665
2016-08-18 16:29:13 +02:00
Romain Goyet
1b233c5ee2
[ion] Clean the RCC class
...
Change-Id: I1c2c28baf1cce407ce06888a16e2eabe2be57b19
2016-08-16 14:17:36 +02:00
Romain Goyet
656eceb39c
[ion] Split the regs headers
...
Change-Id: I5046ecb132bff215a1e256a70fe75d31a2c3fe2e
2016-08-10 14:19:11 +02:00
Romain Goyet
331bd3f480
[ion] Improve the register header
...
Change-Id: I109ad5779049e6ea7144492f7310b42933ecd626
2016-08-10 11:50:43 +02:00
Romain Goyet
f3787ac0da
[ION] Use C++ for the LED PWM settings
...
Change-Id: I46b70ee703f35173913c953bcfe4442336f740b5
2016-08-09 14:47:46 +02:00
Romain Goyet
ada53fed0d
PWM LED driving
...
Change-Id: Ic3eb3c13e5a0f35e13caf96039304647b2363bd2
2016-08-05 18:44:12 +02:00
Romain Goyet
5de28e01db
Migrate Kandinsky to C++
...
Change-Id: I2752a8db84ad0bb817119cf6c2993c1622621150
2016-07-21 13:42:32 +02:00
Romain Goyet
30aa62e3c5
Escher: Introduce the TiledView
...
Change-Id: I97d612cf89bd9cf45f8b440881918b9626cd65f6
2016-07-21 11:32:33 +02:00
Romain Goyet
8e4b1666bb
Kandinsky: KDFillRect takes a pattern, always
...
Change-Id: I32113345d742f21c0e238c1707bcee0116694d6f
2016-07-05 13:32:47 +02:00
Romain Goyet
e10f688124
ION: Use a color framebuffer on the simulator
...
Change-Id: Ie7aeb91b07295774bfbdb77e1e08ac744693c193
2016-06-16 11:30:16 +02:00
Romain Goyet
96d1973276
Ion: Don't forget parethesis in macro definitions
...
Change-Id: Ibec0acaffc7d16ea84dbebe6d2cdb9c0731937e3
2016-06-13 12:59:50 +02:00
Romain Goyet
80296e6448
Escher: use ion_fill_rect
...
Change-Id: Ibedac8cb7da905d5cfada6dbbce46cac4bab2eae
2016-06-10 18:30:19 +02:00
Romain Goyet
ac4660bf3b
ION: SCREEN_WIDTH becomes ION_SCREEN_WIDTH
...
Change-Id: Ifc7d06b773f8660cff30e727f510eea448b23852
2016-06-10 17:32:31 +02:00
Romain Goyet
7a389ca11b
ION: Clean the st7789 driver
...
Change-Id: I706768fc49cb48ea3d965807efc0c6c825d96683
2016-06-10 17:16:19 +02:00
Romain Goyet
c07ef9a3f6
Ion: Increase the number of keys to match NW8901
...
Change-Id: Iaad8bf8167cc53cbe9869997dbdecba91a1196cc
2016-06-10 15:46:14 +02:00
Romain Goyet
4ac040ac0f
Ion: Updated keyboard driver to match NW8901
...
Change-Id: I8ba2db36afb4d437b5452ec06fbde3b8bc781397
2016-06-10 15:15:07 +02:00
Romain Goyet
3fc55b5fd4
Ion: Cleaner macros
...
Change-Id: I81cc67b04b9e0d8053f098a9c363b7f56a72481f
2016-06-10 14:59:51 +02:00
Romain Goyet
d1ea456709
Ion: Remove dead code
...
Change-Id: Ie6d026c11ba2bf97686a1eac00e738d2366a4857
2016-06-09 16:52:34 +02:00
Romain Goyet
4db9e030f7
Ion: Remove LCD DMA
...
Change-Id: I59b47e43b2c1a6cfad6dcd7e6cdb25f66dd8f830
2016-06-09 16:37:48 +02:00
Romain Goyet
cfb44503b9
Ion: Use the new device's SPI config
...
Change-Id: I2151d42f803b3be8fde8d856382e58cd581dcb7c
2016-06-09 16:37:48 +02:00