• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/um/include/shared/
1/*
2 * Copyright (C) 2001, 2002 Jeff Dike (jdike@karaya.com)
3 * Licensed under the GPL
4 */
5
6#ifndef __MCONSOLE_KERN_H__
7#define __MCONSOLE_KERN_H__
8
9#include "linux/list.h"
10#include "mconsole.h"
11
12struct mconsole_entry {
13	struct list_head list;
14	struct mc_request request;
15};
16
17/* All these methods are called in process context. */
18struct mc_device {
19	struct list_head list;
20	char *name;
21	int (*config)(char *, char **);
22	int (*get_config)(char *, char *, int, char **);
23	int (*id)(char **, int *, int *);
24	int (*remove)(int, char **);
25};
26
27#define CONFIG_CHUNK(str, size, current, chunk, end) \
28do { \
29	current += strlen(chunk); \
30	if(current >= size) \
31		str = NULL; \
32	if(str != NULL){ \
33		strcpy(str, chunk); \
34		str += strlen(chunk); \
35	} \
36	if(end) \
37		current++; \
38} while(0)
39
40#ifdef CONFIG_MCONSOLE
41
42extern void mconsole_register_dev(struct mc_device *new);
43
44#else
45
46static inline void mconsole_register_dev(struct mc_device *new)
47{
48}
49
50#endif
51
52#endif
53