ksz8.h (7fcb820c7609f207cd2e5b49bff96a5b55167cf3) ksz8.h (486f9ca715d7b70ed79dbe91296b9e0110deaab5)
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Microchip KSZ8XXX series register access
4 *
5 * Copyright (C) 2020 Pengutronix, Michael Grzeschik <kernel@pengutronix.de>
6 */
7
8#ifndef __KSZ8XXX_H
9#define __KSZ8XXX_H
10
11#include <linux/types.h>
12#include <net/dsa.h>
13#include "ksz_common.h"
14
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Microchip KSZ8XXX series register access
4 *
5 * Copyright (C) 2020 Pengutronix, Michael Grzeschik <kernel@pengutronix.de>
6 */
7
8#ifndef __KSZ8XXX_H
9#define __KSZ8XXX_H
10
11#include <linux/types.h>
12#include <net/dsa.h>
13#include "ksz_common.h"
14
15enum ksz_regs {
16 REG_IND_CTRL_0,
17 REG_IND_DATA_8,
18 REG_IND_DATA_CHECK,
19 REG_IND_DATA_HI,
20 REG_IND_DATA_LO,
21 REG_IND_MIB_CHECK,
22 REG_IND_BYTE,
23 P_FORCE_CTRL,
24 P_LINK_STATUS,
25 P_LOCAL_CTRL,
26 P_NEG_RESTART_CTRL,
27 P_REMOTE_STATUS,
28 P_SPEED_STATUS,
29 S_TAIL_TAG_CTRL,
30};
31
32enum ksz_masks {
33 PORT_802_1P_REMAPPING,
34 SW_TAIL_TAG_ENABLE,
35 MIB_COUNTER_OVERFLOW,
36 MIB_COUNTER_VALID,
37 VLAN_TABLE_FID,
38 VLAN_TABLE_MEMBERSHIP,
39 VLAN_TABLE_VALID,

--- 19 unchanged lines hidden (view full) ---

59 DYNAMIC_MAC_ENTRIES_H,
60 DYNAMIC_MAC_ENTRIES,
61 DYNAMIC_MAC_FID,
62 DYNAMIC_MAC_TIMESTAMP,
63 DYNAMIC_MAC_SRC_PORT,
64};
65
66struct ksz8 {
15enum ksz_masks {
16 PORT_802_1P_REMAPPING,
17 SW_TAIL_TAG_ENABLE,
18 MIB_COUNTER_OVERFLOW,
19 MIB_COUNTER_VALID,
20 VLAN_TABLE_FID,
21 VLAN_TABLE_MEMBERSHIP,
22 VLAN_TABLE_VALID,

--- 19 unchanged lines hidden (view full) ---

42 DYNAMIC_MAC_ENTRIES_H,
43 DYNAMIC_MAC_ENTRIES,
44 DYNAMIC_MAC_FID,
45 DYNAMIC_MAC_TIMESTAMP,
46 DYNAMIC_MAC_SRC_PORT,
47};
48
49struct ksz8 {
67 const u8 *regs;
68 const u32 *masks;
69 const u8 *shifts;
70 void *priv;
71};
72
73int ksz8_setup(struct dsa_switch *ds);
74u32 ksz8_get_port_addr(int port, int offset);
75void ksz8_cfg_port_member(struct ksz_device *dev, int port, u8 member);

--- 44 unchanged lines hidden ---
50 const u32 *masks;
51 const u8 *shifts;
52 void *priv;
53};
54
55int ksz8_setup(struct dsa_switch *ds);
56u32 ksz8_get_port_addr(int port, int offset);
57void ksz8_cfg_port_member(struct ksz_device *dev, int port, u8 member);

--- 44 unchanged lines hidden ---