|
@@ -59,40 +59,8 @@ struct sdiod_drive_str {
|
|
|
u8 strength; /* Pad Drive Strength in mA */
|
|
|
u8 sel; /* Chip-specific select value */
|
|
|
};
|
|
|
-/* SDIO Drive Strength to sel value table for PMU Rev 1 */
|
|
|
-static const struct sdiod_drive_str sdiod_drive_strength_tab1[] = {
|
|
|
- {
|
|
|
- 4, 0x2}, {
|
|
|
- 2, 0x3}, {
|
|
|
- 1, 0x0}, {
|
|
|
- 0, 0x0}
|
|
|
- };
|
|
|
-/* SDIO Drive Strength to sel value table for PMU Rev 2, 3 */
|
|
|
-static const struct sdiod_drive_str sdiod_drive_strength_tab2[] = {
|
|
|
- {
|
|
|
- 12, 0x7}, {
|
|
|
- 10, 0x6}, {
|
|
|
- 8, 0x5}, {
|
|
|
- 6, 0x4}, {
|
|
|
- 4, 0x2}, {
|
|
|
- 2, 0x1}, {
|
|
|
- 0, 0x0}
|
|
|
- };
|
|
|
-/* SDIO Drive Strength to sel value table for PMU Rev 8 (1.8V) */
|
|
|
-static const struct sdiod_drive_str sdiod_drive_strength_tab3[] = {
|
|
|
- {
|
|
|
- 32, 0x7}, {
|
|
|
- 26, 0x6}, {
|
|
|
- 22, 0x5}, {
|
|
|
- 16, 0x4}, {
|
|
|
- 12, 0x3}, {
|
|
|
- 8, 0x2}, {
|
|
|
- 4, 0x1}, {
|
|
|
- 0, 0x0}
|
|
|
- };
|
|
|
-
|
|
|
/* SDIO Drive Strength to sel value table for PMU Rev 11 (1.8V) */
|
|
|
-static const struct sdiod_drive_str sdiod_drvstr_tab4_1v8[] = {
|
|
|
+static const struct sdiod_drive_str sdiod_drvstr_tab1_1v8[] = {
|
|
|
{32, 0x6},
|
|
|
{26, 0x7},
|
|
|
{22, 0x4},
|
|
@@ -598,24 +566,8 @@ brcmf_sdio_chip_drivestrengthinit(struct brcmf_sdio_dev *sdiodev,
|
|
|
return;
|
|
|
|
|
|
switch (SDIOD_DRVSTR_KEY(ci->chip, ci->pmurev)) {
|
|
|
- case SDIOD_DRVSTR_KEY(BCM4325_CHIP_ID, 1):
|
|
|
- str_tab = (struct sdiod_drive_str *)&sdiod_drive_strength_tab1;
|
|
|
- str_mask = 0x30000000;
|
|
|
- str_shift = 28;
|
|
|
- break;
|
|
|
- case SDIOD_DRVSTR_KEY(BCM4325_CHIP_ID, 2):
|
|
|
- case SDIOD_DRVSTR_KEY(BCM4325_CHIP_ID, 3):
|
|
|
- str_tab = (struct sdiod_drive_str *)&sdiod_drive_strength_tab2;
|
|
|
- str_mask = 0x00003800;
|
|
|
- str_shift = 11;
|
|
|
- break;
|
|
|
- case SDIOD_DRVSTR_KEY(BCM4336_CHIP_ID, 8):
|
|
|
- str_tab = (struct sdiod_drive_str *)&sdiod_drive_strength_tab3;
|
|
|
- str_mask = 0x00003800;
|
|
|
- str_shift = 11;
|
|
|
- break;
|
|
|
case SDIOD_DRVSTR_KEY(BCM4330_CHIP_ID, 12):
|
|
|
- str_tab = (struct sdiod_drive_str *)&sdiod_drvstr_tab4_1v8;
|
|
|
+ str_tab = (struct sdiod_drive_str *)&sdiod_drvstr_tab1_1v8;
|
|
|
str_mask = 0x00003800;
|
|
|
str_shift = 11;
|
|
|
break;
|