Commit Graph

254 Commits

Author SHA1 Message Date
Gregory Nutt
54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -06:00
Gregory Nutt
a3e28c2c16 audio NULL driver: Fix an error in a variable name 2014-08-09 10:33:31 -06:00
Gregory Nutt
6e0acd7cd4 WM8904: Don't use MSEC2TICK in timeout calculation 2014-08-08 11:02:45 -06:00
Gregory Nutt
c9661ad5a7 Change all time conversions. Yech. New timer units in microseconds breaks all existing logic that used milliseconds in the conversions. Something likely got broken doing this, probably because I confused a MSEC2TICK conversion with a TICK2MSEC conversion. Also, the tickless OS no appears fully functional and passes the OS test on the simulator with no errors 2014-08-07 18:00:38 -06:00
Gregory Nutt
bb29ba0a00 Costmetic changes 2014-08-05 10:03:29 -06:00
Gregory Nutt
8065ab73a4 WM8904: Add reset logic to put the part back in its initial state after playing each WAV file. Base samles per second on frame length, not bits-per-sample. Use a different frame length for 8-bit and 16-bit data 2014-08-04 19:26:43 -06:00
Gregory Nutt
dc8b040573 WM8904: Correct calculation of bitrate (I am not sure why this is correct). LR clock divisor is now a constant 32-bits per frame. Conditioned out interrupt logic; it is not being used. Also added some FLL lock interrupt/poll logic (which was subsequently disabled). 2014-08-04 15:08:20 -06:00
Gregory Nutt
c68e42c437 WM8904: Restore mystery bit in setup that was accidentally tossed before 2014-08-03 19:29:02 -06:00
Gregory Nutt
678c0aac8d WM8904: Tried disabling the SYSCLK while updating the FLL. Didn't help but is still probably a correct change 2014-08-03 18:44:51 -06:00
Gregory Nutt
72b739fbcb WM8904: Add logic to analyze BCLK setup 2014-08-03 17:11:38 -06:00
Gregory Nutt
b9384ced60 WM8904: Various updates to get BCLK/LRCLK correct. Acutally worse the parent, but I think is on the right track 2014-08-03 13:28:20 -06:00
Gregory Nutt
b0d0ac72a7 WM8904 driver: Disable the FFL at the end of playing. 2014-08-02 14:28:10 -06:00
Gregory Nutt
a2d6c0c2b4 WM8904: Add logic to program the FLL to achieve the bitrate 2014-08-02 12:40:57 -06:00
Gregory Nutt
f4bc0ad99a WM8904: Add an option to control WM8904 register dumping 2014-08-02 06:52:42 -06:00
Gregory Nutt
7e576e308a WM8904 I2C: Fix an error in writing. I am not sure why this fixes the problem 2014-08-01 18:22:33 -06:00
Gregory Nutt
e59bb45b33 Add debug logic to dump WM8904 registers 2014-08-01 18:07:20 -06:00
Gregory Nutt
3e1e15b04a WM8904: Can't reset the WM8904 unless we also reinitiailize all registers. Try to get a saner timeout based on sample rate, bits-per-sample, and buffer size. 2014-07-31 19:14:41 -06:00
Gregory Nutt
e214382264 Audio: Change how the end of the audio stream is detected by the leaf audio component. This used by be done by looking for the first partial buffer. That does not work with the in-place sub-sampling performed by the PCM decoder: That always reduces the size of the buffer so that all buffers only partially filled by the time they get to the leaf. Now, a flag is set in the audio buffer flags set to indicate the final buffer in the stream. 2014-07-31 16:36:09 -06:00
Gregory Nutt
487a672d76 WM8904: Was not saving i2s interface instance 2014-07-31 15:00:45 -06:00
Gregory Nutt
75daeb75a3 Fix some compile problems with the WM8904 driver due to recent audio subsystem changes 2014-07-28 16:33:25 -06:00
Gregory Nutt
c9f15ffd3d PCM: First cut at fast forward by subsampling 2014-07-27 18:33:17 -06:00
Gregory Nutt
0cc9b06eca Add definitions to support fast forward and rewind configuration 2014-07-27 12:25:40 -06:00
Gregory Nutt
014dd77237 Audio: Fix some compilation issues introduced with some of the recent changes 2014-07-25 11:27:29 -06:00
Gregory Nutt
08fa9a9d54 Costmetic change 2014-07-25 10:04:20 -06:00
Gregory Nutt
0399be55d3 Fix some compile errors when audio DEBUG is enabled 2014-07-24 15:05:13 -06:00
Gregory Nutt
22f8503d0a Convert ac_format and ac_controls to unions to make access a little cleaner 2014-07-24 10:21:04 -06:00
Gregory Nutt
dba43a9c75 Audio: Get rid of the decoder->driver IOCTLs that I added a couple of commits back; Use existing configure method 2014-07-24 09:56:39 -06:00
Gregory Nutt
e100726a41 Fix a type in the audio Kconfig file, UDIO->AUDIO 2014-07-23 14:48:21 -06:00
Gregory Nutt
72133f5d95 Add ioctls so that PCM decoder can configure the driver bitrate, num channels, and sample width 2014-07-23 12:21:04 -06:00
Gregory Nutt
516b343666 Flesh out missing PCM decoder methods 2014-07-23 11:58:43 -06:00
Gregory Nutt
ca7d7c34ce Audio: Add a NULL audio device that can be used to simply unit-level testing of audio decoders 2014-07-23 10:12:32 -06:00
Gregory Nutt
cfa76b5278 Flesh out a few more PCM methods, still incomplete. Re-vision PCM structure definition 2014-07-22 19:23:05 -06:00
Gregory Nutt
d7a9633dcd Rename pcm_decode.h to pcm.h since it will hold more than just decoding definitions. Fix some porting errors like idbg should auddbg, etc. Add wav file header and a few low-level wav utilities. 2014-07-22 15:54:56 -06:00
Gregory Nutt
8548c64915 Remove WM8904 driver unused paramters, clean-up comments, remove some kruft in capability reporting 2014-07-22 11:47:27 -06:00
Gregory Nutt
78d7925ce0 Kconfig: MW8904 driver no longer depends on EXPERIMENTAL (it probably still should) 2014-07-20 10:27:25 -06:00
Gregory Nutt
f4bcb730d2 WM8904 w/NxPlayer: Fix some compile errors and warnings with debug enabled 2014-07-20 09:17:36 -06:00
Gregory Nutt
4f6625380b The WM8904 audio driver is mostly code complete and ready to begin initial testing 2014-07-19 18:52:58 -06:00
Gregory Nutt
6d9f9e37bf SAMA5D4-EK: Add WM8904 initialization logic 2014-07-19 11:58:53 -06:00
Gregory Nutt
89ed7ab558 WM8904: Add initialization logic 2014-07-19 10:20:19 -06:00
Gregory Nutt
3b8c4a399d Framework for a WM8904 audio driver. The initial driver check-in is simply Ken Pettit's VS1053 driver forced to compile with only WM8904 definitions 2014-07-18 15:35:12 -06:00
Gregory Nutt
1ff0536c7f WM8904: Add header file support for this forcoming driver 2014-07-18 13:28:51 -06:00
Gregory Nutt
3a1324741a More trailing whilespace removal 2014-04-13 14:32:20 -06:00
Gregory Nutt
6b4796fa5a Fix typo cloned to many files: SAM32 vs SAM34 2014-02-12 13:00:24 -06:00
Gregory Nutt
91b002a043 Many changes to reduce complaints from CppCheck. Several latent bugs fixes, but probably some new typos introduced 2014-02-10 18:08:49 -06:00
Gregory Nutt
c33fe29c6b I2S character driver now supports configurable timeouts 2013-11-12 10:18:49 -06:00
Gregory Nutt
2dec8fbf58 Various fixes from initial attempts to integrate the SAMA5 SSC/I2C driver with the I2C character driver loopback test 2013-11-11 15:18:57 -06:00
Gregory Nutt
64a7e96f1f I2S simplifed audio buffer queuing 2013-11-10 14:51:33 -06:00
Gregory Nutt
9f10539750 Add apps/examples/i2schar that will eventually use the I2C character drvier to verify I2S 2013-11-10 14:08:45 -06:00
Gregory Nutt
926e91555d VS1053 worker thread stack size is now configurable; Worker thread is named via pthread_setname_np(). From Ken Pettit 2013-11-10 11:03:19 -06:00
Gregory Nutt
f5c82c0df9 Add an I2S character driver. This driver is only intended to support I2S testing and is inappropriate for use with real I2S devices 2013-11-10 10:24:09 -06:00
Gregory Nutt
de234b3a89 Add for audio sub-format in audion system. From Ken Pettit 2013-10-28 12:11:52 -06:00
Gregory Nutt
5fe465749f Updated VS1053 audio driver from Ken Pettit 2013-10-27 08:00:16 -06:00
Gregory Nutt
afa905fc15 Audio subystem update from Ken Pettit. Plus moved some header files 2013-05-21 13:13:05 -06:00
Gregory Nutt
5b86207177 Add audio/ sub-syste, include/nuttx/audio.h interface, and drivers/audio/vs1053.c driver to NuttX. From Ken Pettit 2013-05-19 15:12:28 -06:00