Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
BUS_RELEASE_RESOURCE(9)	 BSD Kernel Developer's	Manual BUS_RELEASE_RESOURCE(9)

NAME
     bus_release_resource -- release resources on a bus

SYNOPSIS
     #include <sys/param.h>
     #include <sys/bus.h>

     #include <machine/bus.h>
     #include <sys/rman.h>
     #include <machine/resource.h>

     int
     bus_release_resource(device_t dev,	int type, int rid,
	 struct	resource *r);

DESCRIPTION
     Free a resource allocated by bus_alloc_resource(9).  The resource must
     not be in use on release, i.e., call an appropriate function before (e.g.
     bus_teardown_intr(9) for IRQs).

     dev is the	device that owns the resource.

     type is the type of resource that is released.  It	must be	of the same
     type you allocated	it as before.  See bus_alloc_resource(9) for valid
     types.

     rid is the	resource ID of the resource.  The rid value must be the	same
     as	the one	returned by bus_alloc_resource(9).

     r is the pointer to struct	resource, i.e.,	the resource itself, returned
     by	bus_alloc_resource(9).

RETURN VALUES
     EINVAL is returned, if the	device dev has no parent, 0 otherwise.	The
     kernel will panic,	if it cannot release the resource.

EXAMPLES
	     /*	deactivate IRQ */
	     bus_teardown_intr(dev, foosoftc->irqres, foosoftc->irqid);

	     /*	release	IRQ resource */
	     bus_release_resource(dev, SYS_RES_IRQ, foosoftc->irqid,
		     foosoftc->irqres);

	     /*	release	I/O port resource */
	     bus_release_resource(dev, SYS_RES_IOPORT, foosoftc->portid,
		     foosoftc->portres);

SEE ALSO
     bus_alloc_resource(9), device(9), driver(9)

AUTHORS
     This manual page was written by Alexander Langer <alex@big.endian.de>.

BSD				 May 18, 2000				   BSD

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | EXAMPLES | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=bus_release_resource&sektion=9&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help