Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jan 2004 15:17:28 -0700 (MST)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        nate@root.org
Cc:        arch@freebsd.org
Subject:   Re: newbus ioport usage
Message-ID:  <20040126.151728.133912536.imp@bsdimp.com>
In-Reply-To: <20040126140100.T29680@root.org>
References:  <20040126140100.T29680@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20040126140100.T29680@root.org>
            Nate Lawson <nate@root.org> writes:
: I have a driver that knows the IO port it wants.  It's not set up by a
: parent bus, so I can't use bus_set_resource().  This call returns NULL.
: Any idea how to debug why newbus is rejecting this request?  The io port
: is not in use and the rid is unique.
: 
:   bus_alloc_resource(dev, SYS_RES_IOPORT, rid, 0x101c, 0x101c, 1,
:     RF_ACTIVE);

Ummm, you can use bus_set_resource() in the driver to do this (I've
done it before).  bus_set_resource() should return 0 to indicate
success.  bus_alloc_resource should then succeed.  There may be one
other step to do as well to make this work, but I'm not sure if it is
an internal convention or actually required.  The pci bus code does a
resource_list_add for each of the resources the child uses, but I
think that's an internal thing to the pci bus (that other busses do
also).

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040126.151728.133912536.imp>