Hello,
I want to add an array of Invensense Digital microphones via I2S interface and saw a kernel driver code ics43432.c [1] as codec which could work.
The microphone array needs settings and Masterclock, only sends Digital data at Bitclock rate and bitclock an Wordsync signal needed to drive a I2S data input.
I did not find any description activating these chips on the beaglebone, I have the beaglebone green.
So may questions:
- Does anybody know if this has been done and what steps are needed therefore ?
- If not, I guess I have to write at least an devicetree overlay. Is there something other to do ?
the documentation in kernel notes only two lines to add::
ics43432: ics43432 {
compatible = "invensense,ics43432";
};
where should i put this ?
- Is there a standard way writing a new overlay for the mcasp and codec and later add an new codec kernel source for an array ?
- Is it wise for example to start from ctag-face-2-4 dts as a template like am335x-boneblack-ctag-face.dts (not an overlay) or any other overlay only using I2S input.
Any recommendation ?
Any hints are appreciated.
Thanks !
[1]
https://github.com/beagleboard/linux/blob/4.4/sound/soc/codecs/ics43432.c[2]
https://github.com/beagleboard/linux/blob/4.4/Documentation/devicetree/bindings/sound/ics43432.txt