mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
968 B
52 lines
968 B
/* SPDX-License-Identifier: GPL-2.0 */ |
|
/* |
|
* Copyright (C) 2001, 2002 Jeff Dike ([email protected]) |
|
*/ |
|
|
|
#ifndef __MCONSOLE_KERN_H__ |
|
#define __MCONSOLE_KERN_H__ |
|
|
|
#include <linux/list.h> |
|
#include "mconsole.h" |
|
|
|
struct mconsole_entry { |
|
struct list_head list; |
|
struct mc_request request; |
|
}; |
|
|
|
/* All these methods are called in process context. */ |
|
struct mc_device { |
|
struct list_head list; |
|
char *name; |
|
int (*config)(char *, char **); |
|
int (*get_config)(char *, char *, int, char **); |
|
int (*id)(char **, int *, int *); |
|
int (*remove)(int, char **); |
|
}; |
|
|
|
#define CONFIG_CHUNK(str, size, current, chunk, end) \ |
|
do { \ |
|
current += strlen(chunk); \ |
|
if(current >= size) \ |
|
str = NULL; \ |
|
if(str != NULL){ \ |
|
strcpy(str, chunk); \ |
|
str += strlen(chunk); \ |
|
} \ |
|
if(end) \ |
|
current++; \ |
|
} while(0) |
|
|
|
#ifdef CONFIG_MCONSOLE |
|
|
|
extern void mconsole_register_dev(struct mc_device *new); |
|
|
|
#else |
|
|
|
static inline void mconsole_register_dev(struct mc_device *new) |
|
{ |
|
} |
|
|
|
#endif |
|
|
|
#endif
|
|
|