#ifndef _LINUX_CONFIG_H
#define _LINUX_CONFIG_H

#include <linux/autoconf.h>

/*
 * Defines for what uname() should return
 */
#ifndef UTS_SYSNAME
#define UTS_SYSNAME "Linux"
#endif

#ifndef UTS_MACHINE
#define UTS_MACHINE "unknown"
#endif

#ifndef UTS_NODENAME
#define UTS_NODENAME "(none)"	/* set by sethostname() */
#endif

#ifndef UTS_DOMAINNAME
#define UTS_DOMAINNAME "(none)" /* set by setdomainname() */
#endif


/*
 * The definitions for UTS_RELEASE and UTS_VERSION are now defined
 * in linux/version.h, and should only be used by linux/version.c
 */

/* interrupt service routine function ptr type */
struct intframe;
#ifndef ISRFUNC_T
typedef void (*isrfunc) (int irq, struct intframe *fp, void *data);
#define ISRFUNC_T
#endif /* ISRFUNC_T */

extern void (*mach_sched_init) (isrfunc);
extern unsigned long (*mach_keyb_init) (unsigned long);
struct kbd_repeat;
extern int (*mach_kbdrate) (struct kbd_repeat *);
extern void (*mach_kbd_leds) (unsigned int);
extern void (*mach_init_INTS) (void);
extern int (*mach_add_isr) (unsigned long source, isrfunc isr,
			    int pri, void *data, char *name);
extern int (*mach_remove_isr) (unsigned long source, isrfunc isr);
extern int (*mach_get_irq_list)(char *buf, int len);
extern void (*mach_process_int) (int level, struct intframe *fp);
extern void (*mach_enable_irq) (unsigned);
extern void (*mach_disable_irq) (unsigned);
extern unsigned long (*mach_gettimeoffset)(void);
struct mktime;
extern void (*mach_gettod)(int *year, int *mon, int *day, int *hour,
			   int *min, int *sec);
struct hwclk_time;
extern int (*mach_hwclk)(int, struct hwclk_time*);
extern int (*mach_set_clock_mmss)(unsigned long);
struct gendisk;
extern void (*mach_check_partition) (struct gendisk *hd, unsigned int dev);
extern void (*mach_mksound)( unsigned int count, unsigned int ticks );
extern void (*mach_reset)( void );
extern unsigned long (*mach_floppy_init) (unsigned long, unsigned long);
struct buffer_head;
extern void (*waitbut)(void);
extern struct fb_info *(*mach_fb_init)(long *);
extern void (*mach_debug_init)(void);
extern void (*mach_video_setup)(char *, int *);
extern void (*mach_floppy_setup)(char *, int *);

#endif /* linux/config.h */
