1/*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2003-2012 Broadcom Corporation
5 * All Rights Reserved
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * 1. Redistributions of source code must retain the above copyright
12 *    notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 *    notice, this list of conditions and the following disclaimer in
15 *    the documentation and/or other materials provided with the
16 *    distribution.
17 *
18 * THIS SOFTWARE IS PROVIDED BY BROADCOM ``AS IS'' AND ANY EXPRESS OR
19 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL BROADCOM OR CONTRIBUTORS BE LIABLE
22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
25 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
27 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
28 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 *
30 * $FreeBSD$
31 */
32#ifndef __NLM_ILAKEN_H__
33#define	__NLM_ILAKEN_H__
34
35/**
36* @file_name interlaken.h
37* @author Netlogic Microsystems
38* @brief Basic definitions of XLP ILAKEN ports
39*/
40
41#define	ILK_TX_CONTROL(block)		NAE_REG(block, 5, 0x00)
42#define	ILK_TX_RATE_LIMIT(block)	NAE_REG(block, 5, 0x01)
43#define	ILK_TX_META_CTRL(block)		NAE_REG(block, 5, 0x02)
44#define	ILK_RX_CTRL(block)		NAE_REG(block, 5, 0x03)
45#define	ILK_RX_STATUS1(block)		NAE_REG(block, 5, 0x04)
46#define	ILK_RX_STATUS2(block)		NAE_REG(block, 5, 0x05)
47#define	ILK_GENERAL_CTRL1(block)	NAE_REG(block, 5, 0x06)
48#define	ILK_STATUS3(block)		NAE_REG(block, 5, 0x07)
49#define	ILK_RX_FC_TMAP0(block)		NAE_REG(block, 5, 0x08)
50#define	ILK_RX_FC_TMAP1(block)		NAE_REG(block, 5, 0x09)
51#define	ILK_RX_FC_TMAP2(block)		NAE_REG(block, 5, 0x0a)
52#define	ILK_RX_FC_TMAP3(block)		NAE_REG(block, 5, 0x0b)
53#define	ILK_RX_FC_TMAP4(block)		NAE_REG(block, 5, 0x0c)
54#define	ILK_RX_FC_TADDR(block)		NAE_REG(block, 5, 0x0d)
55#define	ILK_GENERAL_CTRL2(block)	NAE_REG(block, 5, 0x0e)
56#define	ILK_GENERAL_CTRL3(block)	NAE_REG(block, 5, 0x0f)
57#define	ILK_SMALL_COUNT0(block)		NAE_REG(block, 5, 0x10)
58#define	ILK_SMALL_COUNT1(block)		NAE_REG(block, 5, 0x11)
59#define	ILK_SMALL_COUNT2(block)		NAE_REG(block, 5, 0x12)
60#define	ILK_SMALL_COUNT3(block)		NAE_REG(block, 5, 0x13)
61#define	ILK_SMALL_COUNT4(block)		NAE_REG(block, 5, 0x14)
62#define	ILK_SMALL_COUNT5(block)		NAE_REG(block, 5, 0x15)
63#define	ILK_SMALL_COUNT6(block)		NAE_REG(block, 5, 0x16)
64#define	ILK_SMALL_COUNT7(block)		NAE_REG(block, 5, 0x17)
65#define	ILK_MID_COUNT0(block)		NAE_REG(block, 5, 0x18)
66#define	ILK_MID_COUNT1(block)		NAE_REG(block, 5, 0x19)
67#define	ILK_LARGE_COUNT0(block)		NAE_REG(block, 5, 0x1a)
68#define	ILK_LARGE_COUNT1(block)		NAE_REG(block, 5, 0x1b)
69#define	ILK_LARGE_COUNT_H0(block)	NAE_REG(block, 5, 0x1c)
70#define	ILK_LARGE_COUNT_H1(block)	NAE_REG(block, 5, 0x1d)
71
72#endif
73