On Thursday 05 June 2008 11:24:09 am Haavard Skinnemoen wrote:
I quote that a lot. Along with Philip K. Dicks's "Sometimes an appropriate
response to reality is to go insane."
Yes, the SSC code. It'd be cool if it abstracted out even more, but I
understand the difficulties in making that happen.
I wasn't sure if having these in atmel-ssc.h fit with ya'lls plans for it, but
if it does, great.
The PDC interface is closer (if not exactly the same). One issue is the SSC
interface, which you have said could be used on the AT91. After that, the
main differences are that the DMA buffer has to be allocated differently, and
the mmap() implementation is different.
Please don't take my answer as authoritative, but I think it's because on a
typical PC the exact CODEC being used tends to be hidden from you. And you
normally don't use I2S or PCM directly. A PC sound card is more of a black
box.
It is important, and becoming more important all the time. I think the main
reasons this isn't a priority on a PC right now are:
- I think PC sound cards tend to be black boxes regarding power consumption,
especially those white box cards you can get at Fry's and similar places.
- A few extra mA aren't as important when you're plugged in, or you have a
laptop, which has a honkin' big battery compared to a PDA type device
- A few extra mA are dwarfed by other things in a PC, like the processor. My
Intel T7200 burns 34 W at full tilt. The AT32AP7000 is going to be something
like, what, 250 mW? Even throttled all the way down my T7200 is going to be
13 W. Turning off all or part of the CODEC and saving 15 - 30 mW is a lot
bigger deal on the AVR32 than it would be on my laptop.
- As you say, there is more code due to the power management, which requires
modifying a lot of working drivers, for little benefit in the forseeable
future.
---
Geoffrey
--