sure, you can have a look at this diff, I found by googling: https://github.com/qdk0901/openwrt-mt7620/blob/master/target/linux/omap/patches-3.12/410-ARM-dts-am335x-evm-Add-audio-support-for-am335x-evm.patch
and some guide: http://processors.wiki.ti.com/index.php/AM335x_Audio_Driver%27s_Guide On Thu, Aug 15, 2019 at 4:22 PM Vinay Divakar <[email protected]> wrote: > How do I make a device in the kernel? Could you please shed some light? > > When you say"I2S and I2C are correctly connected", do you mean that I need > to have the audio codec chip connected to these lines in order for the I2S > to work? Can't I just pump out I2S signals by playing some wav file and > capture it via the logic analyzer?. > > Kind Regards > *Vinay Divakar* > Firmware Engineer at Adroit, New Zealand > LinkedIn <http://www.linkedin.com/in/vinaydivakar> | Website > <https://deeplyembedded.org/> | Github > <https://github.com/deeplyembeddedWP> | Freelance > <https://www.freelancer.in/u/deeplyembedded> > > On Wed, 14 Aug 2019 at 21:02, Yiling Cao <[email protected]> wrote: > >> You need to make a device in the kernel, to initialize/register the audio >> codec, given I2S and I2C are correctly connected. >> >> On Wed, Aug 14, 2019 at 2:03 PM Vinay Divakar <[email protected]> >> wrote: >> >>> I am using BeagleBone Green. I don't have anything connected to the i2s >>> signals except for the logic analyzer. >>> >>> Nope, haven't modified the kernel. Using the same one got from the IoT >>> Debian Flasher image from the latest image on beagleboard.org. >>> >>> Kind Regards >>> *Vinay Divakar* >>> Firmware Engineer at Adroit, New Zealand >>> LinkedIn <http://www.linkedin.com/in/vinaydivakar> | Website >>> <https://deeplyembedded.org/> | Github >>> <https://github.com/deeplyembeddedWP> | Freelance >>> <https://www.freelancer.in/u/deeplyembedded> >>> >>> On Wed, 14 Aug 2019 at 17:49, Yiling Cao <[email protected]> wrote: >>> >>>> can you send us the audio part of schematics? >>>> >>>> have you modified kernel? 2018-oct-5 says kernel not modified. >>>> >>>> On Wed, Aug 14, 2019 at 12:16 AM <[email protected]> wrote: >>>> >>>>> >>>>> I am unable to get the I2S signals from the beaglebone. Below are the >>>>> things I did. >>>>> >>>>> 1. I first disabled the HDMI audio as described here >>>>> <https://github.com/beagleboard/linux/issues/101>. >>>>> 2. I am using the P9.31 (SCLK), P9.28 (Data0) and P9.29(FSX/WS). >>>>> Running sudo /opt/scripts/tools/version.sh gives the following. >>>>> >>>>> debian@beaglebone:/boot$ sudo /opt/scripts/tools/version.sh >>>>> [sudo] password for debian: >>>>> git:/opt/scripts/:[1aa73453b2c980b75e31e83dab7dd8b6696f10c7] >>>>> eeprom:[A335BNLT00C02315BBBK4ACD] >>>>> model:[TI_AM335x_BeagleBone_Black] >>>>> dogtag:[BeagleBoard.org Debian Image 2018-10-07] >>>>> bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot >>>>> 2018.09-00002-g0b54a51eee]:[location: dd MBR] >>>>> kernel:[4.14.71-ti-r80] >>>>> nodejs:[v6.14.4] >>>>> uboot_overlay_options:[enable_uboot_overlays=1] >>>>> uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-BONE-AUDI-02.dtbo] >>>>> uboot_overlay_options:[disable_uboot_overlay_audio=1] >>>>> uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-RPROC-4-14-TI-00A0.dtbo] >>>>> uboot_overlay_options:[enable_uboot_cape_universal=1] >>>>> pkg check: to individually upgrade run: [sudo apt install --only-upgrade >>>>> <pkg>] >>>>> pkg:[bb-cape-overlays]:[4.4.20180928.0-0rcnee0~stretch+20180928] >>>>> pkg:[bb-wl18xx-firmware]:[1.20180517-0rcnee0~stretch+20180517] >>>>> pkg:[kmod]:[23-2rcnee1~stretch+20171005] >>>>> pkg:[librobotcontrol]:[1.0.3-git20181005.0-0rcnee0~stretch+20181005] >>>>> pkg:[firmware-ti-connectivity]:[20170823-1rcnee1~stretch+20180328] >>>>> groups:[debian : debian adm kmem dialout cdrom floppy audio dip video >>>>> plugdev users systemd-journal i2c bluetooth netdev cloud9ide gpio pwm >>>>> eqep admin spi tisdk weston-launch xenomai] >>>>> cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 >>>>> root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M >>>>> net.ifnames=0 quiet] >>>>> dmesg | grep pinctrl-single >>>>> [ 1.107553] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 >>>>> size 568 >>>>> dmesg | grep gpio-of-helper >>>>> [ 1.119437] gpio-of-helper ocp:cape-universal: ready >>>>> END >>>>> >>>>> >>>>> 1. Running perl /opt/scripts/device/bone/show-pins.pl gives the >>>>> following. >>>>> >>>>> debian@beaglebone:/boot$ perl /opt/scripts/device/bone/show-pins.pl >>>>> P8.25 / eMMC d0 0 U7 fast rx up 1 mmc 1 d0 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.24 / eMMC d1 1 V7 fast rx up 1 mmc 1 d1 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.05 / eMMC d2 2 R8 fast rx up 1 mmc 1 d2 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.06 / eMMC d3 3 T8 fast rx up 1 mmc 1 d3 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.23 / eMMC d4 4 U8 fast rx up 1 mmc 1 d4 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.22 / eMMC d5 5 V8 fast rx up 1 mmc 1 d5 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.03 / eMMC d6 6 R9 fast rx up 1 mmc 1 d6 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.04 / eMMC d7 7 T9 fast rx up 1 mmc 1 d7 >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.19 8 U10 fast rx down 7 gpio 0.22 >>>>> ocp/P8_19_pinmux (pinmux_P8_19_default_pin) >>>>> P8.13 9 T10 fast rx down 7 gpio 0.23 >>>>> ocp/P8_13_pinmux (pinmux_P8_13_default_pin) >>>>> P8.14 10 T11 fast rx down 7 gpio 0.26 >>>>> ocp/P8_14_pinmux (pinmux_P8_14_default_pin) >>>>> P8.17 11 U12 fast rx down 7 gpio 0.27 >>>>> ocp/P8_17_pinmux (pinmux_P8_17_default_pin) >>>>> P8.12 12 T12 fast rx down 7 gpio 1.12 >>>>> ocp/P8_12_pinmux (pinmux_P8_12_default_pin) >>>>> P8.11 13 R12 fast rx down 7 gpio 1.13 >>>>> ocp/P8_11_pinmux (pinmux_P8_11_default_pin) >>>>> P8.16 14 V13 fast rx down 7 gpio 1.14 >>>>> ocp/P8_16_pinmux (pinmux_P8_16_default_pin) >>>>> P8.15 15 U13 fast rx down 7 gpio 1.15 >>>>> ocp/P8_15_pinmux (pinmux_P8_15_default_pin) >>>>> P9.15 16 R13 fast rx down 7 gpio 1.16 >>>>> ocp/P9_15_pinmux (pinmux_P9_15_default_pin) >>>>> P9.23 17 V14 fast rx down 7 gpio 1.17 >>>>> ocp/P9_23_pinmux (pinmux_P9_23_default_pin) >>>>> P9.14 18 U14 fast rx down 7 gpio 1.18 >>>>> ocp/P9_14_pinmux (pinmux_P9_14_default_pin) >>>>> P9.16 19 T14 fast rx down 7 gpio 1.19 >>>>> ocp/P9_16_pinmux (pinmux_P9_16_default_pin) >>>>> P9.11 28 T17 fast rx down 7 gpio 0.30 >>>>> ocp/P9_11_pinmux (pinmux_P9_11_default_pin) >>>>> P9.13 29 U17 fast rx down 7 gpio 0.31 >>>>> ocp/P9_13_pinmux (pinmux_P9_13_default_pin) >>>>> P9.12 30 U18 fast rx down 7 gpio 1.28 >>>>> ocp/P9_12_pinmux (pinmux_P9_12_default_pin) >>>>> P8.26 31 V6 fast rx down 7 gpio 1.29 >>>>> ocp/P8_26_pinmux (pinmux_P8_26_default_pin) >>>>> P8.21 / eMMC clk 32 U9 fast rx up 2 mmc 1 clk >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P8.20 / eMMC cmd 33 V9 fast rx up 2 mmc 1 cmd >>>>> mmc@481d8000 (pinmux_emmc_pins) >>>>> P9.15 34 T13 fast rx up 7 gpio 2.00 >>>>> P8.18 35 V12 fast rx down 7 gpio 2.01 >>>>> ocp/P8_18_pinmux (pinmux_P8_18_default_pin) >>>>> P8.07 36 R7 fast rx down 7 gpio 2.02 >>>>> ocp/P8_07_pinmux (pinmux_P8_07_default_pin) >>>>> P8.08 37 T7 fast rx down 7 gpio 2.03 >>>>> ocp/P8_08_pinmux (pinmux_P8_08_default_pin) >>>>> P8.10 38 U6 fast rx down 7 gpio 2.04 >>>>> ocp/P8_10_pinmux (pinmux_P8_10_default_pin) >>>>> P8.09 39 T6 fast rx down 7 gpio 2.05 >>>>> ocp/P8_09_pinmux (pinmux_P8_09_default_pin) >>>>> P8.45 / hdmi / sysboot 0 40 R1 fast 0 lcd d0 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.46 / hdmi / sysboot 1 41 R2 fast 0 lcd d1 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.43 / hdmi / sysboot 2 42 R3 fast 0 lcd d2 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.44 / hdmi / sysboot 3 43 R4 fast 0 lcd d3 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.41 / hdmi / sysboot 4 44 T1 fast 0 lcd d4 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.42 / hdmi / sysboot 5 45 T2 fast 0 lcd d5 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.39 / hdmi / sysboot 6 46 T3 fast 0 lcd d6 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.40 / hdmi / sysboot 7 47 T4 fast 0 lcd d7 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.37 / hdmi / sysboot 8 48 U1 fast 0 lcd d8 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.38 / hdmi / sysboot 9 49 U2 fast 0 lcd d9 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.36 / hdmi / sysboot 10 50 U3 fast 0 lcd d10 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.34 / hdmi / sysboot 11 51 U4 fast 0 lcd d11 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.35 / hdmi / sysboot 12 52 V2 fast 0 lcd d12 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.33 / hdmi / sysboot 13 53 V3 fast 0 lcd d13 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.31 / hdmi / sysboot 14 54 V4 fast 0 lcd d14 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.32 / hdmi / sysboot 15 55 T5 fast 0 lcd d15 >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.27 / hdmi 56 U5 fast down 0 lcd vsync >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.29 / hdmi 57 R5 fast down 0 lcd hsync >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.28 / hdmi 58 V5 fast down 0 lcd pclk >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P8.30 / hdmi 59 R6 fast down 0 lcd oe/acb >>>>> 0-0070 (nxp_hdmi_bonelt_pins) >>>>> P9.22 / spi boot clk 84 A17 fast rx down 7 gpio 0.02 >>>>> ocp/P9_22_pinmux (pinmux_P9_22_default_pin) >>>>> P9.21 / spi boot in 85 B17 fast rx down 7 gpio 0.03 >>>>> ocp/P9_21_pinmux (pinmux_P9_21_default_pin) >>>>> P9.18 / spi boot out 86 B16 fast rx down 7 gpio 0.04 >>>>> ocp/P9_18_pinmux (pinmux_P9_18_default_pin) >>>>> P9.17 / spi boot cs 87 A16 fast rx down 7 gpio 0.05 >>>>> ocp/P9_17_pinmux (pinmux_P9_17_default_pin) >>>>> P9.42a 89 C18 fast rx down 7 gpio 0.07 >>>>> ocp/P9_42_pinmux (pinmux_P9_42_default_pin) >>>>> P9.20 / cape i²c sda 94 D18 fast rx up 3 i²c 2 sda >>>>> ocp/P9_20_pinmux (pinmux_P9_20_default_pin) >>>>> P9.19 / cape i²c scl 95 D17 fast rx up 3 i²c 2 scl >>>>> ocp/P9_19_pinmux (pinmux_P9_19_default_pin) >>>>> P9.26 96 D16 fast rx down 7 gpio 0.14 >>>>> ocp/P9_26_pinmux (pinmux_P9_26_default_pin) >>>>> P9.24 97 D15 fast rx down 7 gpio 0.15 >>>>> ocp/P9_24_pinmux (pinmux_P9_24_default_pin) >>>>> P9.31 / hdmi audio clk 100 A13 fast rx down 7 gpio 3.14 >>>>> ocp/P9_31_pinmux (pinmux_P9_31_default_pin) >>>>> P9.29 / hdmi audio fs 101 B13 fast rx down 7 gpio 3.15 >>>>> ocp/P9_29_pinmux (pinmux_P9_29_default_pin) >>>>> P9.30 102 D12 fast rx down 7 gpio 3.16 >>>>> ocp/P9_30_pinmux (pinmux_P9_30_default_pin) >>>>> P9.28 / hdmi audio data 103 C12 fast rx down 7 gpio 3.17 >>>>> ocp/P9_28_pinmux (pinmux_P9_28_default_pin) >>>>> P9.42b 104 B12 fast rx down 7 gpio 3.18 >>>>> ocp/P9_92_pinmux (pinmux_P9_92_default_pin) >>>>> P9.27 105 C13 fast rx down 7 gpio 3.19 >>>>> ocp/P9_27_pinmux (pinmux_P9_27_default_pin) >>>>> P9.41 106 D13 fast rx down 7 gpio 3.20 >>>>> ocp/P9_91_pinmux (pinmux_P9_91_default_pin) >>>>> P9.25 / audio osc 107 A14 fast rx down 7 gpio 3.21 >>>>> ocp/P9_25_pinmux (pinmux_P9_25_default_pin) >>>>> P9.41 / jtag emu3 109 D14 fast rx down 7 gpio 0.20 >>>>> ocp/P9_41_pinmux (pinmux_P9_41_default_pin) >>>>> >>>>> >>>>> 1. I have hooked my beaglebone's i2s signals to a logic analyzer >>>>> and use aplay to play a .wav file as shown below. >>>>> >>>>> debian@beaglebone:~/UnoExampleTracks$ aplay 001_Sweeper.wav >>>>> >>>>> When I try playing the track, I get the following errors and no >>>>> signals on the i2s bus: >>>>> >>>>> debian@beaglebone:~/UnoExampleTracks$ aplay 001_Sweeper.wav >>>>> ALSA lib confmisc.c:767:(parse_card) cannot find card '0' >>>>> ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_card_driver >>>>> returned error: No such file or directory >>>>> ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings >>>>> ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_concat >>>>> returned error: No such file or directory >>>>> ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name >>>>> ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer >>>>> returned error: No such file or directory >>>>> ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or >>>>> directory >>>>> ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM default >>>>> aplay: main:788: audio open error: No such file or directory >>>>> >>>>> Below is the kernel version I am using: >>>>> >>>>> debian@beaglebone:~/UnoExampleTracks$ uname -a >>>>> Linux beaglebone 4.14.71-ti-r80 #1 SMP PREEMPT Fri Oct 5 23:50:11 UTC >>>>> 2018 armv7l GNU/Linux >>>>> >>>>> Also, when I run aplay -l, I get the following: >>>>> >>>>> debian@beaglebone:~/UnoExampleTracks$ aplay -l >>>>> aplay: device_list:270: no soundcards found... >>>>> >>>>> >>>>> My intent is to connect a pcm5102 DAC module to the i2s lines and go >>>>> from there. Before moving to the pcm5102, I decided it would be a good >>>>> idea >>>>> to first get the i2s bus up and running. Could someone please provide >>>>> insights o what I may be doing wrong. >>>>> >>>>> -- >>>>> 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/76a210cd-bb53-451f-8234-1cb3ebaa87e1%40googlegroups.com >>>>> <https://groups.google.com/d/msgid/beagleboard/76a210cd-bb53-451f-8234-1cb3ebaa87e1%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> >>>> >>>> -- >>>> Yiling Cao >>>> http://ariaboard.com/ >>>> http://shanghainovotech.com/ >>>> >>>> -- >>>> 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/CAMMUdpJ-OLtRnBm-OjiPwu8hNN5m8wSZt-ugoZ0tySdEirvbOA%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/beagleboard/CAMMUdpJ-OLtRnBm-OjiPwu8hNN5m8wSZt-ugoZ0tySdEirvbOA%40mail.gmail.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/CAL4GkmPyL0NoxFKffP0iuW_-BeiiRYC3UKUbMNx65mB%3DQ1gOFA%40mail.gmail.com >>> <https://groups.google.com/d/msgid/beagleboard/CAL4GkmPyL0NoxFKffP0iuW_-BeiiRYC3UKUbMNx65mB%3DQ1gOFA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> >> >> -- >> Yiling Cao >> http://ariaboard.com/ >> http://shanghainovotech.com/ >> >> -- >> 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/CAMMUdpJdCeY%2BMCxHYW7Xt56NSXA2H0tFPrz%2Bg_ZaURugzc4kAA%40mail.gmail.com >> <https://groups.google.com/d/msgid/beagleboard/CAMMUdpJdCeY%2BMCxHYW7Xt56NSXA2H0tFPrz%2Bg_ZaURugzc4kAA%40mail.gmail.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/CAL4GkmMeSv69VVMkqJF9O1uMoyqVGaPp3Y%3DNpbPdgmxV3HkEuA%40mail.gmail.com > <https://groups.google.com/d/msgid/beagleboard/CAL4GkmMeSv69VVMkqJF9O1uMoyqVGaPp3Y%3DNpbPdgmxV3HkEuA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- Yiling Cao http://ariaboard.com/ http://shanghainovotech.com/ -- 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/CAMMUdp%2Bg8G-nen%3DwotW-rHo-WdQw02tZDvLvVboxvDu_%2BC0RKg%40mail.gmail.com.
