Changeset 6095342 in mainline for arch/ia64/src


Ignore:
Timestamp:
2005-12-10T01:28:08Z (20 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
aace6624
Parents:
fcfac420
Message:

Some small fixes, basic changes to ia64 & ppc32 without testing.

Location:
arch/ia64/src
Files:
1 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • arch/ia64/src/drivers/it.c

    rfcfac420 r6095342  
    3030 
    3131#include <arch/drivers/it.h>
    32 #include <arch/drivers/keyboard.h>
     32#include <arch/ski/ski.h>
    3333#include <arch/interrupt.h>
    3434#include <arch/register.h>
  • arch/ia64/src/ia64.c

    rfcfac420 r6095342  
    3333#include <arch/barrier.h>
    3434#include <arch/types.h>
    35 #include <arch/drivers/keyboard.h>
    3635
    3736#include <console/console.h>
     
    4443       
    4544        ski_init_console();
    46         keyboard_init();
    4745        it_init();
    4846}
  • arch/ia64/src/ski/ski.c

    rfcfac420 r6095342  
    2828
    2929#include <arch/ski/ski.h>
     30#include <console/console.h>
     31#include <console/chardev.h>
    3032
    31 /** Initialize debug console
    32  *
    33  * Issue SSC (Simulator System Call) to
    34  * to open debug console.
    35  */
    36 void ski_init_console(void)
    37 {
    38         __asm__ (
    39                 "mov r15=%0\n"
    40                 "break 0x80000\n"
    41                 :
    42                 : "i" (SKI_INIT_CONSOLE)
    43                 : "r15", "r8"
    44         );
    45 }
     33static chardev_t ski_console;
     34static bool kb_disable;
    4635
    4736/** Display character on debug console
     
    5241 * @param ch   Character to be printed.
    5342 */
    54 void ski_putchar(const char ch)
     43void ski_write(chardev_t *d, const char ch)
    5544{
    5645        __asm__ (
     
    9180        return (__s32)ch;
    9281}
     82
     83/** Ask keyboard if a key was pressed. */
     84void poll_keyboard(void)
     85{
     86        char ch;
     87
     88        if (kb_disable)
     89                return;
     90
     91        ch = ski_getchar();
     92        if(ch == '\r')
     93                ch = '\n';
     94        if (ch)
     95                chardev_push_character(&ski_console, ch);
     96}
     97
     98/* Called from getc(). */
     99static void ski_kb_enable(chardev_t *)
     100{
     101        kb_disable = false;
     102}
     103
     104/* Called from getc(). */
     105static void ski_kb_disable(chardev_t *d)
     106{
     107        kb_disable = true;     
     108}
     109
     110
     111static chardev_operations_t ski_ops = {
     112        .resume = ski_kb_enable,
     113        .suspend = ski_kb_disable,
     114        .write = ski_write
     115};
     116
     117
     118/** Initialize debug console
     119 *
     120 * Issue SSC (Simulator System Call) to
     121 * to open debug console.
     122 */
     123void ski_init_console(void)
     124{
     125        __asm__ (
     126                "mov r15=%0\n"
     127                "break 0x80000\n"
     128                :
     129                : "i" (SKI_INIT_CONSOLE)
     130                : "r15", "r8"
     131        );
     132
     133        chardev_initialize("ski_console", &ski_console, &ski_ops);
     134        stdin = &ski_console;
     135        stdout = &ski_console;
     136}
Note: See TracChangeset for help on using the changeset viewer.