1ddi_mem_put8(9F)         Kernel Functions for Drivers         ddi_mem_put8(9F)
2
3
4

NAME

6       ddi_mem_put8,      ddi_mem_put16,     ddi_mem_put32,     ddi_mem_put64,
7       ddi_mem_putb, ddi_mem_putw, ddi_mem_putl, ddi_mem_putll - write data to
8       mapped device in the memory space or allocated DMA memory
9

SYNOPSIS

11       #include <sys/ddi.h>
12       #include <sys/sunddi.h>
13
14
15
16       void ddi_mem_put8(ddi_acc_handle_t handle, uint8_t *dev_addr,
17            uint8_t value);
18
19
20       void ddi_mem_put16(ddi_acc_handle_t handle, uint16_t *dev_addr,
21            uint16_t value);
22
23
24       void ddi_mem_put32(ddi_acc_handle_t handle, uint32_t *dev_addr,
25            uint32_t value);
26
27
28       void ddi_mem_put64(ddi_acc_handle_t handle, uint64_t *dev_addr,
29            uint64_t value);
30
31

PARAMETERS

33       handle      The  data  access handle returned from setup calls, such as
34                   ddi_regs_map_setup(9F).
35
36
37       dev_addr    Base device address.
38
39
40       value       The data to be written to the device.
41
42

INTERFACE LEVEL

44       Solaris   DDI   specific    (Solaris    DDI).    The    ddi_mem_put8(),
45       ddi_mem_put16(),   ddi_mem_put32(),   ddi_mem_put64(),  ddi_mem_putb(),
46       ddi_mem_putl(), ddi_mem_putll(), and ddi_mem_putw() functions are obso‐
47       lete.   The   ddi_put8(9F)   function   replaces   ddi_mem_put8().  The
48       ddi_put16(9F)  function  replaces  ddi_mem_put16().  The  ddi_put32(9F)
49       function  replaces ddi_mem_put32(). The ddi_put64(9F) function replaces
50       ddi_mem_put64(). The ddi_put8(9F) function replaces ddi_mem_putb(). The
51       ddi_put32(9F) function replaces ddi_mem_putl(). The ddi_put64(9F) func‐
52       tion replaces  ddi_mem_putll().  The  ddi_put16(9F)  function  replaces
53       ddi_mem_putw().
54

DESCRIPTION

56       These  routines  generate  a  write of various sizes to memory space or
57       allocated   DMA   memory.    The    ddi_mem_put8(),    ddi_mem_put16(),
58       ddi_mem_put32(),  and  ddi_mem_put64() functions write 8 bits, 16 bits,
59       32 bits and 64 bits of  data,  respectively,  to  the  device  address,
60       dev_addr, in memory space.
61
62
63       Each  individual  datum  will automatically be translated to maintain a
64       consistent view between the host and the device based  on  the  encoded
65       information  in  the  data  access  handle. The translation may involve
66       byte-swapping if the host and the device have incompatible endian char‐
67       acteristics.
68

CONTEXT

70       These functions can be called from user, kernel, or interrupt context.
71

ATTRIBUTES

73       See attributes(5) for descriptions of the following attributes:
74
75
76
77
78       ┌─────────────────────────────┬─────────────────────────────┐
79       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
80       ├─────────────────────────────┼─────────────────────────────┤
81       │Interface Stability          │Obsolete                     │
82       └─────────────────────────────┴─────────────────────────────┘
83

SEE ALSO

85       ddi_mem_get8(9F),  ddi_mem_rep_get8(9F),  ddi_put8(9F),  ddi_put16(9F),
86       ddi_put32(9F), ddi_put64(9F), ddi_mem_get8(9F), ddi_regs_map_setup(9F),
87       ddi_device_acc_attr(9S)
88
89
90
91SunOS 5.11                        1 Nov 2005                  ddi_mem_put8(9F)
Impressum