162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (c) 2021 pureLiFi 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#define PURELIFI_BYTE_NUM_ALIGNMENT 4 762306a36Sopenharmony_ci#define ETH_ALEN 6 862306a36Sopenharmony_ci#define AP_USER_LIMIT 8 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#define PLF_VNDR_FPGA_STATE_REQ 0x30 1162306a36Sopenharmony_ci#define PLF_VNDR_FPGA_SET_REQ 0x33 1262306a36Sopenharmony_ci#define PLF_VNDR_FPGA_SET_CMD 0x34 1362306a36Sopenharmony_ci#define PLF_VNDR_FPGA_STATE_CMD 0x35 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#define PLF_VNDR_XL_FW_CMD 0x80 1662306a36Sopenharmony_ci#define PLF_VNDR_XL_DATA_CMD 0x81 1762306a36Sopenharmony_ci#define PLF_VNDR_XL_FILE_CMD 0x82 1862306a36Sopenharmony_ci#define PLF_VNDR_XL_EX_CMD 0x83 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci#define PLF_MAC_VENDOR_REQUEST 0x36 2162306a36Sopenharmony_ci#define PLF_SERIAL_NUMBER_VENDOR_REQUEST 0x37 2262306a36Sopenharmony_ci#define PLF_FIRMWARE_VERSION_VENDOR_REQUEST 0x39 2362306a36Sopenharmony_ci#define PLF_SERIAL_LEN 14 2462306a36Sopenharmony_ci#define PLF_FW_VER_LEN 8 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_cistruct rx_status { 2762306a36Sopenharmony_ci __be16 rssi; 2862306a36Sopenharmony_ci u8 rate_idx; 2962306a36Sopenharmony_ci u8 pad; 3062306a36Sopenharmony_ci __be64 crc_error_count; 3162306a36Sopenharmony_ci} __packed; 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_cienum plf_usb_req_enum { 3462306a36Sopenharmony_ci USB_REQ_TEST_WR = 0, 3562306a36Sopenharmony_ci USB_REQ_MAC_WR = 1, 3662306a36Sopenharmony_ci USB_REQ_POWER_WR = 2, 3762306a36Sopenharmony_ci USB_REQ_RXTX_WR = 3, 3862306a36Sopenharmony_ci USB_REQ_BEACON_WR = 4, 3962306a36Sopenharmony_ci USB_REQ_BEACON_INTERVAL_WR = 5, 4062306a36Sopenharmony_ci USB_REQ_RTS_CTS_RATE_WR = 6, 4162306a36Sopenharmony_ci USB_REQ_HASH_WR = 7, 4262306a36Sopenharmony_ci USB_REQ_DATA_TX = 8, 4362306a36Sopenharmony_ci USB_REQ_RATE_WR = 9, 4462306a36Sopenharmony_ci USB_REQ_SET_FREQ = 15 4562306a36Sopenharmony_ci}; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_cistruct plf_usb_req { 4862306a36Sopenharmony_ci __be32 id; /* should be plf_usb_req_enum */ 4962306a36Sopenharmony_ci __be32 len; 5062306a36Sopenharmony_ci u8 buf[512]; 5162306a36Sopenharmony_ci}; 5262306a36Sopenharmony_ci 53