[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freebsd-hackers
Subject:    Re: SWAP DCD & DSR in sio.c + Question
From:       Bruce Evans <bde () zeta ! org ! au>
Date:       1996-06-29 18:56:56
[Download RAW message or body]

>I recently got a BocaBoard 16 port box for my FreeBSD system.  Much to my
>shock & horror, it uses 10 pin RJ45s (RJ69 expensive and hard to get),
>with DCD on pin 1.  So I figured, there isn't much that can't be fixed
>with a little software, and I patched sio.c to SWAP DCD and DSR signals. 
>The patch works by assigning the flag 0x0010 to indicate that DCD and DSR
>should be swapped (this is a standard option on Digiboard products, with 
>RJ45s, it seems). 

It might be easier to do this by swapping the #defines.  This would only
work if swapping is wanted on all sio ports.  However, you could clone
sio.c to produce a special one with swapping.

>What if one wanted have more than 32 sio ports on a system?

Wait for devfs.

>Can sio.c be patched to support upto 64 ports?

No, not without throwing away one set of special minors (lock state
would be best).  32 ports seemed enough in 1994 and devfs should have
been finished by now :-).

>I created siox.c which is a clone of sio.c except that it shows up as 
>siox in the drivers.  How do I assign a different major number to it?

Pick one and edit conf.c to add struct entries for it.  All (externally
referenced) external names for the driver must be unique.  This is
easier in -current where there is no conf.c and only a couple of
external names per driver.

Bruce

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic