public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* can we drop early_serial_setup()?
@ 2002-09-20  4:59 David Mosberger
  2002-09-20 23:33 ` Matt Porter
  2002-09-23 22:44 ` Mark A. Greer
  0 siblings, 2 replies; 6+ messages in thread
From: David Mosberger @ 2002-09-20  4:59 UTC (permalink / raw)
  To: linux-kernel; +Cc: mgreer, steiner, davidm

The early_serial_setup() routine was broken during the big serial
clean up that happened a while ago.  I fixed this problem for ia64 by
introducing a new routine called early_register_port() (see below).
It serves the same purpose as early_serial_setup(), with the only
difference being that the argument passed to it is now a "uart_port"
structure (instead of a "serial_struct").  Russell King suggested to
get rid of early_serial_setup() alltogether, since it is broken anyhow
and serves no purpose anymore.  However, as far as I can tell, there
are two places left which use this routine:

	arch/ia64/sn/kernel/setup.c
	arch/ppc/platforms/ev64260_setup.c

It's should be easy to convert these files to early_register_port(),
but since I can't test the platform's in question (PPC and SGI SN
machine), I'd like to know whether it's OK to drop
early_serial_setup() now.  If someone wants some hints on how to do
the conversion, let me know (sample code is in 8250_hcdp.c).

Thanks,

	--david

int __init early_register_port (struct uart_port *port)
{
	if (port->line >= ARRAY_SIZE(serial8250_ports))
		return -ENODEV;

	serial8250_isa_init_ports();	/* force ISA defaults */
	serial8250_ports[port->line].port = *port;
	serial8250_ports[port->line].port.ops = &serial8250_pops;
	return 0;
}

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: can we drop early_serial_setup()?
  2002-09-20 23:33 ` Matt Porter
@ 2002-09-20 23:23   ` David Mosberger
  2002-09-21 13:45     ` Matt Porter
  0 siblings, 1 reply; 6+ messages in thread
From: David Mosberger @ 2002-09-20 23:23 UTC (permalink / raw)
  To: Matt Porter; +Cc: linux-kernel

>>>>> On Fri, 20 Sep 2002 16:33:57 -0700, Matt Porter <porter@cox.net> said:

  Matt> serial8250_ports and serial8250_pops are not static structs
  Matt> in your tree?

It is.  The new routine (early_register_port) goes into 8250.c, so that's
fine.

	--david

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: can we drop early_serial_setup()?
  2002-09-20  4:59 can we drop early_serial_setup()? David Mosberger
@ 2002-09-20 23:33 ` Matt Porter
  2002-09-20 23:23   ` David Mosberger
  2002-09-23 22:44 ` Mark A. Greer
  1 sibling, 1 reply; 6+ messages in thread
From: Matt Porter @ 2002-09-20 23:33 UTC (permalink / raw)
  To: davidm; +Cc: linux-kernel, mgreer, steiner, davidm

On Thu, Sep 19, 2002 at 09:59:19PM -0700, David Mosberger wrote:
> int __init early_register_port (struct uart_port *port)
> {
> 	if (port->line >= ARRAY_SIZE(serial8250_ports))
> 		return -ENODEV;
> 
> 	serial8250_isa_init_ports();	/* force ISA defaults */
> 	serial8250_ports[port->line].port = *port;
> 	serial8250_ports[port->line].port.ops = &serial8250_pops;
> 	return 0;
> }

serial8250_ports and serial8250_pops are not static structs
in your tree?

-- 
Matt Porter
porter@cox.net
This is Linux Country. On a quiet night, you can hear Windows reboot.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: can we drop early_serial_setup()?
  2002-09-20 23:23   ` David Mosberger
@ 2002-09-21 13:45     ` Matt Porter
  2002-09-23 19:02       ` David Mosberger
  0 siblings, 1 reply; 6+ messages in thread
From: Matt Porter @ 2002-09-21 13:45 UTC (permalink / raw)
  To: davidm; +Cc: linux-kernel

On Fri, Sep 20, 2002 at 04:23:27PM -0700, David Mosberger wrote:
> >>>>> On Fri, 20 Sep 2002 16:33:57 -0700, Matt Porter <porter@cox.net> said:
> 
>   Matt> serial8250_ports and serial8250_pops are not static structs
>   Matt> in your tree?
> 
> It is.  The new routine (early_register_port) goes into 8250.c, so that's
> fine.

That will be fine then.  I misconstrued your first statements as
indicating that we should duplicate this code in each arch (which
I didn't like).  As far as PPC is concerned, go ahead and wipe
out early_serial_setup when you bring in early_register_port.

FWIW, there's actually been more PPC platforms than ev64260 using
early_serial_setup. They had abandoned it temporarily for a less
flexible approach due to the breakage.

Thanks,
-- 
Matt Porter
porter@cox.net
This is Linux Country. On a quiet night, you can hear Windows reboot.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: can we drop early_serial_setup()?
  2002-09-21 13:45     ` Matt Porter
@ 2002-09-23 19:02       ` David Mosberger
  0 siblings, 0 replies; 6+ messages in thread
From: David Mosberger @ 2002-09-23 19:02 UTC (permalink / raw)
  To: Matt Porter; +Cc: linux-kernel

>>>>> On Sat, 21 Sep 2002 06:45:04 -0700, Matt Porter <porter@cox.net> said:

  Matt> That will be fine then.  I misconstrued your first statements
  Matt> as indicating that we should duplicate this code in each arch
  Matt> (which I didn't like).  As far as PPC is concerned, go ahead
  Matt> and wipe out early_serial_setup when you bring in
  Matt> early_register_port.

  Matt> FWIW, there's actually been more PPC platforms than ev64260
  Matt> using early_serial_setup. They had abandoned it temporarily
  Matt> for a less flexible approach due to the breakage.

OK, thanks for confirming.

	--david

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: can we drop early_serial_setup()?
  2002-09-20  4:59 can we drop early_serial_setup()? David Mosberger
  2002-09-20 23:33 ` Matt Porter
@ 2002-09-23 22:44 ` Mark A. Greer
  1 sibling, 0 replies; 6+ messages in thread
From: Mark A. Greer @ 2002-09-23 22:44 UTC (permalink / raw)
  To: davidm; +Cc: linux-kernel, steiner, davidm

David,

Sorry for the delay, we've had email problems most of last week.

Yes, we can get rid of the early_serial_setup() in ev64260_setup.c, no
problem there.  I'm very busy on some other things right now but I'll try
to get to that soon.  If you can't wait, go ahead and make the change and
I will test it for you.

Mark
--

David Mosberger wrote:

> The early_serial_setup() routine was broken during the big serial
> clean up that happened a while ago.  I fixed this problem for ia64 by
> introducing a new routine called early_register_port() (see below).
> It serves the same purpose as early_serial_setup(), with the only
> difference being that the argument passed to it is now a "uart_port"
> structure (instead of a "serial_struct").  Russell King suggested to
> get rid of early_serial_setup() alltogether, since it is broken anyhow
> and serves no purpose anymore.  However, as far as I can tell, there
> are two places left which use this routine:
>
>         arch/ia64/sn/kernel/setup.c
>         arch/ppc/platforms/ev64260_setup.c
>
> It's should be easy to convert these files to early_register_port(),
> but since I can't test the platform's in question (PPC and SGI SN
> machine), I'd like to know whether it's OK to drop
> early_serial_setup() now.  If someone wants some hints on how to do
> the conversion, let me know (sample code is in 8250_hcdp.c).
>
> Thanks,
>
>         --david
>
> int __init early_register_port (struct uart_port *port)
> {
>         if (port->line >= ARRAY_SIZE(serial8250_ports))
>                 return -ENODEV;
>
>         serial8250_isa_init_ports();    /* force ISA defaults */
>         serial8250_ports[port->line].port = *port;
>         serial8250_ports[port->line].port.ops = &serial8250_pops;
>         return 0;
> }


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2002-09-23 22:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-09-20  4:59 can we drop early_serial_setup()? David Mosberger
2002-09-20 23:33 ` Matt Porter
2002-09-20 23:23   ` David Mosberger
2002-09-21 13:45     ` Matt Porter
2002-09-23 19:02       ` David Mosberger
2002-09-23 22:44 ` Mark A. Greer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox