xref: /linux/include/linux/platform_data/microchip-ksz.h (revision bf5802238dc181b1f7375d358af1d01cd72d1c11)
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 	KSZ9567_CHIP_ID = 0x00956700,
37 	LAN9370_CHIP_ID = 0x00937000,
38 	LAN9371_CHIP_ID = 0x00937100,
39 	LAN9372_CHIP_ID = 0x00937200,
40 	LAN9373_CHIP_ID = 0x00937300,
41 	LAN9374_CHIP_ID = 0x00937400,
42 };
43 
44 struct ksz_platform_data {
45 	/* Must be first such that dsa_register_switch() can access it */
46 	struct dsa_chip_data cd;
47 	u32 chip_id;
48 };
49 
50 #endif
51