Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Mar 2014 19:34:08 -0700
From:      Oleksandr Tymoshenko <gonzo@bluezbox.com>
Cc:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: HDMI output on Beaglebone black
Message-ID:  <536748F0-FE1C-42CD-B33A-D7484282D840@bluezbox.com>
In-Reply-To: <7C58B233-1E84-47A3-ABB2-0038928BB1B2@bluezbox.com>
References:  <CAASDrVnu-0vJsnnp-rEQAT6dkg3eyNcjTejYzwwaKDpfkzFXdw@mail.gmail.com> <7C58B233-1E84-47A3-ABB2-0038928BB1B2@bluezbox.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Dec 26, 2013, at 1:18 PM, Oleksandr Tymoshenko <gonzo@bluezbox.com> =
wrote:

>=20
> On 2013-12-25, at 9:08 PM, "Lundberg, Johannes" =
<johannes@brilliantservice.co.jp> wrote:
>=20
>> Hi
>>=20
>> According to the readme for Beaglebone Black in crochet-freebsd there =
is no
>> support for HMDI output yet (as of Dec 2013).
>>=20
>> Does anyone know what is required to make this work?
>=20
> You need to write driver for NXP TDA19988 HDMI (LCD to HDMI =
converter), driver=20
> for LCD controller and vt/syscons wrapper. Also properly pinmux LCD =
pins in .dts.
>=20
> I did some experiments few months back but didn't get far:
> http://people.freebsd.org/~gonzo/arm/patches/bbb-tda.diff

I got a little bit further with this and thought I=1B$B!G=1B(Bd better =
post my WIP before somebody=20
wastes his/her time fixing things that=1B$B!G=1B(Bs already fixed.
Here is diff of my work dir:=20
http://people.freebsd.org/~gonzo/arm/patches/tda19988.diff

There are several problems fixed comparing to first patch:

- Fixed HDMI controller I2C address
- Register write should be one I2C transaction
- Current TI I2C driver  can=1B$B!G=1B(Bt read more bytes than FIFO =
length. I moved read/write=20
    handler to ithread, instead of notifying requesting thread with =
wakeup.

Kernel with this patch can read and parse EDID. I failed to get video
output working even with test pattern (part of code commented by "#if =
0=1B$B!I=1B(B).=20

Part of this code is direct copy-paste from linux driver just to get =
something=20
working before re-coding it properly.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?536748F0-FE1C-42CD-B33A-D7484282D840>