Subject: Re: sun4c/vmebus, take two
To: None <port-sparc@NetBSD.ORG>
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
List: port-sparc
Date: 06/10/1998 01:01:01
>>and the
>> sun4c machines have nothing ... which is the problem.
>> 
>> Now, after reading the FORCE 2CE manual, it seems that it has
>> exactly nothing for dealing with data size issues on the VMEbus.
>> As I read this documentation, if you want a 16-bit access, you
>> write using a 16-bit instruction, and the same for 32-bit access.
>> Does this make sense?  I'll confess being mostly ignorant to the
>> details of VME.  If there _is_ other issues, then could someone
>> please explain them to me and I'll try R'ing the FM.
>[...]
>Right- here's the deal- there isn't just 8, 16, or 32 bits
>of address and/or data with each cycle- there's also 5 bits
>of Address Modifier- which tells the system arbiter and
>addressed slaves what your permissions are and how you
>want to get or put data. It's a slightly strange concept-
>but not unusual except that it exposes to a higher level
>details usually wired architecturally or buried as  a side
>effect of early initialization or what have you.

Okay, I took this clue Matthew gave me and looked more closely at the
FORCE manual ... and it looks like I was wrong - it _does_ specify
that the data size is controlled by bits in the PTE (just like the
sun4) and the permission is taken from the appropriate bits in the PSW.

I think that, for the hell of it, I'll take Paul K's suggestion and
try simply modifying the sun4 VME driver to return true when CPU == sun4c,
and see what happens at that point ...

--Ken