162306a36Sopenharmony_ci// SPDX-License-Identifier: ISC 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (c) 2011 Broadcom Corporation 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci#ifndef BRCMFMAC_USB_H 662306a36Sopenharmony_ci#define BRCMFMAC_USB_H 762306a36Sopenharmony_ci 862306a36Sopenharmony_cienum brcmf_usb_state { 962306a36Sopenharmony_ci BRCMFMAC_USB_STATE_DOWN, 1062306a36Sopenharmony_ci BRCMFMAC_USB_STATE_DL_FAIL, 1162306a36Sopenharmony_ci BRCMFMAC_USB_STATE_DL_DONE, 1262306a36Sopenharmony_ci BRCMFMAC_USB_STATE_UP, 1362306a36Sopenharmony_ci BRCMFMAC_USB_STATE_SLEEP 1462306a36Sopenharmony_ci}; 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_cistruct brcmf_stats { 1762306a36Sopenharmony_ci u32 tx_ctlpkts; 1862306a36Sopenharmony_ci u32 tx_ctlerrs; 1962306a36Sopenharmony_ci u32 rx_ctlpkts; 2062306a36Sopenharmony_ci u32 rx_ctlerrs; 2162306a36Sopenharmony_ci}; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_cistruct brcmf_usbdev { 2462306a36Sopenharmony_ci struct brcmf_bus *bus; 2562306a36Sopenharmony_ci struct brcmf_usbdev_info *devinfo; 2662306a36Sopenharmony_ci enum brcmf_usb_state state; 2762306a36Sopenharmony_ci struct brcmf_stats stats; 2862306a36Sopenharmony_ci int ntxq, nrxq, rxsize; 2962306a36Sopenharmony_ci u32 bus_mtu; 3062306a36Sopenharmony_ci int devid; 3162306a36Sopenharmony_ci int chiprev; /* chip revision number */ 3262306a36Sopenharmony_ci}; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci/* IO Request Block (IRB) */ 3562306a36Sopenharmony_cistruct brcmf_usbreq { 3662306a36Sopenharmony_ci struct list_head list; 3762306a36Sopenharmony_ci struct brcmf_usbdev_info *devinfo; 3862306a36Sopenharmony_ci struct urb *urb; 3962306a36Sopenharmony_ci struct sk_buff *skb; 4062306a36Sopenharmony_ci}; 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci#endif /* BRCMFMAC_USB_H */ 43