XINU
Functions
gpiowrite.c File Reference
#include <xinu.h>
Include dependency graph for gpiowrite.c:

Go to the source code of this file.

Functions

devcall gpiowrite (struct dentry *devptr, char *value, int32 pinmask)
 

Function Documentation

◆ gpiowrite()

devcall gpiowrite ( struct dentry devptr,
char *  value,
int32  pinmask 
)

Definition at line 9 of file gpiowrite.c.

References gpio_csreg::clear_data, dentry::dvcsr, OK, and gpio_csreg::set_data.

14 {
15  struct gpio_csreg *csrptr; /* Pointer to GPIO CSRs */
16  uint32 val; /* Value to be written */
17 
18  csrptr = (struct gpio_csreg *)(devptr->dvcsr);
19  val = * (uint32 *)value;
20 
21  /* Set bits that should become one */
22 
23  csrptr->set_data = pinmask & val;
24 
25  /* Clear bits that should become zero */
26 
27  csrptr->clear_data = pinmask & ~val;
28 
29  return OK;
30 }
#define OK
処理が成功した場合
Definition: kernel.h:77
volatile uint32 set_data
Definition: gpio.h:43
volatile uint32 clear_data
Definition: gpio.h:42
unsigned int uint32
符号なし32ビット整数(unsigned int)
Definition: kernel.h:15
void * dvcsr
Definition: conf.h:19