Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Oct 2016 18:11:58 -0700
From:      Russell Haley <russ.haley@gmail.com>
To:        Koz Ross <koz.ross@retro-freedom.nz>
Cc:        freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: BeagleBone Black - what still needs to be done for audio?
Message-ID:  <20161027011158.5492818.63815.14341@gmail.com>
In-Reply-To: <CABx9NuTk05jQ00HzFi2GHBAWpDaKtVaFRy-a%2BuNfCaribzyKrQ@mail.gmail.com>
References:  <20161026091428.GA1468@Sebastian> <CABx9NuSRrvnvrT4CRvUOgGDVf3bwfBJ-BmHi7EJq9FEEx9Xy8A@mail.gmail.com> <CABx9NuSwFQtHQtiua_fGdCbYwv%2B4RCYD0qBEAWZR9QwMHZCjyQ@mail.gmail.com> <CABx9NuTk05jQ00HzFi2GHBAWpDaKtVaFRy-a%2BuNfCaribzyKrQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Argh, I forgot all the links to sound. Look up sound in the man pages!

Russ

Sent=A0from=A0my=A0BlackBerry=A010=A0smartphone=A0on=A0the=A0Virgin=A0Mobil=
e=A0network.
=A0 Original Message =A0
From: Russell Haley
Sent: Wednesday, October 26, 2016 5:37 PM
To: Koz Ross
Cc: freebsd-arm
Subject: Re: BeagleBone Black - what still needs to be done for audio?

On Wed, Oct 26, 2016 at 4:27 PM, Russell Haley <russ.haley@gmail.com> wrote:
> On Wed, Oct 26, 2016 at 9:28 AM, Russell Haley <russ.haley@gmail.com> wro=
te:
>> On Wed, Oct 26, 2016 at 2:14 AM, Koz Ross <koz.ross@retro-freedom.nz> wr=
ote:
>>> I've been meaning to get into both ARM and BSD for a while, so I decide=
d I
>>> would begin with FreeBSD and a BeagleBone Black I have lying around. I =
read
>>> this page: https://wiki.freebsd.org/FreeBSD/arm/BeagleBoneBlack , which
>>> states
>>> that audio on the BBB 'still needs to be done'.
>>>
>>> I was wondering what it means by 'still needs to be done', and what
>>> precisely
>>> needs to be done to have working BBB audio. As I am very new to both AR=
M and
>>> BSD, could someone please fill me in? I would like to contribute if I c=
an.
>>
>>
>> That page is a little out of date, but I don't have a recent image for
>> my BBB. Have you tried running the latest image? If I remember
>> correctly:
>>
>> https://www.freebsd.org/where.html -> download the sd card image.
>>
>> xzcat <download-dir>/FreeBSD-11.0-RELEASE-arm-armv6-BEAGLEBONE.img.xz
>> | dd of=3D/dev/da<yer-sd-card> bs=3D1m (or is it bs=3D1M?)
>>
>> The FreeBSD handbook is the place to start at. It will give you
>> directions on how to get your image set up:
>>
>> https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/
>>
>> Once you're able to setup and test HDMI and have a running image,
>> you'll be in a better position to start looking at audio issues.
>>
>> Do you know anything about the BBB hardware? You'll need to find out
>> what the audio interface is and if the FreeBSD kernel supports it.
>> Then you need to find out if it's in the default kernel, if not,
>> you'll need to learn to build the kernel yourself (or build the module
>> and install and load it).
>
> I'm bored of Javascript at work... This looks like a good lead for you:
>
> https://www.element14.com/community/community/designcenter/single-board-c=
omputers/next-gen_beaglebone/blog/2013/05/28/bbb--audio-notes

Last post, I promise (with fingers crossed) and then I'll go home.
Talking to a hardware engineer, his general outline was this:

- I2S is a specific driver to output audio. It will typically be fed
into a hardware codec chip. That jives with the previous link I sent.
"The nice thing about the latter is what it derives the audio from; a
hardware I2S interface inside the AM3359, which sends data out to an
NXP TDA19988 for conversion to HDMI."

- The codec chip will need to be supported by the OS and is typically
set up using an I2C (Not I2S!)bus to set various configurations:
mono/stero/multichannel, data rates, output frequencies and the like.

So:
- What is the state of I2S for Arm on FreeBSD (specifically for the
TI AM3358)? I don't know.
- What is the state of the support for NXP TDA19988? Well it seems to
do video but not audio.

BBB Hardware schematic:
https://github.com/CircuitCo/BeagleBone-Black/blob/master/BBB_SCH.pdf?raw=
=3Dtrue
-->See Page 10 of 11 for the schematics.

http://datasheet.octopart.com/TDA19988BHN-C1%2C551-NXP-Semiconductors-datas=
heet-67049582.pdf
--> General datasheet with a nice simple picture of the inputs and
outputs.

>From those two diagrams one could surmize that pins AP0, AP1 and ACLK
are input from the I2S bus. Finally, here is the driver set for the TI
chips:

https://svnweb.freebsd.org/base/head/sys/arm/ti/am335x/

I saw some HDMI stuff in am335x_lcd.c but didn't get any further than that.

Good Luck!
Russ



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161027011158.5492818.63815.14341>