cregit-Linux how code gets into the kernel

Release 4.18 drivers/staging/rtl8723bs/hal/hal_sdio.c

// SPDX-License-Identifier: GPL-2.0
/******************************************************************************
 *
 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
 *
 ******************************************************************************/

#define _HAL_SDIO_C_

#include <drv_types.h>
#include <rtw_debug.h>
#include <hal_data.h>


u8 rtw_hal_sdio_max_txoqt_free_space(struct adapter *padapter) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); if (pHalData->SdioTxOQTMaxFreeSpace < 8) pHalData->SdioTxOQTMaxFreeSpace = 8; return pHalData->SdioTxOQTMaxFreeSpace; }

Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede39100.00%1100.00%
Total39100.00%1100.00%


u8 rtw_hal_sdio_query_tx_freepage( struct adapter *padapter, u8 PageIdx, u8 RequiredPageNum ) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); if ((pHalData->SdioTxFIFOFreePage[PageIdx]+pHalData->SdioTxFIFOFreePage[PUBLIC_QUEUE_IDX]) >= (RequiredPageNum)) return true; else return false; }

Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede55100.00%1100.00%
Total55100.00%1100.00%


void rtw_hal_sdio_update_tx_freepage( struct adapter *padapter, u8 PageIdx, u8 RequiredPageNum ) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); u8 DedicatedPgNum = 0; u8 RequiredPublicFreePgNum = 0; /* _irqL irql; */ /* spin_lock_bh(&pHalData->SdioTxFIFOFreePageLock); */ DedicatedPgNum = pHalData->SdioTxFIFOFreePage[PageIdx]; if (RequiredPageNum <= DedicatedPgNum) { pHalData->SdioTxFIFOFreePage[PageIdx] -= RequiredPageNum; } else { pHalData->SdioTxFIFOFreePage[PageIdx] = 0; RequiredPublicFreePgNum = RequiredPageNum - DedicatedPgNum; pHalData->SdioTxFIFOFreePage[PUBLIC_QUEUE_IDX] -= RequiredPublicFreePgNum; } /* spin_unlock_bh(&pHalData->SdioTxFIFOFreePageLock); */ }

Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede92100.00%1100.00%
Total92100.00%1100.00%


void rtw_hal_set_sdio_tx_max_length( struct adapter *padapter, u8 numHQ, u8 numNQ, u8 numLQ, u8 numPubQ ) { struct hal_com_data *pHalData = GET_HAL_DATA(padapter); u32 page_size; u32 lenHQ, lenNQ, lenLQ; rtw_hal_get_def_var(padapter, HAL_DEF_TX_PAGE_SIZE, &page_size); lenHQ = ((numHQ + numPubQ) >> 1) * page_size; lenNQ = ((numNQ + numPubQ) >> 1) * page_size; lenLQ = ((numLQ + numPubQ) >> 1) * page_size; pHalData->sdio_tx_max_len[HI_QUEUE_IDX] = (lenHQ > MAX_XMITBUF_SZ) ? MAX_XMITBUF_SZ : lenHQ; pHalData->sdio_tx_max_len[MID_QUEUE_IDX] = (lenNQ > MAX_XMITBUF_SZ) ? MAX_XMITBUF_SZ : lenNQ; pHalData->sdio_tx_max_len[LOW_QUEUE_IDX] = (lenLQ > MAX_XMITBUF_SZ) ? MAX_XMITBUF_SZ : lenLQ; }

Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede145100.00%1100.00%
Total145100.00%1100.00%


u32 rtw_hal_get_sdio_tx_max_length(struct adapter *padapter, u8 queue_idx) { struct dvobj_priv *pdvobjpriv = adapter_to_dvobj(padapter); struct hal_com_data *pHalData = GET_HAL_DATA(padapter); u32 deviceId, max_len; deviceId = ffaddr2deviceId(pdvobjpriv, queue_idx); switch (deviceId) { case WLAN_TX_HIQ_DEVICE_ID: max_len = pHalData->sdio_tx_max_len[HI_QUEUE_IDX]; break; case WLAN_TX_MIQ_DEVICE_ID: max_len = pHalData->sdio_tx_max_len[MID_QUEUE_IDX]; break; case WLAN_TX_LOQ_DEVICE_ID: max_len = pHalData->sdio_tx_max_len[LOW_QUEUE_IDX]; break; default: max_len = pHalData->sdio_tx_max_len[MID_QUEUE_IDX]; break; } return max_len; }

Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede106100.00%1100.00%
Total106100.00%1100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Hans de Goede44999.56%150.00%
Nathan Chancellor20.44%150.00%
Total451100.00%2100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.