提交 baebc160 编写于 作者: B Brett Rudley 提交者: Greg Kroah-Hartman

staging: brcm80211: simplify pci_config_read/write osl routines.

Start simplifying osl with goal of purging it entirely.
Signed-off-by: NBrett Rudley <brudley@broadcom.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 f96c377e
......@@ -30,8 +30,6 @@
#include <pcicfg.h>
#define PCI_CFG_RETRY 10
#define OS_HANDLE_MAGIC 0x1234abcd /* Magic # to recognise osh */
#define BCM_MEM_FILENAME_LEN 24 /* Mem. filename length */
......@@ -139,51 +137,16 @@ void BCMFASTPATH osl_pktfree(osl_t *osh, void *p, bool send)
u32 osl_pci_read_config(osl_t *osh, uint offset, uint size)
{
uint val = 0;
uint retry = PCI_CFG_RETRY;
ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC)));
/* only 4byte access supported */
ASSERT(size == 4);
do {
pci_read_config_dword(osh->pdev, offset, &val);
if (val != 0xffffffff)
break;
} while (retry--);
#ifdef BCMDBG
if (retry < PCI_CFG_RETRY)
printk("PCI CONFIG READ access to %d required %d retries\n",
offset, (PCI_CFG_RETRY - retry));
#endif /* BCMDBG */
uint val;
pci_read_config_dword(osh->pdev, offset, &val);
return val;
}
void osl_pci_write_config(osl_t *osh, uint offset, uint size, uint val)
{
uint retry = PCI_CFG_RETRY;
ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC)));
/* only 4byte access supported */
ASSERT(size == 4);
do {
pci_write_config_dword(osh->pdev, offset, val);
if (offset != PCI_BAR0_WIN)
break;
if (osl_pci_read_config(osh, offset, size) == val)
break;
} while (retry--);
#if defined(BCMDBG) && !defined(BRCM_FULLMAC)
if (retry < PCI_CFG_RETRY)
printk("PCI CONFIG WRITE access to %d required %d retries\n",
offset, (PCI_CFG_RETRY - retry));
#endif /* BCMDBG */
pci_write_config_dword(osh->pdev, offset, val);
if (offset == PCI_BAR0_WIN)
ASSERT(osl_pci_read_config(osh, offset, size) == val);
}
/* return bus # for the pci device pointed by osh->pdev */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册