Commit Graph

36 Commits

Author SHA1 Message Date
Gregory Nutt
b285162e79 Fix some warnings in audio code causing by fixing the prototypes of mq_send() and mq_receive() 2015-02-09 12:50:04 -06:00
Gregory Nutt
2994448d85 More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs. 2014-11-25 13:15:09 -06:00
Gregory Nutt
205260d5e2 Reanem kzalloc to kmm_zalloc for consistency 2014-08-31 17:34:44 -06:00
Gregory Nutt
54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -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
014dd77237 Audio: Fix some compilation issues introduced with some of the recent changes 2014-07-25 11:27:29 -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
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
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
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