Date: Sun, 30 Jun 1996 04:56:56 +1000 From: Bruce Evans <bde@zeta.org.au> To: andrew@pubnix.net, hackers@FreeBSD.ORG Subject: Re: SWAP DCD & DSR in sio.c + Question Message-ID: <199606291856.EAA15627@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606291856.EAA15627>