login
Header Space

 
 

Re: [PATCH 5/6] Clocklib: Use correct clock for IrDA on pxa

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Alan Cox <alan@...>
Cc: Dmitry <dbaryshkov@...>, Andrew Morton <akpm@...>, <linux-kernel@...>, <haavard.skinnemoen@...>, <lethal@...>, <philipp.zabel@...>, <pavel@...>, <tony@...>, <paul@...>
Date: Wednesday, April 9, 2008 - 5:37 pm

On Wed, Apr 09, 2008 at 09:52:33PM +0100, Alan Cox wrote:

There's more to FIR than just a baud rate change.  On PXA for instance,
SIR is implemented using the standard UART device in "SIR" mode, but FIR
is a completely separate hardware block with its own IRQs and clocks -
you need to switch the pin muxing from the UART to the FIR device.

So it's not just a matter of setting the baud rate to 4Mbps.

However, you can't just say "have two separate drivers and only use
one or the other" - all IrDA link negotiation is done at SIR at 9600
baud and only when negotiation is complete will the selected rate
become effective - be that SIR or FIR based.

So yes, using a ldisc for SIR (with a hook into the driver to tell the
driver to setup the port for IR) sounds ideal, but we're still going to
need to deal with the FIR device and switch IrDA between that and the
SIR UART ldisc.

Note - there are other reasons for finally sorting this out as well -
there are systems with IR which want to support both IrDA up to FIR
and other uart-based IR applications.  IIRC this came up on the iPAQs.
I forget exactly which applications but I believe lirc might fall into
the "want a serial port not the FIR network device interface" class.
Having SIR always go via ldiscs should sort that out nicely as well.
(I'm thinking maybe we want some control to set a port into IR
transmission/reception mode independent of selecting the IrDA ldisc -
but I'd suggest further research first - I may be just handwaving
about an already solved problem.)

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 0/6] Clocklib: generic clocks framework, Dmitry Baryshkov, (Thu Apr 3, 9:21 am)
[PATCH 6/6] Clocklib: use correct name for 3,6MHz clock, Dmitry Baryshkov, (Thu Apr 3, 9:24 am)
Re: [PATCH 6/6] Clocklib: use correct name for 3,6MHz clock, Dmitry Baryshkov, (Fri Apr 11, 6:25 am)
[PATCH 5/6] Clocklib: Use correct clock for IrDA on pxa, Dmitry Baryshkov, (Thu Apr 3, 9:24 am)
Re: [PATCH 5/6] Clocklib: Use correct clock for IrDA on pxa, Russell King, (Wed Apr 9, 5:37 pm)
[PATCH 4/6] Clocklib: support ARM pxa sub-arch., Dmitry Baryshkov, (Thu Apr 3, 9:23 am)
[PATCH 3/6] Clocklib: support sa1100 sub-arch., Dmitry Baryshkov, (Thu Apr 3, 9:23 am)
[PATCH 2/6] Clocklib: debugfs support, Dmitry Baryshkov, (Thu Apr 3, 9:23 am)
Re: [PATCH 2/6] Clocklib: debugfs support, Andrew Morton, (Mon Apr 7, 6:59 pm)
Re: [PATCH 2/6] Clocklib: debugfs support, Greg KH, (Mon Apr 7, 9:04 pm)
speck-geostationary