All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony PERARD <anthony.perard@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>,
	Julien Grall <julien.grall@linaro.org>,
	"patches@linaro.org" <patches@linaro.org>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [RFC 26/29] xen/arm: Add Exynos 4210 UART support for early printk
Date: Thu, 2 May 2013 11:51:08 +0100	[thread overview]
Message-ID: <5182451C.9030501@citrix.com> (raw)
In-Reply-To: <1367481513.21869.10.camel@zakaz.uk.xensource.com>

On 02/05/13 08:58, Ian Campbell wrote:
> On Wed, 2013-05-01 at 18:17 +0100, Anthony PERARD wrote:
>> > On 30/04/13 10:53, Ian Campbell wrote:
>>> > > On Mon, 2013-04-29 at 00:02 +0100, Julien Grall wrote:
>>>> > >> ---
>>>> > >>  config/arm32.mk                    |    1 +
>>>> > >>  xen/arch/arm/Rules.mk              |    4 ++
>>>> > >>  xen/arch/arm/arm32/Makefile        |    1 +
>>>> > >>  xen/arch/arm/arm32/debug-exynos5.S |   81 ++++++++++++++++++++++++++++++++++++
>>>> > >>  4 files changed, 87 insertions(+)
>>>> > >>  create mode 100644 xen/arch/arm/arm32/debug-exynos5.S
>>>> > >>
>>>> > >> diff --git a/config/arm32.mk b/config/arm32.mk
>>>> > >> index 593a1d1..01c1490 100644
>>>> > >> --- a/config/arm32.mk
>>>> > >> +++ b/config/arm32.mk
>>>> > >> @@ -17,6 +17,7 @@ CFLAGS += -marm
>>>> > >>  # Possible value:
>>>> > >>  #   - none: no early printk
>>>> > >>  #   - pl011: printk with PL011 UART
>>>> > >> +#   - exynos5: printk with the second exynos 5 UART
>>> > > 
>>> > > From the subject I infer that this UART is an Exynos 4210? If so I think
>>> > > that is the correct name to use here, consistent with the pl011 name
>>> > > above. (the alternative is that the pl011 is wrong...).
>>> > > 
>>> > > I suppose in principal a single driver might apply to multiple platforms
>>> > > but with different base addresses, but that at build time you need to
>>> > > choose a specific platform, which implies a particular driver. The
>>> > > current infrastructure doesn't really express that notion.
>>> > > 
>>> > > What about if we support a mutually exclusive (enforced only by the
>>> > > clash of symbols at link time) set of:
>>> > > 	CONFIG_EARLY_UART_PL011
>>> > > 	CONFIG_EARLY_UART_EXYNOS4210
>>> > > which if defined must be set to the physical address of the port?
>>> > > 
>>> > > This would mean users need to know the address of the UART on their
>>> > > platform rather than just being able to name the platform though.
>>> > > Perhaps that's a feature not a bug (i.e. they can choose which UART of
>>> > > multiple UARTs if they want). I suppose we could also support
>>> > > CONFIG_EARY_UART_PLATFORM=foo and translate into the above.
>>> > > 
>>> > > Or are there other hardcoded parameters (e.g. crystal rate) which stop
>>> > > this?
>>> > > 
>> > 
>> > This drivers have been written with the Exynos 5 platform in mind, so
>> > I'm not sure it can be called exynos4210.
> Maybe I'm confused, I had assumed that exynos4210 was a UART logic block
> which happened to have been dropped down onto the exynos5 SoC in much
> the same way that the Cortex-A15 contains several pl011 UART logic
> blocks. Is this not the case?

Sorry, I've been confused, I did not take close look enough to how the
Linux drivers was written, as the manual does not say anything about the
history. So yes, I feel better in calling the driver exynos4210, with
maybe a different name for the paddr which is exynos5250 specific I suppose.

> In exynos5250.dtsi in Linux the UART is described as compatible =
> "samsung,exynos4210-uart", is 4210 actually a previous revision of the
> Exynos processor which happens to have a compatible UART on it?

Yes, it seams to be the case, sorry for the confusion.

> What I want to avoid is the case where we have dozens of UART drivers
> which are all identical apart from the fact that they happen to be
> integrated into a different SoC (all the other Exynos5xxx variants for
> example), so I'd like to determine the most generic name for this driver
> possible.



>> >  There would be few differences
>> > that I can extract from Linux source code, the physical address is
>> > different and the few bit to use FIFO are also different but it's not
>> > use here in the early printk. And I'm almost sure the clock stuff would
>> > be different on an exynos4.
>> > 
>> > So, in my humble opinion, we should use exynos5 or exynos5250.


-- 
Anthony PERARD

  reply	other threads:[~2013-05-02 10:51 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-28 23:01 [RFC 00/29] Support multiple ARM platforms in Xen Julien Grall
2013-04-28 23:01 ` [RFC 01/29] xen/arm: lr must be included in range [0-nr_lr[ Julien Grall
2013-04-29 14:55   ` Ian Campbell
2013-04-29 15:13     ` Julien Grall
2013-04-28 23:01 ` [RFC 02/29] xen/arm: don't allow dom0 to access to vpl011 UART0 memory range Julien Grall
2013-04-29 14:57   ` Ian Campbell
2013-04-29 15:19     ` Julien Grall
2013-04-28 23:01 ` [RFC 03/29] xen/arm: Remove duplicated GICD_ICPIDR2 definition Julien Grall
2013-04-29 14:58   ` Ian Campbell
2013-04-28 23:01 ` [RFC 04/29] xen/arm: Bump early printk internal buffer to 512 Julien Grall
2013-04-29 15:01   ` Ian Campbell
2013-04-29 15:22     ` Julien Grall
2013-04-28 23:01 ` [RFC 05/29] xen/arm: Fix early_panic when EARLY_PRINTK is disabled Julien Grall
2013-04-29 15:01   ` Ian Campbell
2013-04-28 23:01 ` [RFC 06/29] xen/arm: Load dtb after dom0 kernel Julien Grall
2013-04-29 15:07   ` Ian Campbell
2013-04-29 15:29     ` Julien Grall
2013-04-28 23:01 ` [RFC 07/29] xen/arm: Create a hierarchical device tree Julien Grall
2013-04-29 15:19   ` Ian Campbell
2013-04-29 15:32     ` Julien Grall
2013-04-28 23:01 ` [RFC 08/29] xen/arm: Add helpers to use the " Julien Grall
2013-04-29 15:23   ` Ian Campbell
2013-04-29 15:40     ` Julien Grall
2013-04-29 16:55       ` Ian Campbell
2013-04-29 18:23         ` Julien Grall
2013-04-30  9:22           ` Ian Campbell
2013-04-28 23:01 ` [RFC 09/29] xen/arm: Add helpers to retrieve an address from " Julien Grall
2013-04-28 23:01 ` [RFC 10/29] xen/arm: Add helpers to retrieve an interrupt description " Julien Grall
2013-04-29 15:28   ` Ian Campbell
2013-04-29 15:45     ` Julien Grall
2013-04-29 16:56       ` Ian Campbell
2013-04-28 23:01 ` [RFC 11/29] xen/arm: Introduce gic_route_dt_irq Julien Grall
2013-04-29 15:28   ` Ian Campbell
2013-04-28 23:01 ` [RFC 12/29] xen/arm: Introduce gic_irq_xlate Julien Grall
2013-04-29 15:31   ` Ian Campbell
2013-04-29 15:52     ` Julien Grall
2013-04-28 23:01 ` [RFC 13/29] xen/arm: Use hierarchical device tree to retrieve GIC information Julien Grall
2013-04-29 15:35   ` Ian Campbell
2013-04-29 16:30     ` Julien Grall
2013-04-29 20:42     ` Julien Grall
2013-04-30  9:34       ` Ian Campbell
2013-04-30 18:04         ` Julien Grall
2013-05-01  8:14           ` Ian Campbell
2013-04-28 23:01 ` [RFC 14/29] xen/arm: Retrieve timer interrupts from the device tree Julien Grall
2013-04-29 15:38   ` Ian Campbell
2013-04-29 20:23     ` Julien Grall
2013-04-28 23:01 ` [RFC 15/29] xen/arm: Don't hardcode VGIC informations Julien Grall
2013-04-29 15:41   ` Ian Campbell
2013-04-29 16:42     ` Julien Grall
2013-04-30  9:03       ` Ian Campbell
2013-04-28 23:01 ` [RFC 16/29] xen/arm: Introduce a generic way to use a device from the device tree Julien Grall
2013-04-29 15:44   ` Ian Campbell
2013-04-29 16:58     ` Julien Grall
2013-04-28 23:02 ` [RFC 17/29] xen/arm: New callback in uart_driver to get device tree interrupt structure Julien Grall
2013-04-29 15:46   ` Ian Campbell
2013-04-29 17:09     ` Julien Grall
2013-04-30  9:05       ` Ian Campbell
2013-04-28 23:02 ` [RFC 18/29] xen/arm: add generic UART to get the device in the device tree Julien Grall
2013-04-29 15:51   ` Ian Campbell
2013-04-29 17:24     ` Julien Grall
2013-04-30  9:09       ` Ian Campbell
2013-04-30 11:05         ` Julien Grall
2013-04-30 12:41           ` Ian Campbell
2013-04-30 13:37             ` Julien Grall
2013-04-28 23:02 ` [RFC 19/29] xen/arm: Use device tree API in pl011 UART driver Julien Grall
2013-04-29 15:54   ` Ian Campbell
2013-04-29 17:27     ` Julien Grall
2013-04-28 23:02 ` [RFC 20/29] xen/arm: Use the device tree to map the address range and IRQ to dom0 Julien Grall
2013-04-29 15:59   ` Ian Campbell
2013-04-29 17:30     ` Julien Grall
2013-04-28 23:02 ` [RFC 21/29] xen/arm: WORKAROUND 1:1 memory mapping for dom0 Julien Grall
2013-04-29 16:13   ` Ian Campbell
2013-04-29 17:43     ` Julien Grall
2013-04-30  9:12       ` Ian Campbell
2013-04-28 23:02 ` [RFC 22/29] xen/arm: Allow Xen to run on multiple platform without recompilation Julien Grall
2013-04-29 16:15   ` Ian Campbell
2013-04-29 17:44     ` Julien Grall
2013-05-01 11:51   ` Stefano Stabellini
2013-04-28 23:02 ` [RFC 23/29] xen/arm: Add versatile express platform Julien Grall
2013-04-29 16:27   ` Ian Campbell
2013-04-29 17:52     ` Julien Grall
2013-04-30  9:12       ` Ian Campbell
2013-04-28 23:02 ` [RFC 24/29] xen/arm: Don't use pl011 UART by default for early printk Julien Grall
2013-04-29 16:45   ` Ian Campbell
2013-04-29 18:12     ` Julien Grall
2013-04-30  9:18       ` Ian Campbell
     [not found]         ` <CAPnVf8zQ-xhOqab5wVWGenJPdcRgwcr9t50EzMT372HSuPupPQ@mail.gmail.com>
2013-04-30 11:21           ` Julien Grall
2013-04-30 12:44             ` Ian Campbell
2013-04-30 13:39               ` Julien Grall
2013-04-30 13:51                 ` Ian Campbell
2013-04-30 13:57                   ` Julien Grall
2013-04-30 14:09                     ` Ian Campbell
2013-04-30  9:00   ` Ian Campbell
2013-04-30 11:24     ` Julien Grall
2013-04-28 23:02 ` [RFC 25/29] xen/arm: Add exynos 4210 UART support Julien Grall
2013-04-29 16:51   ` Ian Campbell
2013-04-29 18:12     ` Anthony PERARD
2013-04-29 18:21       ` Julien Grall
2013-04-30  9:22         ` Ian Campbell
2013-04-28 23:02 ` [RFC 26/29] xen/arm: Add Exynos 4210 UART support for early printk Julien Grall
2013-04-30  9:53   ` Ian Campbell
2013-05-01 17:17     ` Anthony PERARD
2013-05-02  7:58       ` Ian Campbell
2013-05-02 10:51         ` Anthony PERARD [this message]
2013-05-01 17:24   ` Anthony PERARD
2013-04-28 23:02 ` [RFC 27/29] xen/arm: Add platform specific code for the exynos5 Julien Grall
2013-04-30 10:00   ` Ian Campbell
2013-04-30 15:40     ` Julien Grall
2013-04-30 15:46       ` Ian Campbell
2013-04-30 16:11         ` Julien Grall
2013-04-28 23:02 ` [RFC 28/29] xen/arm: Support secondary cpus boot and switch to hypervisor " Julien Grall
2013-04-30 10:10   ` Ian Campbell
2013-04-30 11:52     ` Julien Grall
2013-04-28 23:02 ` [RFC 29/29] xen/arm64: Remove hardcoded value for gic in assembly code Julien Grall
2013-04-30 10:11   ` Ian Campbell
2013-04-29 10:17 ` [RFC 00/29] Support multiple ARM platforms in Xen Ian Campbell
2013-04-29 10:33   ` George Dunlap
2013-04-29 12:47     ` Julien Grall
2013-04-29 12:52     ` Ian Campbell
2013-04-29 12:45   ` Julien Grall
2013-04-29 16:13 ` Ian Campbell
2013-04-29 18:20   ` Julien Grall
2013-04-30  9:19     ` Ian Campbell

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=5182451C.9030501@citrix.com \
    --to=anthony.perard@citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=Stefano.Stabellini@eu.citrix.com \
    --cc=julien.grall@linaro.org \
    --cc=patches@linaro.org \
    --cc=xen-devel@lists.xen.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.