Implement the bus_space_map() function to allocate resources and initialize

a bus_handle, but currently it does only initializing a bus_handle.
This commit is contained in:
Yoshihiro Takahashi 2003-09-23 08:22:34 +00:00
parent eb98005f8d
commit 33e38a2cc8
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=120375
8 changed files with 102 additions and 13 deletions

View file

@ -90,6 +90,24 @@ typedef u_int32_t bus_space_handle_t;
#define BUS_SPACE_UNRESTRICTED (~0UL)
/*
* Map a region of device bus space into CPU virtual address space.
*/
static __inline int bus_space_map(bus_space_tag_t t, bus_addr_t addr,
bus_size_t size, int flags,
bus_space_handle_t *bshp);
static __inline int
bus_space_map(bus_space_tag_t t __unused, bus_addr_t addr,
bus_size_t size __unused, int flags __unused,
bus_space_handle_t *bshp)
{
*bshp = addr;
return (0);
}
/*
* Unmap a region of device bus space.
*/

View file

@ -114,11 +114,19 @@ typedef uint64_t bus_space_handle_t;
* Map a region of device bus space into CPU virtual address space.
*/
#define BUS_SPACE_MAP_CACHEABLE 0x01
#define BUS_SPACE_MAP_LINEAR 0x02
static __inline int bus_space_map(bus_space_tag_t t, bus_addr_t addr,
bus_size_t size, int flags,
bus_space_handle_t *bshp);
int bus_space_map(bus_space_tag_t t, bus_addr_t addr, bus_size_t size,
int flags, bus_space_handle_t *bshp);
static __inline int
bus_space_map(bus_space_tag_t t __unused, bus_addr_t addr,
bus_size_t size __unused, int flags __unused,
bus_space_handle_t *bshp)
{
*bshp = addr;
return (0);
}
/*
* Unmap a region of device bus space.

View file

@ -122,11 +122,19 @@ typedef u_int bus_space_handle_t;
* Map a region of device bus space into CPU virtual address space.
*/
#define BUS_SPACE_MAP_CACHEABLE 0x01
#define BUS_SPACE_MAP_LINEAR 0x02
static __inline int bus_space_map(bus_space_tag_t t, bus_addr_t addr,
bus_size_t size, int flags,
bus_space_handle_t *bshp);
int bus_space_map(bus_space_tag_t t, bus_addr_t addr, bus_size_t size,
int flags, bus_space_handle_t *bshp);
static __inline int
bus_space_map(bus_space_tag_t t __unused, bus_addr_t addr,
bus_size_t size __unused, int flags __unused,
bus_space_handle_t *bshp)
{
*bshp = addr;
return (0);
}
/*
* Unmap a region of device bus space.

View file

@ -169,6 +169,19 @@ int i386_bus_space_handle_alloc(bus_space_tag_t t, bus_addr_t bpa,
void i386_bus_space_handle_free(bus_space_tag_t t, bus_space_handle_t bsh,
size_t size);
/*
* int bus_space_map (bus_space_tag_t t, bus_addr_t addr,
* bus_size_t size, int flag, bus_space_handle_t *bshp);
*
* Map a region of bus space.
*/
int i386_memio_map(bus_space_tag_t t, bus_addr_t addr, bus_size_t size,
int flag, bus_space_handle_t *bshp);
#define bus_space_map(t, a, s, f, hp) \
i386_memio_map((t), (a), (s), (f), (hp))
/*
* int bus_space_unmap (bus_space_tag_t t,
* bus_space_handle_t bsh, bus_size_t size);

View file

@ -119,13 +119,20 @@ typedef u_long bus_space_handle_t;
/*
* Map a region of device bus space into CPU virtual address space.
*/
#define BUS_SPACE_MAP_CACHEABLE 0x01
#define BUS_SPACE_MAP_LINEAR 0x02
int
bus_space_map(bus_space_tag_t bst, bus_addr_t addr, bus_size_t size, int flags,
bus_space_handle_t *bshp);
static __inline int bus_space_map(bus_space_tag_t t, bus_addr_t addr,
bus_size_t size, int flags,
bus_space_handle_t *bshp);
static __inline int
bus_space_map(bus_space_tag_t t __unused, bus_addr_t addr,
bus_size_t size __unused, int flags __unused,
bus_space_handle_t *bshp)
{
*bshp = addr;
return (0);
}
/*
* Unmap a region of device bus space.

View file

@ -197,6 +197,14 @@ i386_bus_space_handle_free(bus_space_tag_t t, bus_space_handle_t bsh,
/*************************************************************************
* map
*************************************************************************/
int
i386_memio_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size, int flags,
bus_space_handle_t *bshp)
{
return i386_bus_space_handle_alloc(t, bpa, size, bshp);
}
void
i386_memio_unmap(bus_space_tag_t t, bus_space_handle_t bsh, bus_size_t size)
{

View file

@ -197,6 +197,14 @@ i386_bus_space_handle_free(bus_space_tag_t t, bus_space_handle_t bsh,
/*************************************************************************
* map
*************************************************************************/
int
i386_memio_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size, int flags,
bus_space_handle_t *bshp)
{
return i386_bus_space_handle_alloc(t, bpa, size, bshp);
}
void
i386_memio_unmap(bus_space_tag_t t, bus_space_handle_t bsh, bus_size_t size)
{

View file

@ -138,6 +138,25 @@ static void bus_space_barrier(bus_space_tag_t, bus_space_handle_t, bus_size_t,
bus_size_t, int);
static int bus_space_subregion(bus_space_tag_t, bus_space_handle_t,
bus_size_t, bus_size_t, bus_space_handle_t *);
/*
* Map a region of device bus space into CPU virtual address space.
*/
static __inline int bus_space_map(bus_space_tag_t t, bus_addr_t addr,
bus_size_t size, int flags,
bus_space_handle_t *bshp);
static __inline int
bus_space_map(bus_space_tag_t t __unused, bus_addr_t addr,
bus_size_t size __unused, int flags __unused,
bus_space_handle_t *bshp)
{
*bshp = addr;
return (0);
}
/*
* Unmap a region of device bus space.
*/