linux/arch/arm/mach-omap1/include/mach/ams-delta-fiq.h
<<
>>
Prefs
   1/*
   2 * arch/arm/mach-omap1/include/ams-delta-fiq.h
   3 *
   4 * Taken from the original Amstrad modifications to fiq.h
   5 *
   6 * Copyright (c) 2004 Amstrad Plc
   7 * Copyright (c) 2006 Matt Callow
   8 * Copyright (c) 2010 Janusz Krzysztofik
   9 *
  10 * This program is free software; you can redistribute it and/or modify
  11 * it under the terms of the GNU General Public License version 2 as
  12 * published by the Free Software Foundation.
  13 */
  14#ifndef __AMS_DELTA_FIQ_H
  15#define __AMS_DELTA_FIQ_H
  16
  17/*
  18 * Interrupt number used for passing control from FIQ to IRQ.
  19 * IRQ12, described as reserved, has been selected.
  20 */
  21#define INT_DEFERRED_FIQ        INT_1510_RES12
  22/*
  23 * Base address of an interrupt handler that the INT_DEFERRED_FIQ belongs to.
  24 */
  25#if (INT_DEFERRED_FIQ < IH2_BASE)
  26#define DEFERRED_FIQ_IH_BASE    OMAP_IH1_BASE
  27#else
  28#define DEFERRED_FIQ_IH_BASE    OMAP_IH2_BASE
  29#endif
  30
  31/*
  32 * These are the offsets from the beginning of the fiq_buffer. They are put here
  33 * since the buffer and header need to be accessed by drivers servicing devices
  34 * which generate GPIO interrupts - e.g. keyboard, modem, hook switch.
  35 */
  36#define FIQ_MASK                 0
  37#define FIQ_STATE                1
  38#define FIQ_KEYS_CNT             2
  39#define FIQ_TAIL_OFFSET          3
  40#define FIQ_HEAD_OFFSET          4
  41#define FIQ_BUF_LEN              5
  42#define FIQ_KEY                  6
  43#define FIQ_MISSED_KEYS          7
  44#define FIQ_BUFFER_START         8
  45#define FIQ_GPIO_INT_MASK        9
  46#define FIQ_KEYS_HICNT          10
  47#define FIQ_IRQ_PEND            11
  48#define FIQ_SIR_CODE_L1         12
  49#define IRQ_SIR_CODE_L2         13
  50
  51#define FIQ_CNT_INT_00          14
  52#define FIQ_CNT_INT_KEY         15
  53#define FIQ_CNT_INT_MDM         16
  54#define FIQ_CNT_INT_03          17
  55#define FIQ_CNT_INT_HSW         18
  56#define FIQ_CNT_INT_05          19
  57#define FIQ_CNT_INT_06          20
  58#define FIQ_CNT_INT_07          21
  59#define FIQ_CNT_INT_08          22
  60#define FIQ_CNT_INT_09          23
  61#define FIQ_CNT_INT_10          24
  62#define FIQ_CNT_INT_11          25
  63#define FIQ_CNT_INT_12          26
  64#define FIQ_CNT_INT_13          27
  65#define FIQ_CNT_INT_14          28
  66#define FIQ_CNT_INT_15          29
  67
  68#define FIQ_CIRC_BUFF           30      /*Start of circular buffer */
  69
  70#ifndef __ASSEMBLER__
  71extern unsigned int fiq_buffer[];
  72extern unsigned char qwerty_fiqin_start, qwerty_fiqin_end;
  73
  74extern void __init ams_delta_init_fiq(void);
  75#endif
  76
  77#endif
  78