jepler
30a9346373
samd: audio_dma: Track channel allocation
...
Previously, we depended on allocated channels to always be
"dma_channel_enabled". However, (A) sometimes, many operations
would take place between find_free_audio_dma_channel and
audio_dma_enable_channel, and (B) some debugging I did led me to believe
that "dma_channel_enabled" would become false when the hardware ended
a scheduled DMA transaction, but while a CP object would still think it
owned the DMA channel.
((B) is not documented in the datasheet and I am not 100% convinced that
my debugging session was not simply missing where we were disabling the
channel, but in either case, it shows a need to directly track allocated
separately from enabled)
Therefore,
* Add audio_dma_{allocate,free}_channel.
* audio_dma_free_channel implies audio_dma_disable_channel
* track via a new array audio_dma_allocated[]
* clear all allocated flags on soft-reboot
* Convert find_free_audio_dma_channel to audio_dma_allocate_channel
* use audio_dma_allocated[] instead of dma_channel_enabled() to check
availability
* remove find_free_audio_dma_channel
* For each one, find a matching audio_dma_disable_channel to convert
to audio_dma_free_channel
Closes : #2058
2019-08-28 17:00:22 -05:00
jepler
0b00787b4d
samd: AudioOut: ensure stopped before deinit
...
.. otherwise, a sequence like
>>> a = audioio.AudioOut(board.A0)
>>> a.play(sample, loop=True)
>>> a.deinit()
would potentially leave related DMA channel(s) active.
2019-08-28 16:43:55 -05:00
Scott Shawcroft
42956a62a3
Merge pull request #2085 from tannewt/epd
...
Rework display refresh, add M4SK and add ePaper support
2019-08-27 10:06:14 -07:00
Scott Shawcroft
bea77c651a
Minor renames
2019-08-26 16:37:59 -07:00
Scott Shawcroft
7324b70a7c
Rework based on Dan's review
2019-08-23 15:27:21 -07:00
Scott Shawcroft
b992ca80e7
Rejigger builds to fit under 50 minute limit
2019-08-22 20:29:58 -07:00
Scott Shawcroft
72e7ffa324
More cleanup
2019-08-22 16:16:09 -07:00
Scott Shawcroft
fd8050b369
Turn off features to make room for ePaper
2019-08-22 15:19:45 -07:00
Scott Shawcroft
d2d27a01b9
Update translations
2019-08-22 14:29:51 -07:00
Scott Shawcroft
8d836fa248
Regular display fixes including refresh tweaks
2019-08-22 14:25:46 -07:00
Scott Shawcroft
9993a99906
Add initial Monster M4SK build
2019-08-22 14:24:32 -07:00
Scott Shawcroft
2497cbe186
Fix nrf builds
2019-08-22 14:23:33 -07:00
Scott Shawcroft
f8e4ccac45
Fix builds without displayio
2019-08-22 14:23:33 -07:00
Scott Shawcroft
f2a1972ba8
Add refresh_time to use if busy_pin is not given
2019-08-22 14:23:33 -07:00
Scott Shawcroft
3a98de1236
Add reset() to display busses to detect whether it works
2019-08-22 14:23:33 -07:00
Scott Shawcroft
24b30965c4
Refresh ePaper displays once code.py is done running
2019-08-22 14:23:32 -07:00
Scott Shawcroft
36a23e0fe3
Rework refresh API and factor common display stuff out
...
NOT TESTED! Just compiles
Fixes #1691
2019-08-22 14:23:27 -07:00
Scott Shawcroft
c247e7df9c
Begin refresh rework.
2019-08-22 14:08:33 -07:00
Benny Meisels
d37dd4d758
Updated ParallelBus implementation in nrf port
2019-08-22 14:08:33 -07:00
Scott Shawcroft
70680d5b22
EPaper displays work mostly.
2019-08-22 14:08:33 -07:00
Scott Shawcroft
8fa8737465
Initial ePaper work
2019-08-22 14:08:32 -07:00
Scott Shawcroft
1d973a0803
Merge pull request #2071 from dhalbert/shared-module-touchio
...
make nrf touchio be generic: now available for SAMD51 too
2019-08-22 14:03:52 -07:00
Dan Halbert
7cc15e56c8
make translate
2019-08-22 15:20:23 -04:00
Dan Halbert
18f441ae35
Merge pull request #2083 from dhalbert/no-32khz-xtal
...
Fix CPBlue LFCLKSRC; CPB has no status neopixel
2019-08-22 13:14:40 -04:00
Dan Halbert
0b7291d767
fix default crystal value; fix include order
2019-08-22 09:01:05 -04:00
Scott Shawcroft
6aa311aabd
Merge pull request #2027 from dastels/displayio_fill_area
...
To displayio.Display: expose fill_area and add a property for rotation
2019-08-21 23:48:21 -07:00
Dan Halbert
acc6df4959
merge similar fix in
2019-08-22 01:29:34 -04:00
Dan Halbert
d94023e9b3
Fix CPBlue LFCLKSRC; CPB has no status neopixel
2019-08-22 01:04:00 -04:00
Scott Shawcroft
524fa82092
Merge pull request #2081 from dhalbert/rotaryio-pin-check-fix
...
typo in IncrementalEncoder.c
2019-08-21 13:02:06 -07:00
Scott Shawcroft
389e7cc35d
Merge pull request #2072 from bmeisels/nrf-no-crystal-support
...
Add support for nrf boards that don't have an external crystal
2019-08-21 13:01:26 -07:00
Dave Astels
99a3da3b60
Get rid of the last bits of array dependancy
2019-08-21 15:24:39 -04:00
Dave Astels
d547d59cba
Merge remote-tracking branch 'adafruit/master' into displayio_fill_area
2019-08-21 15:02:51 -04:00
Dave Astels
dcf36db263
Make room
2019-08-21 14:46:10 -04:00
Dave Astels
8b2a1b9e97
Add message ids for translation
2019-08-21 14:19:42 -04:00
Dave Astels
5023b62268
Make them static (fixing build break?) as they aren't needed by Display
2019-08-21 14:08:24 -04:00
Dave Astels
8bbab01316
Remove unneeded lines
2019-08-21 13:57:52 -04:00
Dave Astels
56aad056da
getting the buffer info should happen first (due to its check)
2019-08-20 17:00:24 -04:00
Benny Meisels
fe2ec6c887
Add support for nrf boards that don't have an external crystal
2019-08-20 23:30:21 +03:00
Dan Halbert
6e3a6d0ac5
typo in IncrementalEncoder.c
2019-08-20 16:23:17 -04:00
Dan Halbert
95d728faf0
update tinyusb to upstream commit
2019-08-20 14:11:48 -04:00
Dave Astels
eb0a8cc0bf
Move the get_buffer call earlier
2019-08-20 13:48:12 -04:00
Dave Astels
0fd886fa7f
Remove array cast
2019-08-20 13:45:58 -04:00
Dan Halbert
e00696de7f
merge from upstream and make translate
2019-08-20 13:06:23 -04:00
Dan Halbert
58d29feab1
make translate
2019-08-20 13:02:01 -04:00
Dave Astels
f3d476aad8
Remove temporarily comments code
2019-08-20 12:25:56 -04:00
Dave Astels
53bb95a023
Rework to simplify
2019-08-20 10:05:41 -04:00
Dave Astels
10bc0d29d1
Switch to positional parameters
2019-08-20 10:05:09 -04:00
Dave Astels
2b7897cded
Fix typo
2019-08-20 10:03:36 -04:00
Dan Halbert
cccbbd956d
Detect lack of pulldown; check for pin in use
2019-08-19 23:40:34 -04:00
Scott Shawcroft
42143ca056
Merge pull request #2079 from dhalbert/tinyusb-update-00c440cb
...
update tinyusb to 00c440cb
2019-08-19 20:19:22 -07:00