* [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards.
@ 2014-03-19 15:18 Konrad Rzeszutek Wilk
2014-03-19 15:29 ` Jan Beulich
0 siblings, 1 reply; 4+ messages in thread
From: Konrad Rzeszutek Wilk @ 2014-03-19 15:18 UTC (permalink / raw)
To: keir, jbeulich, xen-devel
Which of course has a different model number and sports two
serial outputs.
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
xen/drivers/char/ns16550.c | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
index 429d786..7caa86c 100644
--- a/xen/drivers/char/ns16550.c
+++ b/xen/drivers/char/ns16550.c
@@ -105,6 +105,7 @@ enum {
param_default = 0,
param_trumanage,
param_oxford,
+ param_oxford_2port,
};
/*
* Create lookup tables for specific MMIO devices..
@@ -130,6 +131,16 @@ static const struct ns16550_config_param __initconst uart_param[] = {
.fifo_size = 16,
.lsr_mask = UART_LSR_THRE,
.max_bars = 1, /* It can do more, but we would need more custom code.*/
+ },
+ [param_oxford_2port] = {
+ .base_baud = 4000000,
+ .uart_offset = 0x200,
+ .first_offset = 0x1000,
+ .reg_width = 1,
+ .reg_shift = 0,
+ .fifo_size = 16,
+ .lsr_mask = UART_LSR_THRE,
+ .max_bars = 2,
}
};
static const struct ns16550_config_mmio __initconst uart_config[] =
@@ -161,12 +172,24 @@ static const struct ns16550_config_mmio __initconst uart_config[] =
/* OXPCIe952 1 Native UART */
{
.vendor_id = PCI_VENDOR_ID_OXSEMI,
+ .dev_id = 0xc158,
+ .param = param_oxford_2port,
+ },
+ /* OXPCIe952 1 Native UART */
+ {
+ .vendor_id = PCI_VENDOR_ID_OXSEMI,
.dev_id = 0xc13d,
.param = param_oxford,
},
/* OXPCIe952 1 Native UART */
{
.vendor_id = PCI_VENDOR_ID_OXSEMI,
+ .dev_id = 0xc15d,
+ .param = param_oxford_2port,
+ },
+ /* OXPCIe952 1 Native UART */
+ {
+ .vendor_id = PCI_VENDOR_ID_OXSEMI,
.dev_id = 0xc40b,
.param = param_oxford,
},
--
1.7.7.6
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards.
2014-03-19 15:18 [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards Konrad Rzeszutek Wilk
@ 2014-03-19 15:29 ` Jan Beulich
2014-03-19 15:54 ` Konrad Rzeszutek Wilk
0 siblings, 1 reply; 4+ messages in thread
From: Jan Beulich @ 2014-03-19 15:29 UTC (permalink / raw)
To: Konrad Rzeszutek Wilk; +Cc: keir, xen-devel
>>> On 19.03.14 at 16:18, Konrad Rzeszutek Wilk <konrad@kernel.org> wrote:
> @@ -161,12 +172,24 @@ static const struct ns16550_config_mmio __initconst uart_config[] =
> /* OXPCIe952 1 Native UART */
> {
> .vendor_id = PCI_VENDOR_ID_OXSEMI,
> + .dev_id = 0xc158,
> + .param = param_oxford_2port,
> + },
> + /* OXPCIe952 1 Native UART */
> + {
> + .vendor_id = PCI_VENDOR_ID_OXSEMI,
> .dev_id = 0xc13d,
> .param = param_oxford,
> },
> /* OXPCIe952 1 Native UART */
> {
> .vendor_id = PCI_VENDOR_ID_OXSEMI,
> + .dev_id = 0xc15d,
> + .param = param_oxford_2port,
> + },
> + /* OXPCIe952 1 Native UART */
> + {
> + .vendor_id = PCI_VENDOR_ID_OXSEMI,
> .dev_id = 0xc40b,
> .param = param_oxford,
> },
While at first I only wanted to ask by what principle these entries
are being ordered, I now additionally wonder what really
distinguishes them (beyond the device ID): They all have the same
name, and even the newly added ones say "1 native UART",
despite the patch subject saying "two port".
Jan
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards.
2014-03-19 15:29 ` Jan Beulich
@ 2014-03-19 15:54 ` Konrad Rzeszutek Wilk
2014-03-19 15:59 ` Jan Beulich
0 siblings, 1 reply; 4+ messages in thread
From: Konrad Rzeszutek Wilk @ 2014-03-19 15:54 UTC (permalink / raw)
To: Jan Beulich; +Cc: Konrad Rzeszutek Wilk, keir, xen-devel
On Wed, Mar 19, 2014 at 03:29:31PM +0000, Jan Beulich wrote:
> >>> On 19.03.14 at 16:18, Konrad Rzeszutek Wilk <konrad@kernel.org> wrote:
> > @@ -161,12 +172,24 @@ static const struct ns16550_config_mmio __initconst uart_config[] =
> > /* OXPCIe952 1 Native UART */
> > {
> > .vendor_id = PCI_VENDOR_ID_OXSEMI,
> > + .dev_id = 0xc158,
> > + .param = param_oxford_2port,
> > + },
> > + /* OXPCIe952 1 Native UART */
> > + {
> > + .vendor_id = PCI_VENDOR_ID_OXSEMI,
> > .dev_id = 0xc13d,
> > .param = param_oxford,
> > },
> > /* OXPCIe952 1 Native UART */
> > {
> > .vendor_id = PCI_VENDOR_ID_OXSEMI,
> > + .dev_id = 0xc15d,
> > + .param = param_oxford_2port,
> > + },
> > + /* OXPCIe952 1 Native UART */
> > + {
> > + .vendor_id = PCI_VENDOR_ID_OXSEMI,
> > .dev_id = 0xc40b,
> > .param = param_oxford,
> > },
>
> While at first I only wanted to ask by what principle these entries
> are being ordered, I now additionally wonder what really
I was putting them in the order of device_id. But I can also
put them at the end of the structure if you would prefer?
> distinguishes them (beyond the device ID): They all have the same
> name, and even the newly added ones say "1 native UART",
Argh. Copy-n-paste error. Should have said 'OXPCIe952 2 Native UART'
> despite the patch subject saying "two port".
>
> Jan
>
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards.
2014-03-19 15:54 ` Konrad Rzeszutek Wilk
@ 2014-03-19 15:59 ` Jan Beulich
0 siblings, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2014-03-19 15:59 UTC (permalink / raw)
To: Konrad Rzeszutek Wilk; +Cc: Konrad Rzeszutek Wilk, keir, xen-devel
>>> On 19.03.14 at 16:54, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> wrote:
> On Wed, Mar 19, 2014 at 03:29:31PM +0000, Jan Beulich wrote:
>> >>> On 19.03.14 at 16:18, Konrad Rzeszutek Wilk <konrad@kernel.org> wrote:
>> > @@ -161,12 +172,24 @@ static const struct ns16550_config_mmio __initconst
> uart_config[] =
>> > /* OXPCIe952 1 Native UART */
>> > {
>> > .vendor_id = PCI_VENDOR_ID_OXSEMI,
>> > + .dev_id = 0xc158,
>> > + .param = param_oxford_2port,
>> > + },
>> > + /* OXPCIe952 1 Native UART */
>> > + {
>> > + .vendor_id = PCI_VENDOR_ID_OXSEMI,
>> > .dev_id = 0xc13d,
>> > .param = param_oxford,
>> > },
>> > /* OXPCIe952 1 Native UART */
>> > {
>> > .vendor_id = PCI_VENDOR_ID_OXSEMI,
>> > + .dev_id = 0xc15d,
>> > + .param = param_oxford_2port,
>> > + },
>> > + /* OXPCIe952 1 Native UART */
>> > + {
>> > + .vendor_id = PCI_VENDOR_ID_OXSEMI,
>> > .dev_id = 0xc40b,
>> > .param = param_oxford,
>> > },
>>
>> While at first I only wanted to ask by what principle these entries
>> are being ordered, I now additionally wonder what really
>
> I was putting them in the order of device_id. But I can also
> put them at the end of the structure if you would prefer?
No, that's fine. And you saying that made me realize that I too
the bottom most number visible above as c10b for some reason
(else I would have realized that this is the ordering used) - sorry
for the noise.
Jan
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-03-19 15:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-19 15:18 [PATCH] serial: Expand the PCIe params for an Oxford two port serial cards Konrad Rzeszutek Wilk
2014-03-19 15:29 ` Jan Beulich
2014-03-19 15:54 ` Konrad Rzeszutek Wilk
2014-03-19 15:59 ` Jan Beulich
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.