Commit graph

522 commits

Author SHA1 Message Date
Sean Cross
b617ed2f32 services: ticktimer-server: explicitly specify opcode numbers
These opcode numbers will be baked in at the ABI level for several
libraries such as libstd.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-20 12:47:02 +08:00
Sean Cross
eb7895d601 xous: add a return code to TerminateProcess
As part of this refactor, make `terminate_process()` a divergent call.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-20 11:01:00 +08:00
Sean Cross
ca1b9aa35c log-server: fix implementation of stdout/stderr
The buffer was incorrectly sized.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-19 20:56:32 +08:00
Sean Cross
b13b458b11 log-server: validate operation with libstd
This makes minor changes to the panic behavior when operating with a
libstd client.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-19 14:12:01 +08:00
bunnie
b06e8d2a81 fix issue with datetime on hosted mode on windows
just monkey-patch over the call in hosted mode...
2021-05-16 02:26:24 +08:00
bunnie
b36865a893 add some delay on hosted mode for failed name requests
helps make startup a bit more orderly on multi-core systems
2021-05-16 01:22:25 +08:00
Sean Cross
a8e9492560 log-server: implement opcodes and stdout
This allows the log server to support various opcodes, and gives us
stdout as a suitable command.

Signed-off-by: Sean Cross <sean@xobs.io>
2021-05-12 21:22:15 +08:00
Andrew
a68b24ab9c #41: Stop iterator when y exceeds one pixel beyond quadrant bounds. 2021-05-09 12:45:24 -07:00
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