Commit graph

514 commits

Author SHA1 Message Date
bunnie
4bb355aec6
Merge pull request #66 from betrusted-io/bunnie-dev
merge in codec
2021-05-09 01:22:47 +08:00
bunnie
08a86749fe fix hosted mode bugs 2021-05-09 01:13:16 +08:00
bunnie
a8a35fa434 roll back heapless crate on ime-frontend 2021-05-08 23:55:08 +08:00
bunnie
a24803354c refactor xous-names to eliminate heapless
see issue #30
2021-05-08 23:34:08 +08:00
bunnie
391122823d refactor heapless version in attempt to debug issue that cropped up in xous-names
somehow, updating the toolchain has broken the FnvIndexMap implementation
2021-05-08 18:44:23 +08:00
bunnie
b904a114fe this commit crashes on boot 2021-05-08 16:40:44 +08:00
bunnie
7f7bdbff88 this will play the long sample. and it works! :) 2021-05-08 03:41:04 +08:00
bunnie
15fc4a6c36 audio working, trying out longer samples 2021-05-08 03:14:14 +08:00
bunnie
fe6b417643 checkpoint 2021-05-08 01:13:30 +08:00
bunnie
46fa8fa01e extend shellchat to allow for multiple callback registrations 2021-05-07 16:22:06 +08:00
bunnie
b3a60faec2 audio checkpoint 2021-05-07 15:09:51 +08:00
bunnie
7dd66a4c18 playback is mostly working and stable 2021-05-07 05:42:39 +08:00
bunnie
adc7f8e98d cleanup the i2c API
condense async/sync methods into a single one and decide which
is which based upon the presence of an Option<callback>
2021-05-06 14:03:06 +08:00
bunnie
b50aa60591 clean up some visibilities and warnings, get rid of the old, bad API 2021-05-06 05:13:23 +08:00
bunnie
bc82dbd157 transition i2c api on codec, finally found the damn race condition 2021-05-06 05:05:17 +08:00
bunnie
75bb4805b1 clean up RTC server to use the new I2C API 2021-05-06 04:16:31 +08:00
bunnie
b596c40dd6 refactor I2C to have work queue, cleaner (but untested) APIs 2021-05-06 03:40:04 +08:00
bunnie
bb5bc1d212 refactor i2c to break out the i2c machine to a separate server
the concurrency issues on I2C are getting hairy, and it was probably a
dubious decision from the start to merge I2C into the LLIO block; but
originally this was motivated by the idea of keeping all the
"miscellaneous slow stuff" in one process to keep the memory footprint
small and make code a bit more readable.

Keeping I2C in the same process space as the LLIO but splitting it
into its own thread and server splits the difference, by giving us
more options to deal with the concurrency, without inflating the size
of the kernel binary and allocating a lot of extra static data.
2021-05-06 00:45:14 +08:00
bunnie
eb75299dd0
Update README.md 2021-05-06 00:44:01 +08:00
bunnie
ea06df6879 test case for >1 page lends not working 2021-05-05 01:37:25 +08:00
bunnie
d17ae106f1 kernel panic on memory lend 2021-05-05 00:58:48 +08:00
bunnie
7a7e77d346 intermediate checkin, taking a break 2021-05-04 19:08:56 +08:00
bunnie
61611caddd some general ideas to debug later 2021-05-04 02:47:03 +08:00
bunnie
f8979d6341 intermediate progress on audio. doesn't compile. 2021-05-04 02:22:35 +08:00
bunnie
a4ca725c2a add a reset to an i2c core 2021-05-03 21:24:37 +08:00
bunnie
01e2c7edca migrate to an interrupt-handler only I2C handler
the amount of time it takes to send messages to initiate each
packet is too slow, and causing timeouts. By handling the I2C
directly in an interrupt handler, we accelerate the bus, at
the expense of no visibility via log/trace messages.
2021-05-03 18:53:17 +08:00
bunnie
d65e91f792 refactor i2c to be in the implementation block 2021-05-03 18:14:58 +08:00
bunnie
50174f99e5 re-org the codec crate so that it can accommodate gnarly backends
This is in anticipation of:

1) supply chain issues causing CODEC chips to change out
2) host integration being a PITA
2021-05-03 00:31:05 +08:00
bunnie
f558f75116 add the skeleton for the codec server 2021-05-03 00:20:51 +08:00
bunnie
dcb9956bcc add a "skeleton" server which is a template for other servers 2021-05-03 00:19:45 +08:00
bunnie
abf308e82d try to trace down issue #61 2021-05-02 16:39:08 +08:00
bunnie
a2280639d9 forgot to uncomment a line 2021-05-02 16:13:06 +08:00
bunnie
05df98d1c1 disable suspend/resume support in hosted mode
hosted mode doesn't have suspend/resume support, and it's
not worth debugging subtle issues on that side of the fence
that seem to be OS-dependent.
2021-05-02 16:10:51 +08:00
bunnie
0621fed5d6 back up debugging statements 2021-05-02 12:51:41 +08:00
bunnie
8b29fc4dd3 make the sleep note screen a little more aesthetic 2021-05-02 03:57:40 +08:00
bunnie
0ca2f58c6e add a note to indicate if we're in cold sleep
it's not terribly aesthetic right now, but we can fix that later.
2021-05-02 03:36:54 +08:00
bunnie
b17753ce8b retrofit the rest of the servers for suspend/resume
we can now do suspend/resume in the xous chat!
2021-05-02 01:38:44 +08:00
bunnie
85d78439d7 fcc-agent is now deprecated 2021-05-01 21:01:46 +08:00
bunnie
c7f1fe0817 cleanup after debugging ticktimer
the problem was that the load signal was not being respected
by the hardware, small patch to FPGA required but now all is OK.
2021-05-01 20:56:12 +08:00
bunnie
b28dff273f intermediate checkin figuring out ticktimer issue
seems to be a hardware problem with the loading routine
2021-05-01 19:13:22 +08:00
bunnie
087bb39ea7 chase down some bugs
noted there is a heisenbug on the ticktimer, it only manifests
when the log level is at info. go figure!
2021-05-01 02:26:28 +08:00
bunnie
20040c5e02 fix a bogus error path that primarily trips up hosted mode 2021-05-01 01:12:32 +08:00
bunnie
142d512ffb remove a redundant check 2021-05-01 00:49:27 +08:00
bunnie
46fe3885dc cleanup more turds left over during the bringup of suspend/resume 2021-05-01 00:35:32 +08:00
bunnie
260b154741 clean up some boot process holdovers 2021-04-30 23:28:31 +08:00
bunnie
640ddb48e8 suspend/resume now works to hardware 2021-04-30 19:29:36 +08:00
bunnie
7053c2b7c6 able to detect the clean suspend, now figuring out how to resume 2021-04-30 05:00:03 +08:00
bunnie
0e2d57c9fb retrofit the kernel and loader to handle resume
and now the even harder debuggening begins...zomg o_O
2021-04-30 01:55:38 +08:00
bunnie
2d3a643d20 retrofit COM for suspend/resume 2021-04-29 23:53:35 +08:00
bunnie
a55735fb1f add llio to suspend/resume set 2021-04-29 23:15:47 +08:00