diff options
author | Franky Lin <frankyl@broadcom.com> | 2012-05-04 21:27:38 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-05-15 17:27:58 -0400 |
commit | d8b3fc59f24c0e0e965efbb49be4199360125aa7 (patch) | |
tree | 9481214cda2e7235860a53b0b65dbb9d4d5be3c4 /drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c | |
parent | 5c15c23a7be8b5c353d8e90ecf5bbd578c040a8a (diff) |
brcmfmac: replace brcmf_sdioh_card_regread with brcmf_sdio_regrl
Use the newly introduced brcmf_sdio_regrl to replace
brcmf_sdioh_card_regread as part of the SDIO WiFi dongle register
access interface clean up.
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Franky Lin <frankyl@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c')
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c | 32 |
1 files changed, 3 insertions, 29 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c b/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c index dd07d33a927c..82f51dbd0d66 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c | |||
@@ -346,43 +346,17 @@ int brcmf_sdioh_request_buffer(struct brcmf_sdio_dev *sdiodev, | |||
346 | return status; | 346 | return status; |
347 | } | 347 | } |
348 | 348 | ||
349 | /* Read client card reg */ | ||
350 | static int | ||
351 | brcmf_sdioh_card_regread(struct brcmf_sdio_dev *sdiodev, int func, u32 regaddr, | ||
352 | int regsize, u32 *data) | ||
353 | { | ||
354 | |||
355 | if ((func == 0) || (regsize == 1)) { | ||
356 | u8 temp = 0; | ||
357 | |||
358 | brcmf_sdioh_request_byte(sdiodev, SDIOH_READ, func, regaddr, | ||
359 | &temp); | ||
360 | *data = temp; | ||
361 | *data &= 0xff; | ||
362 | brcmf_dbg(DATA, "byte read data=0x%02x\n", *data); | ||
363 | } else { | ||
364 | brcmf_sdioh_request_word(sdiodev, SDIOH_READ, func, regaddr, | ||
365 | data, regsize); | ||
366 | if (regsize == 2) | ||
367 | *data &= 0xffff; | ||
368 | |||
369 | brcmf_dbg(DATA, "word read data=0x%08x\n", *data); | ||
370 | } | ||
371 | |||
372 | return SUCCESS; | ||
373 | } | ||
374 | |||
375 | static int brcmf_sdioh_get_cisaddr(struct brcmf_sdio_dev *sdiodev, u32 regaddr) | 349 | static int brcmf_sdioh_get_cisaddr(struct brcmf_sdio_dev *sdiodev, u32 regaddr) |
376 | { | 350 | { |
377 | /* read 24 bits and return valid 17 bit addr */ | 351 | /* read 24 bits and return valid 17 bit addr */ |
378 | int i; | 352 | int i, ret; |
379 | u32 scratch, regdata; | 353 | u32 scratch, regdata; |
380 | __le32 scratch_le; | 354 | __le32 scratch_le; |
381 | u8 *ptr = (u8 *)&scratch_le; | 355 | u8 *ptr = (u8 *)&scratch_le; |
382 | 356 | ||
383 | for (i = 0; i < 3; i++) { | 357 | for (i = 0; i < 3; i++) { |
384 | if ((brcmf_sdioh_card_regread(sdiodev, 0, regaddr, 1, | 358 | regdata = brcmf_sdio_regrl(sdiodev, regaddr, &ret); |
385 | ®data)) != SUCCESS) | 359 | if (ret != 0) |
386 | brcmf_dbg(ERROR, "Can't read!\n"); | 360 | brcmf_dbg(ERROR, "Can't read!\n"); |
387 | 361 | ||
388 | *ptr++ = (u8) regdata; | 362 | *ptr++ = (u8) regdata; |