Hi Neil,

Not sure if you already solved this but you are getting this error due to 
following:



*[   43.009888] pinctrl-single 44e10800.pinmux: pin PIN100 already 
requested by ocp:P9_31_pinmux; cannot claim for 48038000.mcasp[   
43.009914] pinctrl-single 44e10800.pinmux: pin-100 (48038000.mcasp) status 
-22[   43.009926] pinctrl-single 44e10800.pinmux: could not request pin 100 
(PIN100) from group pinmux_bone_audio_cape_audio_pins  on device 
pinctrl-single*

Your custom board is loading *am335x-boneblack-uboot-univ.dts* as the 
device tree. This dts adds *am335x-bone-common-univ.dtsi* which is already 
claiming P9_31. So just comment anything related to P9_31 on 
*am335x-bone-common-univ.dtsi* and rebuild 
*am335x-boneblack-uboot-univ.dts.*

Thank you,
Samer

On Thursday, January 14, 2021 at 4:49:13 AM UTC-7 Neil Cobbett wrote:

> Hi Ray,
>
> Thanks for the offer of help, very much appreciated! ;)  I've been going 
> around in circles for days with this problem.  I developed my own cape 
> around the TLV320 (in c. 2016) and it had been working fine previously.  
> I've upgraded from 3.x kernel to 4.x with some issues with device tree 
> changes (in c. 2018) but solved them pretty quickly.  This time, again I 
> want to upgrade to a later kernel and use a RT kernel due to some timing 
> 'jitter' issues I was having with the collected data.  The cape records the 
> VLF radio spectrum (basically audio) and is used to detect things like 
> solar flares.  It's very sensitive to phase shifts in signal so needs very 
> precise timing to keep running (I use a GPS Pulse per second fed into the 
> other channel of the sound card to act as an accurate phase reference 
> marker - GPS satellites use atomic clocks).  I started with a fresh 
> Beaglebone Install using the latest LTS RT kernel rather than working with 
> a patched system with numerous 'hacks'.  I moved my DTS files across and 
> recompiled but have gotten stuck with the McASP not working and ALSA not 
> detecting the soundcard.  It is to do with either the DTS file or some step 
> with uBoot loading the DTBO and ALSA detecting the hardware. 
>
> Anyway, on to your questions:
>
> 1.
> I2C is using i2C2 'bus 2'
> TLV320 is mapped to 0x1b
> I can also see the device assigned on this bus with the i2cdetect command.
>
> 2.
> McASP Pins:
>
> "P9.31",      /* mcasp0: mcasp0_aclkx */
> "P9.29",      /* mcasp0: mcasp0_fsx */
> "P9.28",      /* mcasp0: mcasp0_axr2 */
> "P9.25",      /* mcasp0: mcasp0_ahclkx */
>
>
> 3.
>
> Direction and Mode setting of the multiplexer:
>
> pinctrl-single,pins = <
>                                       0x190 0x20      /* 
> mcasp0_aclkx.mcasp0_aclkx, INPUT | MODE0 */
>                                       0x194 0x20      /* 
> mcasp0_fsx.mcasp0_fsx,     INPUT | MODE0 */
>                                       0x19c 0x22      /* 
> mcasp0_ahclkr.mcasp0_axr2, INPUT | MODE2 */
>                                       0x1ac 0x22      /* 
> mcasp0_ahclkx.mcasp0_axr3, INPUT | MODE2 */
>
> NB:  ^^^ not sure this direction setting ir tight but it has worked fine 
> previously so I have not touched it.
>
> 4.
> The dtbo worked fine in the last iteration using a 4.4 Kernel.  I upgraded 
> to a 5.4 RT kernel (RT_PREEMPT patch).  At first it complained with mapping 
> the pins:
>
> [   43.009888] pinctrl-single 44e10800.pinmux: pin PIN100 already 
> requested by ocp:P9_31_pinmux; cannot claim for 48038000.mcasp 
> [   43.009914] pinctrl-single 44e10800.pinmux: pin-100 (48038000.mcasp) 
> status -22 
> [   43.009926] pinctrl-single 44e10800.pinmux: could not request pin 100 
> (PIN100) from group pinmux_bone_audio_cape_audio_pins  on device 
> pinctrl-single 
>
>
> Doing a bit of searching on the web (where is the documentation for all 
> this new/changed information?) I found I now need to add the following to 
> the DTS file:
>
> P9_25_pinmux { status = "disabled"; };        /* mcasp0_ahclkx */
>                       P9_28_pinmux { status = "disabled"; };  /* mcasp0_axr2 
> */
>                       P9_29_pinmux { status = "disabled"; };  /* mcasp0_fsx */
>                       P9_30_pinmux { status = "disabled"; };  /* mcasp0_axr0 
> */
>                       P9_31_pinmux { status = "disabled"; };  /* mcasp0_aclkx 
> */
>
>
> Like I say, I'm not sure if this is what needs to be done since I can't 
> find any documentation to confirm but after drilling into newer DTS files 
> (AUDI-02), I see that to define my own pins, I need to 'disable' them from 
> some sort of generic Devicetree mapping.
>
>
> 5.
> Running 'sudo /opt/scripts/tools.version.sh' to look for problems, I am 
> now seeing no conflicts with ^^4. added to my DTS file.  However, Alsa is 
> still not detecting the soundcard; using aplay -l.  I'm not sure if it is 
> to do with me misunderstanding ^^ 4. or I am missing a further step 
> somewhere along the way.  I've done quite a bit of Alsa work before and I 
> am used to editing asound.conf files.  I dsnoop to allow different 
> experiments to connect to the same input sound stream simultaneously.  For 
> some reason the Kernel is loading Alsa BUT Alsa isn't seeing any soundcard 
> hardware. (BTW I've disabled HDMI; 
> uboot_overlay_options:[disable_uboot_overlay_video=1) since this use to 
> conflict with adding an additional soundcard.
>
> 6.
> RE: 'If using a cape and making changes, use install.sh or it won't 
> work.'  
> Can you explain what you mean here?  Previously, I compiled dts in my own 
> directory with dtc to get dtbo, copied dtbo to /lib/firmware then pointed 
> the uEnv file at the dtbo file.  Has this step changed or do I need to do 
> another intermediate step?
>
> RE: '-The better option is to learn how to create your own device tree and 
> put it as an Overlay in the uEnv.txt file.' 
> I think this is what I am doing already.
>
> What would be really good to have is some diagnostic tools like we had in 
> the older 3.x kernel.  Someway of easily checking the pin assignments and 
> some sort of debugging of the device tree.  Also a reference document.  A 
> lot of the stuff I find on line to explain how to create DTS files and add 
> user defined cape boards is out of date and mappings in /sys have changed.
>
> I've attached by DTS file.  NB:  I have added fragment@0 to fix ^^^4 but 
> other than that the old 'working' DTS file is the same.
>
> Thanks for offering to help Ray!
> Neil
>
>
>
>
> On Thu, 14 Jan 2021 at 03:16, 'Raymond Willis' via BeagleBoard <
> [email protected]> wrote:
>
>> Neil,
>> I think I can help. I worked on a custom prototype board and set up my 
>> own TLV320 with an Octavo RED board in predevelopment in the device tree 
>> and is working fine. Some things you absolutely need to know before 
>> changing things in the cape dts file.
>> -What I2C bus and pinmux are you using.
>> -What MCASP bus are you using in pinmux? Definitely need 2 of the 4 RX 
>> pins. 
>> - You need to learn how to set up your asound.conf file. This has so many 
>> possibilities based on how you want to sample the audio. 
>> -If using a cape and making changes, use install.sh or it won't work.
>> -The better option is to learn how to create your own device tree and put 
>> it as an Overlay in the uEnv.txt file.
>>
>> If the actual cape hasn't changed at all (pins). Then I'll show you how 
>> to just make a device tree of that cape overlay. 
>>
>> I'll provide more details tomorrow.
>>
>> Regards, 
>> Ray 
>>
>> Sent from Yahoo Mail on Android 
>> <https://go.onelink.me/107872968?pid=InProduct&c=Global_Internal_YGrowth_AndroidEmailSig__AndroidUsers&af_wl=ym&af_sub1=Internal&af_sub2=Global_YGrowth&af_sub3=EmailSignature>
>>
>> On Tue, Jan 12, 2021 at 6:37 PM, Neil Cobbett
>> <[email protected]> wrote:
>> HI,
>>
>> Has anyone managed to get the old/original Circuit Co Audio Cape Revision 
>> A working on the later kernels?
>>
>> This is the dts file associated with cape board and has worked fine on 
>> the older 3.x kernels:
>>
>> BB-BONE-AUDI-01.dts
>>
>> It doesn't seem to be installed/supported as part of the latest 
>> /lib/firmware directory. 
>> It compiles ok but when added to uEnv.txt it doesn't work:
>>
>>
>> debian@beaglebone:~$ sudo /opt/scripts/tools/version.sh  
>> [sudo] password for debian:  
>> git:/opt/scripts/:[fe926a6a4cf5805041878d7df82b58c00b4f902e] 
>> eeprom:[A335BNLTBWA51712EW004800] 
>> model:[TI_AM335x_BeagleBone_Black_Wireless] 
>> dogtag:[BeagleBoard.org Debian Buster IoT Image 2020-04-06] 
>> bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot SPL 
>> 2019.04-00002-g07d5700e21 (Mar 06 2020 - 11:24:55 -0600)]:[location: dd 
>> MBR] 
>> bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 
>> 2019.04-00002-g07d5700e21]:[location: dd MBR] 
>> bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot SPL 
>> 2018.03-00002-gac9cce7c6a (Apr 05 2018 - 13:07:46 -0500)]:[location: dd 
>> MBR] 
>> bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 
>> 2018.03-00002-gac9cce7c6a]:[location: dd MBR] 
>> UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts] 
>> UBOOT: Loaded Overlay:[BB-ADC-00A0] 
>> UBOOT: Loaded Overlay:[BB-BBBW-WL1835-00A0] 
>> UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0] 
>> UBOOT: Loaded Overlay:[BB-I2C1-FAST-00A0] 
>> UBOOT: Loaded Overlay:[BB-PWM2-00A0] 
>> UBOOT: Loaded Overlay:[BB-UART1-00A0] 
>> UBOOT: Loaded Overlay:[BB-UART2-00A0] 
>> kernel:[5.4.87-bone-rt-r41] 
>> nodejs:[v10.15.2] 
>> /boot/uEnv.txt Settings: 
>> uboot_overlay_options:[enable_uboot_overlays=1] 
>> uboot_overlay_options:[disable_uboot_overlay_video=1] 
>> uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-UART1-00A0.dtbo] 
>>
>> uboot_overlay_options:[uboot_overlay_addr1=/lib/firmware/BB-UART2-00A0.dtbo] 
>>
>> uboot_overlay_options:[uboot_overlay_addr2=/lib/firmware/BB-PWM2-00A0.dtbo] 
>>
>> uboot_overlay_options:[uboot_overlay_addr3=/lib/firmware/BB-I2C1-FAST-00A0.dtbo]
>>  
>>
>> uboot_overlay_options:[dtb_overlay=/lib/firmware/BB-BONE-AUDI-01-00A0.dtbo] 
>>
>> pkg check: to individually upgrade run: [sudo apt install --only-upgrade 
>> <pkg>] 
>> pkg:[bb-cape-overlays]:[4.14.20200403.0-0rcnee0~buster+20200403] 
>> pkg:[bb-customizations]:[1.20200306.0-0rcnee0~buster+20200306] 
>> pkg:[bb-usb-gadgets]:[1.20200322.0-0rcnee0~buster+20200322] 
>> pkg:[bb-wl18xx-firmware]:[1.20200322.0-0rcnee0~buster+20200322] 
>> pkg:[kmod]:[26-1] 
>> pkg:[librobotcontrol]:[1.0.4-git20190227.1-0rcnee0~buster+20190327] 
>> pkg:[firmware-ti-connectivity]:[20190717-2rcnee1~buster+20200305] 
>> groups:[debian : debian adm kmem dialout cdrom floppy audio dip video 
>> plugdev users systemd-journal bluetooth netdev i2c gpio pwm eqep remoteproc 
>> admin spi iio docker 
>> tisdk weston-launch xenomai cloud9ide] 
>> cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 
>> root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M 
>> net.ifnames=0 lpj=1990656 rng_cor
>> e.default_quality=100 quiet] 
>> dmesg | grep remote 
>> [    1.933071] remoteproc remoteproc0: wkup_m3 is available 
>> [    2.109940] remoteproc remoteproc0: powering up wkup_m3 
>> [    2.109966] remoteproc remoteproc0: Booting fw image 
>> am335x-pm-firmware.elf, size 217168 
>> [    2.110232] remoteproc remoteproc0: remote processor wkup_m3 is now up 
>> dmesg | grep pru 
>> dmesg | grep pinctrl-single 
>>
>>
>>
>>
>>
>>
>> *[    1.565521] pinctrl-single 44e10800.pinmux: 142 pins, size 568 [ 
>>    1.921849] pinctrl-single 44e10800.pinmux: pin PIN18 already requested by 
>> ocp:P9_14_pinmux; cannot claim for ocp:gpio-leds-cape-audio [    1.921870] 
>> pinctrl-single 44e10800.pinmux: pin-18 (ocp:gpio-leds-cape-audio) status 
>> -22 [    1.921881] pinctrl-single 44e10800.pinmux: could not request pin 18 
>> (PIN18) from group pinmux_bone_audio_cape_led_pins  on device 
>> pinctrl-single [   43.009888] pinctrl-single 44e10800.pinmux: pin PIN100 
>> already requested by ocp:P9_31_pinmux; cannot claim for 48038000.mcasp [ 
>>   43.009914] pinctrl-single 44e10800.pinmux: pin-100 (48038000.mcasp) 
>> status -22 [   43.009926] pinctrl-single 44e10800.pinmux: could not request 
>> pin 100 (PIN100) from group pinmux_bone_audio_cape_audio_pins  on device 
>> pinctrl-single *
>> dmesg | grep gpio-of-helper 
>> [    1.577714] gpio-of-helper ocp:cape-universal: ready 
>> lsusb 
>> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 
>> END
>>
>> ****
>>
>> The BB-BONE-AUDI-02 is supported but uses different pins for the I2S / 
>> McASP interface.  Also the I2C mapping is different.
>>
>> Can anyone point me at a working BB-BONE-AUDI-01.dts for the later BBB 
>> releases?
>>
>> I've tried editing the original but after several failed attempts, I 
>> can't get it to mount via alsa.
>>
>> Many Thanks
>>
>> -- 
>> For more options, visit http://beagleboard.org/discuss
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "BeagleBoard" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/beagleboard/9ec369e7-8985-4d6f-9937-92e1e830cf1dn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/beagleboard/9ec369e7-8985-4d6f-9937-92e1e830cf1dn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> -- 
>> For more options, visit http://beagleboard.org/discuss
>> --- 
>>
> You received this message because you are subscribed to a topic in the 
>> Google Groups "BeagleBoard" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/beagleboard/CCt_WjfHBC8/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/beagleboard/11045771.1057062.1610594190333%40mail.yahoo.com
>>  
>> <https://groups.google.com/d/msgid/beagleboard/11045771.1057062.1610594190333%40mail.yahoo.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/78d1ab0c-b408-495b-afe6-abfd7213b86bn%40googlegroups.com.

Reply via email to