From: Kim Taylor <kmtaylor@gmx.com>
To: Daniel Mack <daniel@zonque.org>
Cc: alsa-devel@alsa-project.org
Subject: Re: Serial MIDI driver for PL011 - as found on BCM2835 hardware
Date: Wed, 22 Oct 2014 09:24:35 +1100 [thread overview]
Message-ID: <1413930275.13334.19.camel@linux-host> (raw)
In-Reply-To: <54460930.6060603@zonque.org>
On Tue, 2014-10-21 at 09:20 +0200, Daniel Mack wrote:
> Hi,
>
> Thanks for sharing this!
>
> On 10/21/2014 01:40 AM, Kim Taylor wrote:
> > I've written a driver for raw MIDI using the PL011. It is obviously
> > based on the snd-serial-u16550 module, with a couple of improvements:
> >
> > - I've implemented a drain() callback.
> >
> > - I've also implemented a half duplex mode based on a timer callback
> > which was necessary for reliable communication with my eMagic Unitor 8
> > hardware. (Testing with a serial link to other hardware shows that the
> > full duplex mode is also working.)
>
> So I guess you could patch the existing driver to make it work for your
> use case, right? I haven't looked at the code in detail, but from what
> you describe, that should be possible.
I'm not sure about that. As it uses a different UART chip, there is a
new probe() function, it uses memory mapped I/O, instead of i386
inb/outb, it gathers information from the ARM AMBA bus...
The only things that would remain unchanged are the output_trigger() and
output_write() functions. One possibility might be to abstract out all
read/write operations using function pointers, however, I believe that
the new driver is different enough to constitute a new module.
Or maybe there should be a third module (for example snd-serial-core,
containing any common functions, exporting them to both
snd-serial-u16550 and snd-serial-pl011?
>
> > It can be found here:
> > https://github.com/kmtaylor/rpi_patches/blob/master/serial-pl011.c
> >
> > If you think it should be included in the ALSA repository, please let me
> > know what to do next.
>
> Clone this repository:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
>
> and integrate your changes there, then send patches to this mailing
> list. Especially if you're doing it for the first time,
> Documentation/SubmittingPatches is a good read to omit some typical
> pitfalls.
Will do. Thanks.
next prev parent reply other threads:[~2014-10-21 22:25 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-20 23:30 Serial MIDI driver for PL011 - as found on BCM2835 hardware Kim Taylor
2014-10-20 23:40 ` Kim Taylor
2014-10-21 7:20 ` Daniel Mack
2014-10-21 22:24 ` Kim Taylor [this message]
2014-10-22 6:51 ` Takashi Iwai
2014-11-07 0:40 ` Kim Taylor
2014-11-07 10:05 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1413930275.13334.19.camel@linux-host \
--to=kmtaylor@gmx.com \
--cc=alsa-devel@alsa-project.org \
--cc=daniel@zonque.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.