blob: 13302b67857a50ee4dd424480e64a5689381d75d [file] [log] [blame]
Roy Huang088eec12007-06-21 11:34:16 +08001/*
Robin Getz96f10502009-09-24 14:11:24 +00002 * Copyright 2007-2009 Analog Devices Inc.
Roy Huang088eec12007-06-21 11:34:16 +08003 *
Robin Getz96f10502009-09-24 14:11:24 +00004 * Licensed under the GPL-2 or later.
Roy Huang088eec12007-06-21 11:34:16 +08005 */
6
7#ifndef _MACH_BLACKFIN_H_
8#define _MACH_BLACKFIN_H_
9
Roy Huang24a07a12007-07-12 22:41:45 +080010#include "bf548.h"
Roy Huang24a07a12007-07-12 22:41:45 +080011#include "anomaly.h"
12
Roy Huang088eec12007-06-21 11:34:16 +080013#ifdef CONFIG_BF542
Roy Huang24a07a12007-07-12 22:41:45 +080014#include "defBF542.h"
15#endif
Roy Huang088eec12007-06-21 11:34:16 +080016
17#ifdef CONFIG_BF544
Roy Huang24a07a12007-07-12 22:41:45 +080018#include "defBF544.h"
Roy Huang088eec12007-06-21 11:34:16 +080019#endif
20
Mike Frysinger920e5262008-02-09 02:07:08 +080021#ifdef CONFIG_BF547
22#include "defBF547.h"
23#endif
24
Roy Huang088eec12007-06-21 11:34:16 +080025#ifdef CONFIG_BF548
Roy Huang24a07a12007-07-12 22:41:45 +080026#include "defBF548.h"
Roy Huang088eec12007-06-21 11:34:16 +080027#endif
28
29#ifdef CONFIG_BF549
Roy Huang24a07a12007-07-12 22:41:45 +080030#include "defBF549.h"
Roy Huang088eec12007-06-21 11:34:16 +080031#endif
32
Mike Frysinger17082682007-07-25 11:50:42 +080033#if !defined(__ASSEMBLY__)
Roy Huang088eec12007-06-21 11:34:16 +080034#ifdef CONFIG_BF542
35#include "cdefBF542.h"
36#endif
Roy Huang088eec12007-06-21 11:34:16 +080037#ifdef CONFIG_BF544
38#include "cdefBF544.h"
39#endif
Mike Frysinger920e5262008-02-09 02:07:08 +080040#ifdef CONFIG_BF547
41#include "cdefBF547.h"
42#endif
Roy Huang088eec12007-06-21 11:34:16 +080043#ifdef CONFIG_BF548
44#include "cdefBF548.h"
45#endif
46#ifdef CONFIG_BF549
47#include "cdefBF549.h"
48#endif
49
Roy Huang088eec12007-06-21 11:34:16 +080050#endif
51
Graf Yang5be36d22008-04-25 03:09:15 +080052#define BFIN_UART_NR_PORTS 4
53
54#define OFFSET_DLL 0x00 /* Divisor Latch (Low-Byte) */
55#define OFFSET_DLH 0x04 /* Divisor Latch (High-Byte) */
56#define OFFSET_GCTL 0x08 /* Global Control Register */
57#define OFFSET_LCR 0x0C /* Line Control Register */
58#define OFFSET_MCR 0x10 /* Modem Control Register */
59#define OFFSET_LSR 0x14 /* Line Status Register */
60#define OFFSET_MSR 0x18 /* Modem Status Register */
61#define OFFSET_SCR 0x1C /* SCR Scratch Register */
62#define OFFSET_IER_SET 0x20 /* Set Interrupt Enable Register */
63#define OFFSET_IER_CLEAR 0x24 /* Clear Interrupt Enable Register */
64#define OFFSET_THR 0x28 /* Transmit Holding register */
65#define OFFSET_RBR 0x2C /* Receive Buffer register */
66
Roy Huang088eec12007-06-21 11:34:16 +080067/* PLL_DIV Masks */
68#define CCLK_DIV1 CSEL_DIV1 /* CCLK = VCO / 1 */
69#define CCLK_DIV2 CSEL_DIV2 /* CCLK = VCO / 2 */
70#define CCLK_DIV4 CSEL_DIV4 /* CCLK = VCO / 4 */
71#define CCLK_DIV8 CSEL_DIV8 /* CCLK = VCO / 8 */
72
73#endif