kunpeng_hccs.h (b51878373a81bda3a790fd936507fd0643ef98b3) | kunpeng_hccs.h (23fe8112a23106e7dfc2b73fc52a60ea3eb64c20) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* Copyright (c) 2023 Hisilicon Limited. */ 3 4#ifndef __KUNPENG_HCCS_H__ 5#define __KUNPENG_HCCS_H__ 6 7/* 8 * |--------------- Chip0 ---------------|---------------- ChipN -------------| 9 * |--------Die0-------|--------DieN-------|--------Die0-------|-------DieN-------| 10 * | P0 | P1 | P2 | P3 | P0 | P1 | P2 | P3 | P0 | P1 | P2 | P3 |P0 | P1 | P2 | P3 | 11 */ 12 | 1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* Copyright (c) 2023 Hisilicon Limited. */ 3 4#ifndef __KUNPENG_HCCS_H__ 5#define __KUNPENG_HCCS_H__ 6 7/* 8 * |--------------- Chip0 ---------------|---------------- ChipN -------------| 9 * |--------Die0-------|--------DieN-------|--------Die0-------|-------DieN-------| 10 * | P0 | P1 | P2 | P3 | P0 | P1 | P2 | P3 | P0 | P1 | P2 | P3 |P0 | P1 | P2 | P3 | 11 */ 12 |
13enum hccs_port_type { 14 HCCS_V1 = 1, 15 HCCS_V2, 16}; 17 18#define HCCS_IP_PREFIX "HCCS-v" 19#define HCCS_IP_MAX 255 20#define HCCS_NAME_MAX_LEN 9 21struct hccs_type_name_map { 22 u8 type; 23 char name[HCCS_NAME_MAX_LEN + 1]; 24}; 25 |
|
13/* 14 * This value cannot be 255, otherwise the loop of the multi-BD communication 15 * case cannot end. 16 */ 17#define HCCS_DIE_MAX_PORT_ID 254 18 19struct hccs_port_info { 20 u8 port_id; --- 48 unchanged lines hidden (view full) --- 69 70struct hccs_dev { 71 struct device *dev; 72 struct acpi_device *acpi_dev; 73 const struct hccs_verspecific_data *verspec_data; 74 u64 caps; 75 u8 chip_num; 76 struct hccs_chip_info *chips; | 26/* 27 * This value cannot be 255, otherwise the loop of the multi-BD communication 28 * case cannot end. 29 */ 30#define HCCS_DIE_MAX_PORT_ID 254 31 32struct hccs_port_info { 33 u8 port_id; --- 48 unchanged lines hidden (view full) --- 82 83struct hccs_dev { 84 struct device *dev; 85 struct acpi_device *acpi_dev; 86 const struct hccs_verspecific_data *verspec_data; 87 u64 caps; 88 u8 chip_num; 89 struct hccs_chip_info *chips; |
90 u16 used_type_num; 91 struct hccs_type_name_map *type_name_maps; |
|
77 u8 chan_id; 78 struct mutex lock; 79 struct hccs_mbox_client_info cl_info; 80}; 81 82#define HCCS_SERDES_MODULE_CODE 0x32 83enum hccs_subcmd_type { 84 HCCS_GET_CHIP_NUM = 0x1, --- 122 unchanged lines hidden --- | 92 u8 chan_id; 93 struct mutex lock; 94 struct hccs_mbox_client_info cl_info; 95}; 96 97#define HCCS_SERDES_MODULE_CODE 0x32 98enum hccs_subcmd_type { 99 HCCS_GET_CHIP_NUM = 0x1, --- 122 unchanged lines hidden --- |