linux/drivers/input/serio/i8042-ip22io.h
<<
>>
Prefs
   1#ifndef _I8042_IP22_H
   2#define _I8042_IP22_H
   3
   4#include <asm/sgi/ioc.h>
   5#include <asm/sgi/ip22.h>
   6
   7/*
   8 * This program is free software; you can redistribute it and/or modify it
   9 * under the terms of the GNU General Public License version 2 as published by
  10 * the Free Software Foundation.
  11 */
  12
  13/*
  14 * Names.
  15 */
  16
  17#define I8042_KBD_PHYS_DESC "hpc3ps2/serio0"
  18#define I8042_AUX_PHYS_DESC "hpc3ps2/serio1"
  19#define I8042_MUX_PHYS_DESC "hpc3ps2/serio%d"
  20
  21/*
  22 * IRQs.
  23 */
  24
  25#define I8042_KBD_IRQ SGI_KEYBD_IRQ
  26#define I8042_AUX_IRQ SGI_KEYBD_IRQ
  27
  28/*
  29 * Register numbers.
  30 */
  31
  32#define I8042_COMMAND_REG       ((unsigned long)&sgioc->kbdmouse.command)
  33#define I8042_STATUS_REG        ((unsigned long)&sgioc->kbdmouse.command)
  34#define I8042_DATA_REG          ((unsigned long)&sgioc->kbdmouse.data)
  35
  36static inline int i8042_read_data(void)
  37{
  38        return sgioc->kbdmouse.data;
  39}
  40
  41static inline int i8042_read_status(void)
  42{
  43        return sgioc->kbdmouse.command;
  44}
  45
  46static inline void i8042_write_data(int val)
  47{
  48        sgioc->kbdmouse.data = val;
  49}
  50
  51static inline void i8042_write_command(int val)
  52{
  53        sgioc->kbdmouse.command = val;
  54}
  55
  56static inline int i8042_platform_init(void)
  57{
  58#if 0
  59        /* XXX sgi_kh is a virtual address */
  60        if (!request_mem_region(sgi_kh, sizeof(struct hpc_keyb), "i8042"))
  61                return -EBUSY;
  62#endif
  63
  64        i8042_reset = 1;
  65
  66        return 0;
  67}
  68
  69static inline void i8042_platform_exit(void)
  70{
  71#if 0
  72        release_mem_region(JAZZ_KEYBOARD_ADDRESS, sizeof(struct hpc_keyb));
  73#endif
  74}
  75
  76#endif /* _I8042_IP22_H */
  77