1
linux/drivers/mfd/timberdale.h
Thomas Gleixner 82c298100a treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 176
Based on 1 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation this program is
  distributed in the hope that it will be useful but without any
  warranty without even the implied warranty of merchantability or
  fitness for a particular purpose see the gnu general public license
  for more details you should have received a copy of the gnu general
  public license along with this program if not write to the free
  software foundation inc 675 mass ave cambridge ma 02139 usa

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 44 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Allison Randal <allison@lohutok.net>
Reviewed-by: Steve Winslow <swinslow@gmail.com>
Reviewed-by: Alexios Zavras <alexios.zavras@intel.com>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190528170025.980374610@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-30 11:29:19 -07:00

131 lines
2.8 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* timberdale.h timberdale FPGA MFD driver defines
* Copyright (c) 2009 Intel Corporation
*/
/* Supports:
* Timberdale FPGA
*/
#ifndef MFD_TIMBERDALE_H
#define MFD_TIMBERDALE_H
#define DRV_VERSION "0.3"
/* This driver only support versions >= 3.8 and < 4.0 */
#define TIMB_SUPPORTED_MAJOR 3
/* This driver only support minor >= 8 */
#define TIMB_REQUIRED_MINOR 8
/* Registers of the control area */
#define TIMB_REV_MAJOR 0x00
#define TIMB_REV_MINOR 0x04
#define TIMB_HW_CONFIG 0x08
#define TIMB_SW_RST 0x40
/* bits in the TIMB_HW_CONFIG register */
#define TIMB_HW_CONFIG_SPI_8BIT 0x80
#define TIMB_HW_VER_MASK 0x0f
#define TIMB_HW_VER0 0x00
#define TIMB_HW_VER1 0x01
#define TIMB_HW_VER2 0x02
#define TIMB_HW_VER3 0x03
#define OCORESOFFSET 0x0
#define OCORESEND 0x1f
#define SPIOFFSET 0x80
#define SPIEND 0xff
#define UARTLITEOFFSET 0x100
#define UARTLITEEND 0x10f
#define RDSOFFSET 0x180
#define RDSEND 0x183
#define ETHOFFSET 0x300
#define ETHEND 0x3ff
#define GPIOOFFSET 0x400
#define GPIOEND 0x7ff
#define CHIPCTLOFFSET 0x800
#define CHIPCTLEND 0x8ff
#define CHIPCTLSIZE (CHIPCTLEND - CHIPCTLOFFSET + 1)
#define INTCOFFSET 0xc00
#define INTCEND 0xfff
#define INTCSIZE (INTCEND - INTCOFFSET)
#define MOSTOFFSET 0x1000
#define MOSTEND 0x13ff
#define UARTOFFSET 0x1400
#define UARTEND 0x17ff
#define XIICOFFSET 0x1800
#define XIICEND 0x19ff
#define I2SOFFSET 0x1C00
#define I2SEND 0x1fff
#define LOGIWOFFSET 0x30000
#define LOGIWEND 0x37fff
#define MLCOREOFFSET 0x40000
#define MLCOREEND 0x43fff
#define DMAOFFSET 0x01000000
#define DMAEND 0x013fffff
/* SDHC0 is placed in PCI bar 1 */
#define SDHC0OFFSET 0x00
#define SDHC0END 0xff
/* SDHC1 is placed in PCI bar 2 */
#define SDHC1OFFSET 0x00
#define SDHC1END 0xff
#define PCI_VENDOR_ID_TIMB 0x10ee
#define PCI_DEVICE_ID_TIMB 0xa123
#define IRQ_TIMBERDALE_INIC 0
#define IRQ_TIMBERDALE_MLB 1
#define IRQ_TIMBERDALE_GPIO 2
#define IRQ_TIMBERDALE_I2C 3
#define IRQ_TIMBERDALE_UART 4
#define IRQ_TIMBERDALE_DMA 5
#define IRQ_TIMBERDALE_I2S 6
#define IRQ_TIMBERDALE_TSC_INT 7
#define IRQ_TIMBERDALE_SDHC 8
#define IRQ_TIMBERDALE_ADV7180 9
#define IRQ_TIMBERDALE_ETHSW_IF 10
#define IRQ_TIMBERDALE_SPI 11
#define IRQ_TIMBERDALE_UARTLITE 12
#define IRQ_TIMBERDALE_MLCORE 13
#define IRQ_TIMBERDALE_MLCORE_BUF 14
#define IRQ_TIMBERDALE_RDS 15
#define TIMBERDALE_NR_IRQS 16
#define GPIO_PIN_ASCB 8
#define GPIO_PIN_INIC_RST 14
#define GPIO_PIN_BT_RST 15
#define GPIO_NR_PINS 16
/* DMA Channels */
#define DMA_UART_RX 0
#define DMA_UART_TX 1
#define DMA_MLB_RX 2
#define DMA_MLB_TX 3
#define DMA_VIDEO_RX 4
#define DMA_VIDEO_DROP 5
#define DMA_SDHCI_RX 6
#define DMA_SDHCI_TX 7
#define DMA_ETH_RX 8
#define DMA_ETH_TX 9
#endif