[PATCH] powerpc: Make RTAS console init generic

Michael Ellerman michael at ellerman.id.au
Thu Aug 17 10:44:12 EST 2006


On Wed, 2006-08-16 at 10:22 -0500, Michael Neuling wrote:
> In message <1155705695.12715.7.camel at localhost.localdomain> you wrote:
> > 
> > --=-PNKyW5KJv4630LcmkXVt
> > Content-Type: text/plain
> > Content-Transfer-Encoding: quoted-printable
> > 
> > On Tue, 2006-08-15 at 23:00 -0500, Michael Neuling wrote:
> > > The RTAS console doesn't have to be Cell specific.  If we have both
> > > the put and get char RTAS functions, init the rtas console.
> > >=20
> > > Index: linux-2.6-ozlabs/arch/powerpc/kernel/rtas.c
> > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > > --- linux-2.6-ozlabs.orig/arch/powerpc/kernel/rtas.c
> > > +++ linux-2.6-ozlabs/arch/powerpc/kernel/rtas.c
> > > @@ -910,6 +910,11 @@ int __init early_init_dt_scan_rtas(unsig
> > >  	basep =3D of_get_flat_dt_prop(node, "get-term-char", NULL);
> > >  	if (basep)
> > >  		rtas_getchar_token =3D *basep;
> > > +
> > > +	if (rtas_putchar_token !=3D RTAS_UNKNOWN_SERVICE &&
> > > +	    rtas_getchar_token !=3D RTAS_UNKNOWN_SERVICE)
> > > +		udbg_init_rtas_console();
> > > +
> > >  #endif
> > > =20
> > >  	/* break now */
> > > Index: linux-2.6-ozlabs/arch/powerpc/platforms/cell/setup.c
> > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > > --- linux-2.6-ozlabs.orig/arch/powerpc/platforms/cell/setup.c
> > > +++ linux-2.6-ozlabs/arch/powerpc/platforms/cell/setup.c
> > > @@ -150,10 +150,6 @@ static int __init cell_probe(void)
> > >  	    !of_flat_dt_is_compatible(root, "IBM,CPBW-1.0"))
> > >  		return 0;
> > > =20
> > > -#ifdef CONFIG_UDBG_RTAS_CONSOLE
> > > -	udbg_init_rtas_console();
> > > -#endif
> > > -
> > 
> > I'd like to see it still guarded by UDBG_RTAS_CONSOLE, otherwise there's
> > no way to select a different type of early console on a machine which
> > has those tokens in the device tree.
> 
> Agreed but that section in rtas.c is already guarded by
> UDBG_RTAS_CONSOLE.  After applying the patch, it looks like: 
> 
> #ifdef CONFIG_UDBG_RTAS_CONSOLE
> 	basep = of_get_flat_dt_prop(node, "put-term-char", NULL);
> 	if (basep)
> 		rtas_putchar_token = *basep;
> 
> 	basep = of_get_flat_dt_prop(node, "get-term-char", NULL);
> 	if (basep)
> 		rtas_getchar_token = *basep;
> 
> 	if (rtas_putchar_token != RTAS_UNKNOWN_SERVICE &&
> 	    rtas_getchar_token != RTAS_UNKNOWN_SERVICE)
> 		udbg_init_rtas_console();
> 
> #endif

Ah sorry, I just looked at the patch.

cheers

-- 
Michael Ellerman
IBM OzLabs

wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20060817/857c16aa/attachment.pgp>


More information about the Linuxppc-dev mailing list