On 04/19/16 11:05, Rick Mann wrote:
Yup, seems like it's 0:
[ 67.876673] davinci-mcasp 48038000.mcasp: Slots: 2, max_active_serializers: 1, active_serializers: 0, channels: 2, mcasp->num_serializer: 0 [ 67.889362] davinci-mcasp 48038000.mcasp: ASoC: can't set 48038000.mcasp hw params: -22
How can it be? can you take a look of the davinci_mcasp_set_pdata_from_of() function where the serial-dir is set up? Do we get the of_serial_dir32? What is the size of the array we got (val)?
It seems to be 0:
[ 8.411990] davinci-mcasp 48038000.mcasp: davinci_mcasp_probe: enter [ 8.453167] davinci-mcasp 48038000.mcasp: serial-dir: 0 [ 8.501317] davinci-mcasp 48038000.mcasp: invalid tdm slots: 0 [ 8.554405] davinci-mcasp 4803c000.mcasp: davinci_mcasp_probe: enter [ 8.562924] davinci-mcasp 4803c000.mcasp: serial-dir: 0 [ 8.635250] davinci-mcasp 4803c000.mcasp: invalid tdm slots: 0
Hrm, it seems that we can not read any of the parameters set by the DT fragment for mcasp0, my guess is that the tx-num-evt and rx-num-evt is not there either.
from the full log: the mcasp is loaded earlier than you have patched the DT with the audio overlay.
[ 8.220175] davinci-mcasp 48038000.mcasp: davinci_mcasp_probe: enter [ 8.268496] davinci-mcasp 48038000.mcasp: invalid tdm slots: 0 [ 8.323405] davinci-mcasp 4803c000.mcasp: davinci_mcasp_probe: enter [ 8.339936] davinci-mcasp 4803c000.mcasp: invalid tdm slots: 0 ... [ 33.432680] bone_capemgr bone_capemgr: part_number 'BB-BONE-AUDI-02', version 'N/A' [ 33.432719] bone_capemgr bone_capemgr: slot #4: override [ 33.432736] bone_capemgr bone_capemgr: Using override eeprom data at slot 4 [ 33.432752] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,BB-BONE-AUDI-02' [ 33.451729] bone_capemgr bone_capemgr: slot #4: dtbo 'BB-BONE-AUDI-02-00A0.dtbo' loaded; overlay id #0 [ 33.462646] 2-0018 supply IOVDD not found, using dummy regulator [ 33.462722] 2-0018 supply DVDD not found, using dummy regulator [ 33.462779] 2-0018 supply AVDD not found, using dummy regulator [ 33.462822] 2-0018 supply DRVDD not found, using dummy regulator [ 33.484174] asoc-simple-card sound: tlv320aic3x-hifi <-> 48038000.mcasp mapping ok [ 50.062097] davinci-mcasp 48038000.mcasp: Slots: 2, max_active_serializers: 1, active_serializers: 0, channels: 2 [ 50.072596] davinci-mcasp 48038000.mcasp: stream has more channels (2) than are enabled in mcasp (0) [ 50.072613] davinci-mcasp 48038000.mcasp: ASoC: can't set 48038000.mcasp hw params: -22
You can try to remove the mcasp module, do the DT fragment magic, reload the mcasp driver if it is not loaded automatically. But if you want to get it working properly you need to find the dts(i) file which set the mcasp0 and mcasp1 nodes to status = "okay"; In upstream we do not do this, so it must come from the bone changes.
BTW: can you check your mail client to wrap the lines around 78 characters?
I'm sorry, it seems to be an issue with OS X Mail. There are no settings to control this, despite the fact that I have it set to send "plain-text" email. I will try to insert hard carriage returns to shorten my typed text.