Problem setting up a sound device on OSD3358-512M-BSMbased custom board.

Forums Reference, Evaluation, and Development Boards OSD3358-SM-RED Problem setting up a sound device on OSD3358-512M-BSMbased custom board.

Viewing 1 reply thread
  • Author
    Posts
    • #10841
      Ivan Ivanovivan.ivanov
      Participant

        Hi All 🙂

        I hope I’m posting this in the right section.
        So, I’m tasked to activate a number of peripheral devices on a custom SBC board based on OSD3358-512M-BSM. I did hit a huge roadblock with the audio device. It’s based on PCM1774RGPR chip. From what I’ve gathered looking into osd3358-bsm-refdesign.dts the default sound device for this platform is supposed to be tda19988, compatible with “nxp,tda998x”… The main difference between the two (I think) is that tda19988 provides the sound for the HDMI connection, while in my case pcm1774rgpr simply outputs into a 3.5mm jack.

        The pcm1774rgpr is connected to the same pins the default tda19988 is connected to, and they’re supposed to be configured at the same modes, so no difference there. However pcm1774rgpr also makes use of spi1 cs0 interface for volume control, balance control, equalizer etc.. I’m not sure if that matters for a proper u-boot configuration.(i.e. DTB)

        I’m running a custom built kernel. built from the official octavo systems kernel git-repo source. Using menuconfig I have activated whatever drivers/kenel modules related to pcm179x pcm177x audio dacs this kernel supports.

        So far I’ve tried to activate the device by either modifying the main dtb file (osd3358-bsm-refdesign.dts) or my adding a dtbo file into uEnv.txt

        ————————————————————————————-
        Modifications to osd3358-bsm-refdesign.dts:
        Changed the status of the “tda19988: tda19988” node to “disabled”

        Added a sub-node to mcasp0 node:

        And lastly, in the “sound/simple-audio-card,codec” I changed:

        ————————————————————————–
        Custom dts file that I compile to dtbo… I named it sound-pcm1774-00A0.dts It is a modification of BB-HDMI-TDA998x-00A0.dts
        ——————– Contents ——————————————————

        —————————————————————–

        Whether I used the modified osd3358-bsm-refdesign.dts or the original osd3358-bsm-refdesign.dts with the sound-pcm1774-00A0.dtbo the result is the same and it’s as follows:

        After the device boots there is on ‘sound’ or ‘sound0’ device file in /dev/

        There’s supposed to be a file or dir named ‘card0’ if there was an active sound card

        As you can see all related kernel modules are loaded successfully.

        Sorry for the long post and I would greatly appreciate any help on the matter I’m really stuck with this thing.

        Thanks alot in dvance 🙂

      • #10901
        Neeraj Dantu
        Moderator

          Ivan,

          Looks like the codec can be used with either I2C or SPI control interface. Have you instantiated the proper control interface in the device tree? See https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/sound/pcm179x.txt and https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/sound/pcm1789.txt.

          Best,

          Neeraj

      Viewing 1 reply thread
      • You must be logged in to reply to this topic.