Lines Matching full:space
143 .Nd "bus space manipulation functions"
148 .Fa "bus_space_tag_t space" "bus_addr_t address"
153 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t size"
157 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
162 .Fa "bus_space_tag_t space" "bus_addr_t reg_start" "bus_addr_t reg_end"
168 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t size"
172 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
177 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
182 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
187 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
192 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
197 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
202 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
207 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
212 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
216 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
220 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
224 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
228 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
232 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
236 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
240 .Fa "bus_space_tag_t space" "bus_space_handle_t handle" "bus_size_t offset"
244 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
249 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
254 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
259 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
264 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
269 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
274 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
279 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
284 .Fa "bus_space_tag_t space" "bus_space_handle_t handle"
289 .Fa "bus_space_tag_t space"
295 .Fa "bus_space_tag_t space"
301 .Fa "bus_space_tag_t space"
307 .Fa "bus_space_tag_t space"
313 .Fa "bus_space_tag_t space"
319 .Fa "bus_space_tag_t space"
325 .Fa "bus_space_tag_t space"
331 .Fa "bus_space_tag_t space"
337 .Fa "bus_space_tag_t space"
343 .Fa "bus_space_tag_t space"
349 .Fa "bus_space_tag_t space"
355 .Fa "bus_space_tag_t space"
361 .Fa "bus_space_tag_t space"
367 .Fa "bus_space_tag_t space"
373 .Fa "bus_space_tag_t space"
379 .Fa "bus_space_tag_t space"
385 .Fa "bus_space_tag_t space"
391 .Fa "bus_space_tag_t space"
397 .Fa "bus_space_tag_t space"
403 .Fa "bus_space_tag_t space"
409 .Fa "bus_space_tag_t space"
415 .Fa "bus_space_tag_t space"
421 .Fa "bus_space_tag_t space"
427 .Fa "bus_space_tag_t space"
433 .Fa "bus_space_tag_t space"
439 .Fa "bus_space_tag_t space"
445 .Fa "bus_space_tag_t space"
451 .Fa "bus_space_tag_t space"
457 .Fa "bus_space_tag_t space"
463 .Fa "bus_space_tag_t space"
469 .Fa "bus_space_tag_t space"
475 .Fa "bus_space_tag_t space"
481 .Fa "bus_space_tag_t space"
487 .Fa "bus_space_tag_t space"
493 .Fa "bus_space_tag_t space"
499 .Fa "bus_space_tag_t space"
505 .Fa "bus_space_tag_t space"
511 .Fa "bus_space_tag_t space"
517 .Fa "bus_space_tag_t space"
523 .Fa "bus_space_tag_t space"
529 .Fa "bus_space_tag_t space"
535 .Fa "bus_space_tag_t space"
541 .Fa "bus_space_tag_t space"
547 .Fa "bus_space_tag_t space"
553 .Fa "bus_space_tag_t space"
559 .Fa "bus_space_tag_t space"
565 .Fa "bus_space_tag_t space"
571 .Fa "bus_space_tag_t space"
577 .Fa "bus_space_tag_t space"
583 .Fa "bus_space_tag_t space"
589 .Fa "bus_space_tag_t space"
595 .Fa "bus_space_tag_t space"
601 .Fa "bus_space_tag_t space"
607 .Fa "bus_space_tag_t space"
613 .Fa "bus_space_tag_t space"
619 .Fa "bus_space_tag_t space"
636 For instance, a device which is mapped in one system's I/O space may be
637 mapped in memory space on a second system.
640 creating a non-linear register space).
670 Bus spaces are described by bus space tags, which can be created only by
673 of bus space (e.g.\& memory space and I/O space), and thus may provide
674 multiple different bus space tags.
675 Individual buses or devices on a machine may use more than one bus space
678 given an ISA memory space tag and an ISA I/O space tag.
681 space, for instance because of multiple different host bus interface
684 A range in bus space is described by a bus address and a bus size.
686 bus address describes the start of the range in bus space.
690 addressable may require use of bus space ranges with appropriately
693 Access to regions of bus space is facilitated by use of bus space handles,
694 which are usually created by mapping a specific range of a bus space.
696 and mapping a range of bus space, the actual location of which is picked
700 All of the bus space access functions require one bus space tag
703 The bus space tag specifies the space, each handle specifies a region in
704 the space, and each offset specifies the offset into the region of the
718 in the bus space read and write stream.
738 they should expect that the system requires bus space addresses being
758 or which return data read from bus space (i.e., functions which
779 type is primarily used when mapping and unmapping bus space.
783 type is used to describe sizes of ranges in bus space.
791 offsets into regions when performing space access operations.
795 type is used to describe a particular bus space on a machine.
801 functions to name the space on which they are operating.
805 type is used to describe a mapping of a range of bus space.
809 This type is used when performing bus space
811 .Sh MAPPING AND UNMAPPING BUS SPACE
818 Bus space must be mapped before it can be used, and should be
827 space to another driver or module within a driver.
831 .Ss Fn bus_space_map space address size flags handlep
834 function maps the region of bus space named by the
835 .Fa space , address ,
840 and fills in the bus space handle pointed to by
845 it will return non-zero and leave the bus space handle pointed
852 argument controls how the space is to be mapped.
856 Try to map the space so that accesses can be cached and/or
859 implementation should map the space so that it will not be cached or
865 Try to map the space so that its contents can be accessed linearly via
875 flag is not specified, the system may map the space in whatever way is
878 Try to map the space using non-posted device memory.
904 Some implementations may keep track of use of bus space for some or all
907 for bus spaces which have no notion of slot-specific space addressing,
914 If space in those areas is accessed, the results are
916 .Ss Fn bus_space_unmap space handle size
919 function unmaps a region of bus space mapped with
942 .Ss Fn bus_space_subregion space handle offset size nhandlep
946 new handle to some subregion of an already-mapped region of bus space.
958 space handle pointed to by
960 If unsuccessful, it returns non-zero and leaves the bus space handle
977 being done on the space, and will result in undefined behaviour.
983 .Sh ALLOCATING AND FREEING BUS SPACE
990 Some devices require or allow bus space to be allocated by the operating
992 When the devices no longer need the space, the
999 .Ss Fn bus_space_alloc space reg_start reg_end size alignment boundary \
1003 function allocates and maps a region of bus space with the size given by
1009 with the bus space address of the allocated region, and fills in
1010 the bus space handle pointed to by
1015 and the bus space handle pointed to by
1071 .Ss Fn bus_space_free space handle size
1074 function unmaps and frees a region of bus space mapped
1097 The simplest way to access bus space is to read or write a single data
1106 .Ss Fn bus_space_read_1 space handle offset
1107 .Ss Fn bus_space_read_2 space handle offset
1108 .Ss Fn bus_space_read_4 space handle offset
1109 .Ss Fn bus_space_read_8 space handle offset
1117 of the bus space specified by
1118 .Fa space .
1119 The location being read must lie within the bus space region specified by
1141 .Ss Fn bus_space_write_1 space handle offset value
1142 .Ss Fn bus_space_write_2 space handle offset value
1143 .Ss Fn bus_space_write_4 space handle offset value
1144 .Ss Fn bus_space_write_8 space handle offset value
1152 of the bus space specified by
1153 .Fa space .
1155 the bus space region specified by
1178 .Sh PROBING BUS SPACE FOR HARDWARE WHICH MAY NOT RESPOND
1220 responding to the operation at the specified offset in the bus space.
1240 .It Fn bus_space_peek_1 "space" "handle" "offset" "datap"
1241 .It Fn bus_space_peek_2 "space" "handle" "offset" "datap"
1242 .It Fn bus_space_peek_4 "space" "handle" "offset" "datap"
1243 .It Fn bus_space_peek_8 "space" "handle" "offset" "datap"
1252 of the bus space specified by
1253 .Fa space .
1260 .It Fn bus_space_poke_1 "space" "handle" "offset" "value"
1261 .It Fn bus_space_poke_2 "space" "handle" "offset" "value"
1262 .It Fn bus_space_poke_4 "space" "handle" "offset" "value"
1263 .It Fn bus_space_poke_8 "space" "handle" "offset" "value"
1274 of the bus space specified by
1275 .Fa space .
1284 .Ss Fn bus_space_barrier space handle offset length flags
1287 function enforces ordering of bus space read and write operations
1294 in the space named by
1295 .Fa space .
1327 * space.
1357 minimum number of bus space locations.
1360 space, that is, to specify an offset of zero and the size of the
1363 Some devices use buffers which are mapped as regions in bus space.
1374 Drivers occasionally need to copy one region of a bus space to another,
1375 or to set all locations in a region of bus space to contain a single
1382 .Ss Fn bus_space_read_region_1 space handle offset datap count
1383 .Ss Fn bus_space_read_region_2 space handle offset datap count
1384 .Ss Fn bus_space_read_region_4 space handle offset datap count
1385 .Ss Fn bus_space_read_region_8 space handle offset datap count
1390 1, 2, 4, or 8 byte data items from bus space
1395 of the bus space specified by
1396 .Fa space
1403 space region specified by
1423 individual bus space locations executed by the
1432 .Ss Fn bus_space_write_region_1 space handle offset datap count
1433 .Ss Fn bus_space_write_region_2 space handle offset datap count
1434 .Ss Fn bus_space_write_region_4 space handle offset datap count
1435 .Ss Fn bus_space_write_region_8 space handle offset datap count
1443 and writes them to bus space starting at byte offset
1447 of the bus space specified
1449 .Fa space .
1453 All locations being written must lie within the bus space region
1475 individual bus space locations executed by the
1484 .Ss Fn bus_space_copy_region_1 space srchandle srcoffset dsthandle \
1486 .Ss Fn bus_space_copy_region_2 space srchandle srcoffset dsthandle \
1488 .Ss Fn bus_space_copy_region_4 space srchandle srcoffset dsthandle \
1490 .Ss Fn bus_space_copy_region_8 space srchandle srcoffset dsthandle \
1496 1, 2, 4, or 8 byte data items in bus space
1501 of the bus space specified by
1502 .Fa space
1507 in the same bus space.
1512 lie within the bus space region specified by their respective handles.
1530 individual bus space locations executed by the
1535 of bus space are handled correctly by the
1544 .Ss Fn bus_space_set_region_1 space handle offset value count
1545 .Ss Fn bus_space_set_region_2 space handle offset value count
1546 .Ss Fn bus_space_set_region_4 space handle offset value count
1547 .Ss Fn bus_space_set_region_8 space handle offset value count
1555 data items in bus space starting at byte offset
1559 of the bus space specified by
1560 .Fa space .
1564 locations being written must lie within the bus space region specified
1585 individual bus space locations executed by the
1595 Some devices implement single locations in bus space which are to be read
1605 .Ss Fn bus_space_read_multi_1 space handle offset datap count
1606 .Ss Fn bus_space_read_multi_2 space handle offset datap count
1607 .Ss Fn bus_space_read_multi_4 space handle offset datap count
1608 .Ss Fn bus_space_read_multi_8 space handle offset datap count
1613 1, 2, 4, or 8 byte data items from bus space
1618 of the bus space specified by
1619 .Fa space
1623 space.
1624 The location being read must lie within the bus space region
1645 functions read the same bus space location multiple times, they
1647 space location.
1654 .Ss Fn bus_space_write_multi_1 space handle offset datap count
1655 .Ss Fn bus_space_write_multi_2 space handle offset datap count
1656 .Ss Fn bus_space_write_multi_4 space handle offset datap count
1657 .Ss Fn bus_space_write_multi_8 space handle offset datap count
1665 and writes them into bus space at byte offset
1669 of the bus space specified by
1670 .Fa space .
1672 bus space.
1673 The location being written must lie within the bus space
1693 functions write the same bus space location multiple times, they
1695 bus space location.
1702 .Ss Fn bus_space_set_multi_1 space handle offset value count
1703 .Ss Fn bus_space_set_multi_2 space handle offset value count
1704 .Ss Fn bus_space_set_multi_4 space handle offset value count
1705 .Ss Fn bus_space_set_multi_8 space handle offset value count
1710 into bus space at byte offset
1714 of the bus space specified by
1715 .Fa space ,
1718 The location being written must lie within the bus space
1738 functions write the same bus space location multiple times, they
1740 bus space location.