GNU Linux-libre 6.9.2-gnu
[releases.git] / include / linux / platform_data / microchip-ksz.h
1 /*
2  * Microchip KSZ series switch platform data
3  *
4  * Copyright (C) 2017
5  *
6  * Permission to use, copy, modify, and/or distribute this software for any
7  * purpose with or without fee is hereby granted, provided that the above
8  * copyright notice and this permission notice appear in all copies.
9  *
10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17  */
18
19 #ifndef __MICROCHIP_KSZ_H
20 #define __MICROCHIP_KSZ_H
21
22 #include <linux/types.h>
23 #include <linux/platform_data/dsa.h>
24
25 enum ksz_chip_id {
26         KSZ8563_CHIP_ID = 0x8563,
27         KSZ8795_CHIP_ID = 0x8795,
28         KSZ8794_CHIP_ID = 0x8794,
29         KSZ8765_CHIP_ID = 0x8765,
30         KSZ8830_CHIP_ID = 0x8830,
31         KSZ9477_CHIP_ID = 0x00947700,
32         KSZ9896_CHIP_ID = 0x00989600,
33         KSZ9897_CHIP_ID = 0x00989700,
34         KSZ9893_CHIP_ID = 0x00989300,
35         KSZ9563_CHIP_ID = 0x00956300,
36         KSZ8567_CHIP_ID = 0x00856700,
37         KSZ9567_CHIP_ID = 0x00956700,
38         LAN9370_CHIP_ID = 0x00937000,
39         LAN9371_CHIP_ID = 0x00937100,
40         LAN9372_CHIP_ID = 0x00937200,
41         LAN9373_CHIP_ID = 0x00937300,
42         LAN9374_CHIP_ID = 0x00937400,
43 };
44
45 struct ksz_platform_data {
46         /* Must be first such that dsa_register_switch() can access it */
47         struct dsa_chip_data cd;
48         u32 chip_id;
49 };
50
51 #endif