12874c5fdSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
2511e6bc0Shuangdaode /*
3511e6bc0Shuangdaode  * Copyright (c) 2014-2015 Hisilicon Limited.
4511e6bc0Shuangdaode  */
5511e6bc0Shuangdaode 
6511e6bc0Shuangdaode #ifndef _HNS_DSAF_MISC_H
7511e6bc0Shuangdaode #define _HNS_DSAF_MISC_H
8511e6bc0Shuangdaode 
9511e6bc0Shuangdaode #include <linux/of.h>
10511e6bc0Shuangdaode #include <linux/of_address.h>
11511e6bc0Shuangdaode #include <linux/platform_device.h>
12511e6bc0Shuangdaode 
13511e6bc0Shuangdaode #include "hns_dsaf_mac.h"
14511e6bc0Shuangdaode 
15511e6bc0Shuangdaode #define CPLD_ADDR_PORT_OFFSET	0x4
16511e6bc0Shuangdaode 
17511e6bc0Shuangdaode #define HS_LED_ON		0xE
18511e6bc0Shuangdaode #define HS_LED_OFF		0xF
19511e6bc0Shuangdaode 
20511e6bc0Shuangdaode #define CPLD_LED_ON_VALUE	1
21511e6bc0Shuangdaode #define CPLD_LED_DEFAULT_VALUE	0
22511e6bc0Shuangdaode 
23511e6bc0Shuangdaode #define MAC_SFP_PORT_OFFSET	0x2
24511e6bc0Shuangdaode 
25511e6bc0Shuangdaode #define DSAF_LED_SPEED_S 0
26511e6bc0Shuangdaode #define DSAF_LED_SPEED_M (0x3 << DSAF_LED_SPEED_S)
27511e6bc0Shuangdaode 
28511e6bc0Shuangdaode #define DSAF_LED_LINK_B 2
29511e6bc0Shuangdaode #define DSAF_LED_DATA_B 4
30511e6bc0Shuangdaode #define DSAF_LED_ANCHOR_B 5
31511e6bc0Shuangdaode 
32a24274aaSKejian Yan struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev);
33d605916bSSalil struct
34d605916bSSalil platform_device *hns_dsaf_find_platform_device(struct fwnode_handle *fwnode);
35511e6bc0Shuangdaode #endif
36