Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 576 → Rev 577

/kernel/trunk/Makefile
174,9 → 174,7
ln -sfn ../../arch/$(ARCH)/include/ generic/include/arch
ln -sfn ../../genarch/include/ generic/include/genarch
 
depend: archlinks Makefile.depend
 
Makefile.depend:
depend: archlinks
-makedepend $(DEFS) $(CFLAGS) -f - $(ARCH_SOURCES) $(GENARCH_SOURCES) $(GENERIC_SOURCES) >Makefile.depend 2>/dev/null
#$(CC) $(DEFS) $(CFLAGS) -M $(ARCH_SOURCES) $(GENARCH_SOURCES) $(GENERIC_SOURCES) > Makefile.depend
 
/kernel/trunk/arch/ia64/include/ski/ski.h
37,7 → 37,6
#define SKI_PUTCHAR 31
 
extern void ski_init_console(void);
extern void ski_putchar(const char ch);
extern __s32 ski_getchar(void);
extern void poll_keyboard(void);
#endif
/kernel/trunk/arch/ia64/include/drivers/keyboard.h
File deleted
/kernel/trunk/arch/ia64/src/ia64.c
32,7 → 32,6
#include <arch/interrupt.h>
#include <arch/barrier.h>
#include <arch/types.h>
#include <arch/drivers/keyboard.h>
 
#include <console/console.h>
 
43,7 → 42,6
srlz_d();
ski_init_console();
keyboard_init();
it_init();
}
 
/kernel/trunk/arch/ia64/src/ski/ski.c
27,22 → 27,11
*/
 
#include <arch/ski/ski.h>
#include <console/console.h>
#include <console/chardev.h>
 
/** Initialize debug console
*
* Issue SSC (Simulator System Call) to
* to open debug console.
*/
void ski_init_console(void)
{
__asm__ (
"mov r15=%0\n"
"break 0x80000\n"
:
: "i" (SKI_INIT_CONSOLE)
: "r15", "r8"
);
}
static chardev_t ski_console;
static bool kb_disable;
 
/** Display character on debug console
*
51,7 → 40,7
*
* @param ch Character to be printed.
*/
void ski_putchar(const char ch)
void ski_write(chardev_t *d, const char ch)
{
__asm__ (
"mov r15=%0\n"
90,3 → 79,58
 
return (__s32)ch;
}
 
/** Ask keyboard if a key was pressed. */
void poll_keyboard(void)
{
char ch;
 
if (kb_disable)
return;
 
ch = ski_getchar();
if(ch == '\r')
ch = '\n';
if (ch)
chardev_push_character(&ski_console, ch);
}
 
/* Called from getc(). */
static void ski_kb_enable(chardev_t *)
{
kb_disable = false;
}
 
/* Called from getc(). */
static void ski_kb_disable(chardev_t *d)
{
kb_disable = true;
}
 
 
static chardev_operations_t ski_ops = {
.resume = ski_kb_enable,
.suspend = ski_kb_disable,
.write = ski_write
};
 
 
/** Initialize debug console
*
* Issue SSC (Simulator System Call) to
* to open debug console.
*/
void ski_init_console(void)
{
__asm__ (
"mov r15=%0\n"
"break 0x80000\n"
:
: "i" (SKI_INIT_CONSOLE)
: "r15", "r8"
);
 
chardev_initialize("ski_console", &ski_console, &ski_ops);
stdin = &ski_console;
stdout = &ski_console;
}
/kernel/trunk/arch/ia64/src/drivers/keyboard.c
File deleted
/kernel/trunk/arch/ia64/src/drivers/it.c
29,7 → 29,7
/** Interval Timer driver. */
#include <arch/drivers/it.h>
#include <arch/drivers/keyboard.h>
#include <arch/ski/ski.h>
#include <arch/interrupt.h>
#include <arch/register.h>
#include <arch/asm.h>
/kernel/trunk/arch/ppc32/src/console.c
28,12 → 28,26
 
#include <putchar.h>
#include <genarch/ofw/ofw.h>
#include <console/chardev.h>
#include <console/console.h>
 
/** Print one character.
*
* @param ch Character to be printed.
*/
void putchar(const char ch)
static void ofw_write(chardev_t *d, const char ch)
{
ofw_putchar(ch);
}
 
chardev_t ofw_console;
static chardev_operations_t ofw_ops = {
.write = ofw_write
};
 
/** Initialize console to use ofw output */
void console_init(void)
{
chardev_initialize("ofw_out", &ofw_console, &ofw_ops);
stdout = &ofw_console;
}
/kernel/trunk/arch/mips32/src/drivers/serial.c
33,8 → 33,8
#include <console/console.h>
 
static chardev_t console;
 
static serial_t sconf[SERIAL_MAX];
static bool kb_enabled;
 
static void serial_write(chardev_t *d, const char ch)
{
51,10 → 51,12
 
static void serial_enable(chardev_t *d)
{
kb_enabled = true;
}
 
static void serial_disable(chardev_t *d)
{
kb_enabled = false;
}
 
int serial_init(void)
107,6 → 109,7
 
chardev_initialize("serial_console", &console, &serial_ops);
console.data = sd;
kb_enabled = true;
 
// exc_register(2, "serial_drvr", serial_interrupt);
/* I don't know why, but the serial interrupts simply
/kernel/trunk/arch/mips32/src/drivers/arc.c
188,7 → 188,7
arc_putchar('\n');
}
 
static int kbd_polling_enabled;
static bool kbd_polling_enabled;
static chardev_t console;
 
/** Try to get character, return character or -1 if not available */
220,12 → 220,12
 
static void arc_enable(chardev_t *dev)
{
kbd_polling_enabled = 1;
kbd_polling_enabled = true;
}
 
static void arc_disable(chardev_t *dev)
{
kbd_polling_enabled = 0;
kbd_polling_enabled = false;
}
 
static chardev_operations_t arc_ops = {
246,7 → 246,7
 
chardev_t * arc_console(void)
{
kbd_polling_enabled = 1;
kbd_polling_enabled = true;
chardev_initialize("arc_console", &console, &arc_ops);
old_timer = exc_register(TIMER_IRQ, "arc_kb_poll", timer_replace);