Subject: Re: MI Z8530 driver on the Alpha can't cope with nutty serial port
To: Gordon W. Ross <gwr@mc.com>
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
List: tech-kern
Date: 05/16/1997 17:31:50
>I'll be glad to help out with an effort aimed at a common driver.
>However, the obvious first question is:  Does the strange wiring
>used by that hardware make it unreasonably hard to share the code?
>It is hard to answer that without sketching out a design to see
>what the impact is on the other applications of the driver.

Okay, here's a possible design:

Put in the zs_chanstate structure the following member:

	struct zs_chanstate *cs_ctl_chan;


Normal MD code will initialize this member to the value of the same
channel that they resize in - i.e.

	cs->cs_ctl_chan = cs;

But on the Alpha (and maybe the pmax, eventualy), the zs driver will do:

	if (channel = 1)
		cs->cs_ctl_chan = &zsc_cs[0];

And MI code will do:

	cs->cs_ctl_chan->cs_preg[5] |= cs->cs_wr5_dtr;

	zs_write_reg(sc->cs_ctl_chan, 5, sc->cs_ctl_chan->cs_preg[5]);

Whaddya think?

--Ken