Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
hid-wiimote.h File Reference
#include <linux/completion.h>
#include <linux/device.h>
#include <linux/hid.h>
#include <linux/input.h>
#include <linux/leds.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/power_supply.h>
#include <linux/spinlock.h>

Go to the source code of this file.

Data Structures

struct  wiimote_buf
 
struct  wiimote_state
 
struct  wiimote_data
 

Macros

#define WIIMOTE_NAME   "Nintendo Wii Remote"
 
#define WIIMOTE_BUFSIZE   32
 
#define WIIPROTO_FLAG_LED1   0x01
 
#define WIIPROTO_FLAG_LED2   0x02
 
#define WIIPROTO_FLAG_LED3   0x04
 
#define WIIPROTO_FLAG_LED4   0x08
 
#define WIIPROTO_FLAG_RUMBLE   0x10
 
#define WIIPROTO_FLAG_ACCEL   0x20
 
#define WIIPROTO_FLAG_IR_BASIC   0x40
 
#define WIIPROTO_FLAG_IR_EXT   0x80
 
#define WIIPROTO_FLAG_IR_FULL   0xc0 /* IR_BASIC | IR_EXT */
 
#define WIIPROTO_FLAGS_LEDS
 
#define WIIPROTO_FLAGS_IR
 
#define WIIPROTO_FLAG_LED(num)   (WIIPROTO_FLAG_LED1 << (num - 1))
 
#define dev_to_wii(pdev)
 
#define wiiproto_req_rreg(wdata, os, sz)   wiiproto_req_rmem((wdata), false, (os), (sz))
 
#define wiiproto_req_reeprom(wdata, os, sz)   wiiproto_req_rmem((wdata), true, (os), (sz))
 

Enumerations

enum  wiiproto_reqs {
  WIIPROTO_REQ_NULL = 0x0, WIIPROTO_REQ_RUMBLE = 0x10, WIIPROTO_REQ_LED = 0x11, WIIPROTO_REQ_DRM = 0x12,
  WIIPROTO_REQ_IR1 = 0x13, WIIPROTO_REQ_SREQ = 0x15, WIIPROTO_REQ_WMEM = 0x16, WIIPROTO_REQ_RMEM = 0x17,
  WIIPROTO_REQ_IR2 = 0x1a, WIIPROTO_REQ_STATUS = 0x20, WIIPROTO_REQ_DATA = 0x21, WIIPROTO_REQ_RETURN = 0x22,
  WIIPROTO_REQ_DRM_K = 0x30, WIIPROTO_REQ_DRM_KA = 0x31, WIIPROTO_REQ_DRM_KE = 0x32, WIIPROTO_REQ_DRM_KAI = 0x33,
  WIIPROTO_REQ_DRM_KEE = 0x34, WIIPROTO_REQ_DRM_KAE = 0x35, WIIPROTO_REQ_DRM_KIE = 0x36, WIIPROTO_REQ_DRM_KAIE = 0x37,
  WIIPROTO_REQ_DRM_E = 0x3d, WIIPROTO_REQ_DRM_SKAI1 = 0x3e, WIIPROTO_REQ_DRM_SKAI2 = 0x3f, WIIPROTO_REQ_MAX
}
 

Functions

void wiiproto_req_drm (struct wiimote_data *wdata, __u8 drm)
 
int wiimote_cmd_write (struct wiimote_data *wdata, __u32 offset, const __u8 *wmem, __u8 size)
 
ssize_t wiimote_cmd_read (struct wiimote_data *wdata, __u32 offset, __u8 *rmem, __u8 size)
 
void wiiproto_req_rmem (struct wiimote_data *wdata, bool eeprom, __u32 offset, __u16 size)
 

Macro Definition Documentation

#define dev_to_wii (   pdev)
Value:
hid_get_drvdata(container_of(pdev, struct hid_device, \
dev))

Definition at line 116 of file hid-wiimote.h.

#define WIIMOTE_BUFSIZE   32

Definition at line 27 of file hid-wiimote.h.

#define WIIMOTE_NAME   "Nintendo Wii Remote"

Definition at line 26 of file hid-wiimote.h.

#define WIIPROTO_FLAG_ACCEL   0x20

Definition at line 34 of file hid-wiimote.h.

#define WIIPROTO_FLAG_IR_BASIC   0x40

Definition at line 35 of file hid-wiimote.h.

#define WIIPROTO_FLAG_IR_EXT   0x80

Definition at line 36 of file hid-wiimote.h.

#define WIIPROTO_FLAG_IR_FULL   0xc0 /* IR_BASIC | IR_EXT */

Definition at line 37 of file hid-wiimote.h.

#define WIIPROTO_FLAG_LED (   num)    (WIIPROTO_FLAG_LED1 << (num - 1))

Definition at line 44 of file hid-wiimote.h.

#define WIIPROTO_FLAG_LED1   0x01

Definition at line 29 of file hid-wiimote.h.

#define WIIPROTO_FLAG_LED2   0x02

Definition at line 30 of file hid-wiimote.h.

#define WIIPROTO_FLAG_LED3   0x04

Definition at line 31 of file hid-wiimote.h.

#define WIIPROTO_FLAG_LED4   0x08

Definition at line 32 of file hid-wiimote.h.

#define WIIPROTO_FLAG_RUMBLE   0x10

Definition at line 33 of file hid-wiimote.h.

#define WIIPROTO_FLAGS_IR
Value:
WIIPROTO_FLAG_IR_FULL)

Definition at line 40 of file hid-wiimote.h.

#define WIIPROTO_FLAGS_LEDS
Value:

Definition at line 38 of file hid-wiimote.h.

#define wiiproto_req_reeprom (   wdata,
  os,
  sz 
)    wiiproto_req_rmem((wdata), true, (os), (sz))

Definition at line 127 of file hid-wiimote.h.

#define wiiproto_req_rreg (   wdata,
  os,
  sz 
)    wiiproto_req_rmem((wdata), false, (os), (sz))

Definition at line 125 of file hid-wiimote.h.

Enumeration Type Documentation

Enumerator:
WIIPROTO_REQ_NULL 
WIIPROTO_REQ_RUMBLE 
WIIPROTO_REQ_LED 
WIIPROTO_REQ_DRM 
WIIPROTO_REQ_IR1 
WIIPROTO_REQ_SREQ 
WIIPROTO_REQ_WMEM 
WIIPROTO_REQ_RMEM 
WIIPROTO_REQ_IR2 
WIIPROTO_REQ_STATUS 
WIIPROTO_REQ_DATA 
WIIPROTO_REQ_RETURN 
WIIPROTO_REQ_DRM_K 
WIIPROTO_REQ_DRM_KA 
WIIPROTO_REQ_DRM_KE 
WIIPROTO_REQ_DRM_KAI 
WIIPROTO_REQ_DRM_KEE 
WIIPROTO_REQ_DRM_KAE 
WIIPROTO_REQ_DRM_KIE 
WIIPROTO_REQ_DRM_KAIE 
WIIPROTO_REQ_DRM_E 
WIIPROTO_REQ_DRM_SKAI1 
WIIPROTO_REQ_DRM_SKAI2 
WIIPROTO_REQ_MAX 

Definition at line 89 of file hid-wiimote.h.

Function Documentation

ssize_t wiimote_cmd_read ( struct wiimote_data wdata,
__u32  offset,
__u8 rmem,
__u8  size 
)

Definition at line 368 of file hid-wiimote-core.c.

int wiimote_cmd_write ( struct wiimote_data wdata,
__u32  offset,
const __u8 wmem,
__u8  size 
)

Definition at line 349 of file hid-wiimote-core.c.

void wiiproto_req_drm ( struct wiimote_data wdata,
__u8  drm 
)

Definition at line 229 of file hid-wiimote-core.c.

void wiiproto_req_rmem ( struct wiimote_data wdata,
bool  eeprom,
__u32  offset,
__u16  size 
)

Definition at line 323 of file hid-wiimote-core.c.