xref: /linux/include/linux/platform_data/microchip-ksz.h (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
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 	KSZ8463_CHIP_ID = 0x8463,
27 	KSZ8563_CHIP_ID = 0x8563,
28 	KSZ8795_CHIP_ID = 0x8795,
29 	KSZ8794_CHIP_ID = 0x8794,
30 	KSZ8765_CHIP_ID = 0x8765,
31 	KSZ88X3_CHIP_ID = 0x8830,
32 	KSZ8864_CHIP_ID = 0x8864,
33 	KSZ8895_CHIP_ID = 0x8895,
34 	KSZ9477_CHIP_ID = 0x00947700,
35 	KSZ9896_CHIP_ID = 0x00989600,
36 	KSZ9897_CHIP_ID = 0x00989700,
37 	KSZ9893_CHIP_ID = 0x00989300,
38 	KSZ9563_CHIP_ID = 0x00956300,
39 	KSZ8567_CHIP_ID = 0x00856700,
40 	KSZ9567_CHIP_ID = 0x00956700,
41 	LAN9370_CHIP_ID = 0x00937000,
42 	LAN9371_CHIP_ID = 0x00937100,
43 	LAN9372_CHIP_ID = 0x00937200,
44 	LAN9373_CHIP_ID = 0x00937300,
45 	LAN9374_CHIP_ID = 0x00937400,
46 	LAN9646_CHIP_ID = 0x00964600,
47 };
48 
49 struct ksz_platform_data {
50 	/* Must be first such that dsa_register_switch() can access it */
51 	struct dsa_chip_data cd;
52 	u32 chip_id;
53 };
54 
55 #endif
56