Date: Tue, 3 Apr 2007 18:46:39 +0200 From: Olivier Houchard <mlfbsd@ci0.org> To: ticso@cicely.de Cc: Bernd Walter <ticso@cicely12.cicely.de>, freebsd-arm@freebsd.org Subject: Re: adding 16550 UART to RM9200 Message-ID: <20070403164639.GA15510@ci0.org> In-Reply-To: <20070403154858.GR80382@cicely12.cicely.de> References: <20070403154858.GR80382@cicely12.cicely.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, On Tue, Apr 03, 2007 at 05:48:58PM +0200, Bernd Walter wrote: > I plan to add up to 48 16550 UART to an RM9200 system. > It should be done with 16C554 chips - so I only have 16 byte FiFo. > I would like to avoid using 64 byte FiFo chips, but those are pin > compatible, so things are changeable in case. > Likely most of the ports are doing low volume and I hope this will > be Ok. > They will be addressed via NCS2 space. > Most of the external interrupts are not available because of > unfortunate multiplexing with other required signals, so I have to > attach them all to IRQ0. > The interrupt will be level configured by firmware. > And the NCS2 waitstates and buswidth will be configured by firmware > as well. > > However some question points are still left: > > - How can I attach our uart(4) driver to the chips? > It will likely addressed with: > UART0 0x30000000 - 0x30000007 IRQ0 > UART1 0x30000008 - 0x3000000f IRQ0 > UART2 0x30000010 - 0x30000017 IRQ0 > UART3 0x30000018 - 0x3000001f IRQ0 > UART4 0x30000020 - 0x30000027 IRQ0 > UART5 0x30000028 - 0x3000002f IRQ0 > [...] > UART47 0x30000170 - 0x30000177 IRQ0 > UART48 0x30000178 - 0x3000017f IRQ0 > I think you'll want to use hints. > - I would like to use a 14,7456MHz xtal > How can I tell uart(4) the frequency? > You can play with the struct uart_devinfo.bas.rclk field. > - How can I configure NCS2 range as being uncacheable? > I asume this has to be done somehow in the kernel. > pmap_mapdev() maps the physical range passed uncached, so you can use it. Cheers, Olivier
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070403164639.GA15510>