From owner-freebsd-current Fri Sep 8 11:03:59 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id LAA21868 for current-outgoing; Fri, 8 Sep 1995 11:03:59 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id LAA21857 for ; Fri, 8 Sep 1995 11:03:54 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id DAA24707; Sat, 9 Sep 1995 03:59:25 +1000 Date: Sat, 9 Sep 1995 03:59:25 +1000 From: Bruce Evans Message-Id: <199509081759.DAA24707@godzilla.zeta.org.au> To: bde@zeta.org.au, current@freebsd.org, deischen@iworks.InterWorks.org Subject: Re: Getting around conflicts for a driver w/out base address Sender: current-owner@freebsd.org Precedence: bulk >>useful to have some routines for hanging all the info for each device >>off a single isa_device structure (so that every driver doesn't have >>to search all the devtabs for info about itself). >Where would these be defined, in isa_device.h? I think Rod Grimes had >said earlier that he thought a proposed define for the NO_PORT_ADDRESS >(or something like that) might belong somewhere else. They don't exist yet. NO_PORT_ADDRESS is sort of defined by scattered literal -1's in the config sources :-(. The config.new sources are better and define STAR (-1) for sd* and WILD (-2) for sd?. NetBSD has something involving (-2). We may as well copy the constants. >>There might be complications for overlapped ranges. E.g., vga memory >>isn't as shown above - it overlaps mda and cga memory. Ports such as >>the PPI only have conflicts at the bit level. >If you allowed different bits of the same port address to be claimed >by different drivers, would you have to worry about read/write hazards? Yes, there would need to be some locks. The PPI and the TIMER_MODE ports are hazards now. They are implicitly locked by aquire_timer_2() and acquire_timer_0(). I'm not convinced that the locking is adequate. It doesn't attempt to handle non-speaker bits in the PPI, but none are used. Bruce