version 1.31, 2011/11/15 08:05:22 |
version 1.32, 2011/11/20 22:54:51 |
|
|
unsigned mode; |
unsigned mode; |
char *path; |
char *path; |
} *ctl_list; |
} *ctl_list; |
|
|
|
/* volume control and MMC/MTC */ |
|
#define CTL_NSLOT 8 |
|
#define CTL_NAMEMAX 8 |
|
unsigned serial; |
|
struct ctl_slot { |
|
struct ctl_ops { |
|
void (*vol)(void *, unsigned); |
|
void (*start)(void *); |
|
void (*stop)(void *); |
|
void (*loc)(void *, unsigned); |
|
void (*quit)(void *); |
|
} *ops; |
|
void *arg; |
|
unsigned unit; |
|
char name[CTL_NAMEMAX]; |
|
unsigned serial; |
|
unsigned vol; |
|
unsigned tstate; |
|
} slot[CTL_NSLOT]; |
|
#define CTL_OFF 0 /* ignore MMC messages */ |
|
#define CTL_STOP 1 /* stopped, can't start */ |
|
#define CTL_START 2 /* attempting to start */ |
|
#define CTL_RUN 3 /* started */ |
|
unsigned tstate; /* one of above */ |
|
unsigned origin; /* MTC start time */ |
}; |
}; |
|
|
extern struct dev *dev_list; |
extern struct dev *dev_list; |
|
|
struct abuf *, struct aparams *, unsigned, |
struct abuf *, struct aparams *, unsigned, |
unsigned, int); |
unsigned, int); |
void dev_setvol(struct dev *, struct abuf *, int); |
void dev_setvol(struct dev *, struct abuf *, int); |
|
|
|
void dev_slotdbg(struct dev *, int); |
|
int dev_slotnew(struct dev *, char *, struct ctl_ops *, void *, int); |
|
void dev_slotdel(struct dev *, int); |
|
void dev_slotvol(struct dev *, int, unsigned); |
|
|
|
int dev_slotstart(struct dev *, int); |
|
void dev_slotstop(struct dev *, int); |
|
void dev_mmcstart(struct dev *); |
|
void dev_mmcstop(struct dev *); |
|
void dev_loc(struct dev *, unsigned); |
|
int dev_idle(struct dev *); |
|
|
#endif /* !define(DEV_H) */ |
#endif /* !define(DEV_H) */ |