/*
 * shell.h
 *
 *  Created on: Aug 1, 2016
 *      Author: tkl
 */

#ifndef SOURCE_FIRMWARE_KERNEL_INTERFACE_SHELL_H_
#define SOURCE_FIRMWARE_KERNEL_INTERFACE_SHELL_H_

typedef void *(*command_callback)(const char*);

struct command {
	const char *command;
	const char *description;
	const command_callback command_callback;
	struct list_node item;
};

int shell_init(const struct driver *shell_device);
int shell_add_command(struct command *command);

#endif /* SOURCE_FIRMWARE_KERNEL_INTERFACE_SHELL_H_ */
