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 KSZ88X3_CHIP_ID = 0x8830, 31 KSZ8864_CHIP_ID = 0x8864, 32 KSZ8895_CHIP_ID = 0x8895, 33 KSZ9477_CHIP_ID = 0x00947700, 34 KSZ9896_CHIP_ID = 0x00989600, 35 KSZ9897_CHIP_ID = 0x00989700, 36 KSZ9893_CHIP_ID = 0x00989300, 37 KSZ9563_CHIP_ID = 0x00956300, 38 KSZ8567_CHIP_ID = 0x00856700, 39 KSZ9567_CHIP_ID = 0x00956700, 40 LAN9370_CHIP_ID = 0x00937000, 41 LAN9371_CHIP_ID = 0x00937100, 42 LAN9372_CHIP_ID = 0x00937200, 43 LAN9373_CHIP_ID = 0x00937300, 44 LAN9374_CHIP_ID = 0x00937400, 45 }; 46 47 struct ksz_platform_data { 48 /* Must be first such that dsa_register_switch() can access it */ 49 struct dsa_chip_data cd; 50 u32 chip_id; 51 }; 52 53 #endif 54