Commit 9f902b49 authored by Aymen Qader's avatar Aymen Qader Committed by Greg Kroah-Hartman

staging: rts5208: Remove unnecessary braces {}

This patch fixes the checkpatch.pl warning "braces {} are not necessary"
in the rts5208 driver. Mostly applies to single-line return/goto if
blocks.
Signed-off-by: default avatarAymen Qader <qader.aymen@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bddd3c25
This diff is collapsed.
...@@ -647,9 +647,8 @@ int switch_ssc_clock(struct rtsx_chip *chip, int clk) ...@@ -647,9 +647,8 @@ int switch_ssc_clock(struct rtsx_chip *chip, int clk)
dev_dbg(rtsx_dev(chip), "Switch SSC clock to %dMHz (cur_clk = %d)\n", dev_dbg(rtsx_dev(chip), "Switch SSC clock to %dMHz (cur_clk = %d)\n",
clk, chip->cur_clk); clk, chip->cur_clk);
if ((clk <= 2) || (n > max_n)) { if ((clk <= 2) || (n > max_n))
return STATUS_FAIL; return STATUS_FAIL;
}
mcu_cnt = (u8)(125 / clk + 3); mcu_cnt = (u8)(125 / clk + 3);
if (mcu_cnt > 7) if (mcu_cnt > 7)
...@@ -688,15 +687,13 @@ int switch_ssc_clock(struct rtsx_chip *chip, int clk) ...@@ -688,15 +687,13 @@ int switch_ssc_clock(struct rtsx_chip *chip, int clk)
} }
retval = rtsx_send_cmd(chip, 0, WAIT_TIME); retval = rtsx_send_cmd(chip, 0, WAIT_TIME);
if (retval < 0) { if (retval < 0)
return STATUS_ERROR; return STATUS_ERROR;
}
udelay(10); udelay(10);
retval = rtsx_write_register(chip, CLK_CTL, CLK_LOW_FREQ, 0); retval = rtsx_write_register(chip, CLK_CTL, CLK_LOW_FREQ, 0);
if (retval) { if (retval)
return retval; return retval;
}
chip->cur_clk = clk; chip->cur_clk = clk;
...@@ -790,49 +787,41 @@ int switch_normal_clock(struct rtsx_chip *chip, int clk) ...@@ -790,49 +787,41 @@ int switch_normal_clock(struct rtsx_chip *chip, int clk)
} }
retval = rtsx_write_register(chip, CLK_CTL, 0xFF, CLK_LOW_FREQ); retval = rtsx_write_register(chip, CLK_CTL, 0xFF, CLK_LOW_FREQ);
if (retval) { if (retval)
return retval; return retval;
}
if (sd_vpclk_phase_reset) { if (sd_vpclk_phase_reset) {
retval = rtsx_write_register(chip, SD_VPCLK0_CTL, retval = rtsx_write_register(chip, SD_VPCLK0_CTL,
PHASE_NOT_RESET, 0); PHASE_NOT_RESET, 0);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SD_VPCLK1_CTL, retval = rtsx_write_register(chip, SD_VPCLK1_CTL,
PHASE_NOT_RESET, 0); PHASE_NOT_RESET, 0);
if (retval) { if (retval)
return retval; return retval;
} }
}
retval = rtsx_write_register(chip, CLK_DIV, 0xFF, retval = rtsx_write_register(chip, CLK_DIV, 0xFF,
(div << 4) | mcu_cnt); (div << 4) | mcu_cnt);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, CLK_SEL, 0xFF, sel); retval = rtsx_write_register(chip, CLK_SEL, 0xFF, sel);
if (retval) { if (retval)
return retval; return retval;
}
if (sd_vpclk_phase_reset) { if (sd_vpclk_phase_reset) {
udelay(200); udelay(200);
retval = rtsx_write_register(chip, SD_VPCLK0_CTL, retval = rtsx_write_register(chip, SD_VPCLK0_CTL,
PHASE_NOT_RESET, PHASE_NOT_RESET); PHASE_NOT_RESET, PHASE_NOT_RESET);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SD_VPCLK1_CTL, retval = rtsx_write_register(chip, SD_VPCLK1_CTL,
PHASE_NOT_RESET, PHASE_NOT_RESET); PHASE_NOT_RESET, PHASE_NOT_RESET);
if (retval) { if (retval)
return retval; return retval;
}
udelay(200); udelay(200);
} }
retval = rtsx_write_register(chip, CLK_CTL, 0xFF, 0); retval = rtsx_write_register(chip, CLK_CTL, 0xFF, 0);
if (retval) { if (retval)
return retval; return retval;
}
chip->cur_clk = clk; chip->cur_clk = clk;
...@@ -878,9 +867,8 @@ int enable_card_clock(struct rtsx_chip *chip, u8 card) ...@@ -878,9 +867,8 @@ int enable_card_clock(struct rtsx_chip *chip, u8 card)
clk_en |= MS_CLK_EN; clk_en |= MS_CLK_EN;
retval = rtsx_write_register(chip, CARD_CLK_EN, clk_en, clk_en); retval = rtsx_write_register(chip, CARD_CLK_EN, clk_en, clk_en);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -898,9 +886,8 @@ int disable_card_clock(struct rtsx_chip *chip, u8 card) ...@@ -898,9 +886,8 @@ int disable_card_clock(struct rtsx_chip *chip, u8 card)
clk_en |= MS_CLK_EN; clk_en |= MS_CLK_EN;
retval = rtsx_write_register(chip, CARD_CLK_EN, clk_en, 0); retval = rtsx_write_register(chip, CARD_CLK_EN, clk_en, 0);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -924,9 +911,8 @@ int card_power_on(struct rtsx_chip *chip, u8 card) ...@@ -924,9 +911,8 @@ int card_power_on(struct rtsx_chip *chip, u8 card)
rtsx_add_cmd(chip, WRITE_REG_CMD, CARD_PWR_CTL, mask, val1); rtsx_add_cmd(chip, WRITE_REG_CMD, CARD_PWR_CTL, mask, val1);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
udelay(chip->pmos_pwr_on_interval); udelay(chip->pmos_pwr_on_interval);
...@@ -934,9 +920,8 @@ int card_power_on(struct rtsx_chip *chip, u8 card) ...@@ -934,9 +920,8 @@ int card_power_on(struct rtsx_chip *chip, u8 card)
rtsx_add_cmd(chip, WRITE_REG_CMD, CARD_PWR_CTL, mask, val2); rtsx_add_cmd(chip, WRITE_REG_CMD, CARD_PWR_CTL, mask, val2);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -955,9 +940,8 @@ int card_power_off(struct rtsx_chip *chip, u8 card) ...@@ -955,9 +940,8 @@ int card_power_off(struct rtsx_chip *chip, u8 card)
} }
retval = rtsx_write_register(chip, CARD_PWR_CTL, mask, val); retval = rtsx_write_register(chip, CARD_PWR_CTL, mask, val);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -969,9 +953,8 @@ int card_rw(struct scsi_cmnd *srb, struct rtsx_chip *chip, ...@@ -969,9 +953,8 @@ int card_rw(struct scsi_cmnd *srb, struct rtsx_chip *chip,
unsigned int lun = SCSI_LUN(srb); unsigned int lun = SCSI_LUN(srb);
int i; int i;
if (!chip->rw_card[lun]) { if (!chip->rw_card[lun])
return STATUS_FAIL; return STATUS_FAIL;
}
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
chip->rw_need_retry = 0; chip->rw_need_retry = 0;
...@@ -1009,36 +992,33 @@ int card_share_mode(struct rtsx_chip *chip, int card) ...@@ -1009,36 +992,33 @@ int card_share_mode(struct rtsx_chip *chip, int card)
if (CHECK_PID(chip, 0x5208)) { if (CHECK_PID(chip, 0x5208)) {
mask = CARD_SHARE_MASK; mask = CARD_SHARE_MASK;
if (card == SD_CARD) { if (card == SD_CARD)
value = CARD_SHARE_48_SD; value = CARD_SHARE_48_SD;
} else if (card == MS_CARD) { else if (card == MS_CARD)
value = CARD_SHARE_48_MS; value = CARD_SHARE_48_MS;
} else if (card == XD_CARD) { else if (card == XD_CARD)
value = CARD_SHARE_48_XD; value = CARD_SHARE_48_XD;
} else { else
return STATUS_FAIL; return STATUS_FAIL;
}
} else if (CHECK_PID(chip, 0x5288)) { } else if (CHECK_PID(chip, 0x5288)) {
mask = 0x03; mask = 0x03;
if (card == SD_CARD) { if (card == SD_CARD)
value = CARD_SHARE_BAROSSA_SD; value = CARD_SHARE_BAROSSA_SD;
} else if (card == MS_CARD) { else if (card == MS_CARD)
value = CARD_SHARE_BAROSSA_MS; value = CARD_SHARE_BAROSSA_MS;
} else if (card == XD_CARD) { else if (card == XD_CARD)
value = CARD_SHARE_BAROSSA_XD; value = CARD_SHARE_BAROSSA_XD;
} else { else
return STATUS_FAIL; return STATUS_FAIL;
}
} else { } else {
return STATUS_FAIL; return STATUS_FAIL;
} }
retval = rtsx_write_register(chip, CARD_SHARE_MODE, mask, value); retval = rtsx_write_register(chip, CARD_SHARE_MODE, mask, value);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -1050,29 +1030,26 @@ int select_card(struct rtsx_chip *chip, int card) ...@@ -1050,29 +1030,26 @@ int select_card(struct rtsx_chip *chip, int card)
if (chip->cur_card != card) { if (chip->cur_card != card) {
u8 mod; u8 mod;
if (card == SD_CARD) { if (card == SD_CARD)
mod = SD_MOD_SEL; mod = SD_MOD_SEL;
} else if (card == MS_CARD) { else if (card == MS_CARD)
mod = MS_MOD_SEL; mod = MS_MOD_SEL;
} else if (card == XD_CARD) { else if (card == XD_CARD)
mod = XD_MOD_SEL; mod = XD_MOD_SEL;
} else if (card == SPI_CARD) { else if (card == SPI_CARD)
mod = SPI_MOD_SEL; mod = SPI_MOD_SEL;
} else { else
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_SELECT, 0x07, mod); retval = rtsx_write_register(chip, CARD_SELECT, 0x07, mod);
if (retval) { if (retval)
return retval; return retval;
}
chip->cur_card = card; chip->cur_card = card;
retval = card_share_mode(chip, card); retval = card_share_mode(chip, card);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
} }
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -1120,9 +1097,8 @@ int detect_card_cd(struct rtsx_chip *chip, int card) ...@@ -1120,9 +1097,8 @@ int detect_card_cd(struct rtsx_chip *chip, int card)
} }
status = rtsx_readl(chip, RTSX_BIPR); status = rtsx_readl(chip, RTSX_BIPR);
if (!(status & card_cd)) { if (!(status & card_cd))
return STATUS_FAIL; return STATUS_FAIL;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
......
...@@ -1062,9 +1062,8 @@ static inline int card_power_off_all(struct rtsx_chip *chip) ...@@ -1062,9 +1062,8 @@ static inline int card_power_off_all(struct rtsx_chip *chip)
int retval; int retval;
retval = rtsx_write_register(chip, CARD_PWR_CTL, 0x0F, 0x0F); retval = rtsx_write_register(chip, CARD_PWR_CTL, 0x0F, 0x0F);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
......
This diff is collapsed.
...@@ -507,9 +507,8 @@ static int inquiry(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -507,9 +507,8 @@ static int inquiry(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = vmalloc(scsi_bufflen(srb)); buf = vmalloc(scsi_bufflen(srb));
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
#ifdef SUPPORT_MAGIC_GATE #ifdef SUPPORT_MAGIC_GATE
if ((chip->mspro_formatter_enable) && if ((chip->mspro_formatter_enable) &&
...@@ -637,9 +636,8 @@ static int request_sense(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -637,9 +636,8 @@ static int request_sense(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = vmalloc(scsi_bufflen(srb)); buf = vmalloc(scsi_bufflen(srb));
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
tmp = (unsigned char *)sense; tmp = (unsigned char *)sense;
memcpy(buf, tmp, scsi_bufflen(srb)); memcpy(buf, tmp, scsi_bufflen(srb));
...@@ -783,9 +781,8 @@ static int mode_sense(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -783,9 +781,8 @@ static int mode_sense(struct scsi_cmnd *srb, struct rtsx_chip *chip)
#endif #endif
buf = kmalloc(data_size, GFP_KERNEL); buf = kmalloc(data_size, GFP_KERNEL);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
page_code = srb->cmnd[2] & 0x3f; page_code = srb->cmnd[2] & 0x3f;
...@@ -999,9 +996,8 @@ static int read_format_capacity(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -999,9 +996,8 @@ static int read_format_capacity(struct scsi_cmnd *srb, struct rtsx_chip *chip)
buf_len = (scsi_bufflen(srb) > 12) ? 0x14 : 12; buf_len = (scsi_bufflen(srb) > 12) ? 0x14 : 12;
buf = kmalloc(buf_len, GFP_KERNEL); buf = kmalloc(buf_len, GFP_KERNEL);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
buf[i++] = 0; buf[i++] = 0;
buf[i++] = 0; buf[i++] = 0;
...@@ -1076,9 +1072,8 @@ static int read_capacity(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1076,9 +1072,8 @@ static int read_capacity(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = kmalloc(8, GFP_KERNEL); buf = kmalloc(8, GFP_KERNEL);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
card_size = get_card_size(chip, lun); card_size = get_card_size(chip, lun);
buf[0] = (unsigned char)((card_size - 1) >> 24); buf[0] = (unsigned char)((card_size - 1) >> 24);
...@@ -1116,9 +1111,8 @@ static int read_eeprom(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1116,9 +1111,8 @@ static int read_eeprom(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = ((u16)srb->cmnd[4] << 8) | srb->cmnd[5]; len = ((u16)srb->cmnd[4] << 8) | srb->cmnd[5];
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_force_power_on(chip, SSC_PDCTL); retval = rtsx_force_power_on(chip, SSC_PDCTL);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -1180,9 +1174,8 @@ static int write_eeprom(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1180,9 +1174,8 @@ static int write_eeprom(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb),
len); len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -1227,9 +1220,8 @@ static int read_mem(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1227,9 +1220,8 @@ static int read_mem(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_force_power_on(chip, SSC_PDCTL); retval = rtsx_force_power_on(chip, SSC_PDCTL);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -1282,9 +1274,8 @@ static int write_mem(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1282,9 +1274,8 @@ static int write_mem(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len); len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -1702,42 +1693,36 @@ static int set_chip_mode(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1702,42 +1693,36 @@ static int set_chip_mode(struct scsi_cmnd *srb, struct rtsx_chip *chip)
if (phy_debug_mode) { if (phy_debug_mode) {
chip->phy_debug_mode = 1; chip->phy_debug_mode = 1;
retval = rtsx_write_register(chip, CDRESUMECTL, 0x77, 0); retval = rtsx_write_register(chip, CDRESUMECTL, 0x77, 0);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
rtsx_disable_bus_int(chip); rtsx_disable_bus_int(chip);
retval = rtsx_read_phy_register(chip, 0x1C, &reg); retval = rtsx_read_phy_register(chip, 0x1C, &reg);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
reg |= 0x0001; reg |= 0x0001;
retval = rtsx_write_phy_register(chip, 0x1C, reg); retval = rtsx_write_phy_register(chip, 0x1C, reg);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
chip->phy_debug_mode = 0; chip->phy_debug_mode = 0;
retval = rtsx_write_register(chip, CDRESUMECTL, 0x77, 0x77); retval = rtsx_write_register(chip, CDRESUMECTL, 0x77, 0x77);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
rtsx_enable_bus_int(chip); rtsx_enable_bus_int(chip);
retval = rtsx_read_phy_register(chip, 0x1C, &reg); retval = rtsx_read_phy_register(chip, 0x1C, &reg);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
reg &= 0xFFFE; reg &= 0xFFFE;
retval = rtsx_write_phy_register(chip, 0x1C, reg); retval = rtsx_write_phy_register(chip, 0x1C, reg);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
} }
}
return TRANSPORT_GOOD; return TRANSPORT_GOOD;
} }
...@@ -1840,9 +1825,8 @@ static int read_phy_register(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1840,9 +1825,8 @@ static int read_phy_register(struct scsi_cmnd *srb, struct rtsx_chip *chip)
if (len) { if (len) {
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_force_power_on(chip, SSC_PDCTL); retval = rtsx_force_power_on(chip, SSC_PDCTL);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -1903,9 +1887,8 @@ static int write_phy_register(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1903,9 +1887,8 @@ static int write_phy_register(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len); len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -1999,9 +1982,8 @@ static int read_eeprom2(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -1999,9 +1982,8 @@ static int read_eeprom2(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = ((u16)srb->cmnd[6] << 8) | srb->cmnd[7]; len = ((u16)srb->cmnd[6] << 8) | srb->cmnd[7];
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_force_power_on(chip, SSC_PDCTL); retval = rtsx_force_power_on(chip, SSC_PDCTL);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -2049,9 +2031,8 @@ static int write_eeprom2(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2049,9 +2031,8 @@ static int write_eeprom2(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len); len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -2096,9 +2077,8 @@ static int read_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2096,9 +2077,8 @@ static int read_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = srb->cmnd[5]; len = srb->cmnd[5];
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_force_power_on(chip, SSC_PDCTL); retval = rtsx_force_power_on(chip, SSC_PDCTL);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -2147,9 +2127,8 @@ static int write_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2147,9 +2127,8 @@ static int write_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = (u8)min_t(unsigned int, scsi_bufflen(srb), len); len = (u8)min_t(unsigned int, scsi_bufflen(srb), len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -2215,30 +2194,26 @@ static int write_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2215,30 +2194,26 @@ static int write_efuse(struct scsi_cmnd *srb, struct rtsx_chip *chip)
vfree(buf); vfree(buf);
retval = card_power_off(chip, SPI_CARD); retval = card_power_off(chip, SPI_CARD);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
if (chip->asic_code) { if (chip->asic_code) {
retval = rtsx_write_register(chip, PWR_GATE_CTRL, retval = rtsx_write_register(chip, PWR_GATE_CTRL,
LDO3318_PWR_MASK, LDO_OFF); LDO3318_PWR_MASK, LDO_OFF);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
wait_timeout(600); wait_timeout(600);
retval = rtsx_write_phy_register(chip, 0x08, val); retval = rtsx_write_phy_register(chip, 0x08, val);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_write_register(chip, PWR_GATE_CTRL, retval = rtsx_write_register(chip, PWR_GATE_CTRL,
LDO3318_PWR_MASK, LDO_ON); LDO3318_PWR_MASK, LDO_ON);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
} }
}
return result; return result;
} }
...@@ -2278,9 +2253,8 @@ static int read_cfg_byte(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2278,9 +2253,8 @@ static int read_cfg_byte(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
retval = rtsx_read_cfg_seq(chip, func, addr, buf, len); retval = rtsx_read_cfg_seq(chip, func, addr, buf, len);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -2335,9 +2309,8 @@ static int write_cfg_byte(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2335,9 +2309,8 @@ static int write_cfg_byte(struct scsi_cmnd *srb, struct rtsx_chip *chip)
len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len); len = (unsigned short)min_t(unsigned int, scsi_bufflen(srb), len);
buf = vmalloc(len); buf = vmalloc(len);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
rtsx_stor_get_xfer_buf(buf, len, srb); rtsx_stor_get_xfer_buf(buf, len, srb);
scsi_set_resid(srb, scsi_bufflen(srb) - len); scsi_set_resid(srb, scsi_bufflen(srb) - len);
...@@ -2657,9 +2630,8 @@ static int spi_vendor_cmd(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2657,9 +2630,8 @@ static int spi_vendor_cmd(struct scsi_cmnd *srb, struct rtsx_chip *chip)
rtsx_write_register(chip, CARD_GPIO_DIR, 0x07, gpio_dir); rtsx_write_register(chip, CARD_GPIO_DIR, 0x07, gpio_dir);
if (result != STATUS_SUCCESS) { if (result != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
return TRANSPORT_GOOD; return TRANSPORT_GOOD;
} }
...@@ -2849,9 +2821,8 @@ static int get_ms_information(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -2849,9 +2821,8 @@ static int get_ms_information(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = kmalloc(buf_len, GFP_KERNEL); buf = kmalloc(buf_len, GFP_KERNEL);
if (!buf) { if (!buf)
return TRANSPORT_ERROR; return TRANSPORT_ERROR;
}
i = 0; i = 0;
/* GET Memory Stick Media Information Response Header */ /* GET Memory Stick Media Information Response Header */
...@@ -3025,9 +2996,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3025,9 +2996,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[8] == 0x04) && (srb->cmnd[8] == 0x04) &&
(srb->cmnd[9] == 0x1C)) { (srb->cmnd[9] == 0x1C)) {
retval = mg_get_local_EKB(srb, chip); retval = mg_get_local_EKB(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3041,9 +3011,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3041,9 +3011,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[8] == 0x00) && (srb->cmnd[8] == 0x00) &&
(srb->cmnd[9] == 0x24)) { (srb->cmnd[9] == 0x24)) {
retval = mg_get_rsp_chg(srb, chip); retval = mg_get_rsp_chg(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3062,9 +3031,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3062,9 +3031,8 @@ static int mg_report_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[4] == 0x00) && (srb->cmnd[4] == 0x00) &&
(srb->cmnd[5] < 32)) { (srb->cmnd[5] < 32)) {
retval = mg_get_ICV(srb, chip); retval = mg_get_ICV(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3131,9 +3099,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3131,9 +3099,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[8] == 0x00) && (srb->cmnd[8] == 0x00) &&
(srb->cmnd[9] == 0x0C)) { (srb->cmnd[9] == 0x0C)) {
retval = mg_set_leaf_id(srb, chip); retval = mg_set_leaf_id(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3147,9 +3114,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3147,9 +3114,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[8] == 0x00) && (srb->cmnd[8] == 0x00) &&
(srb->cmnd[9] == 0x0C)) { (srb->cmnd[9] == 0x0C)) {
retval = mg_chg(srb, chip); retval = mg_chg(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3163,9 +3129,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3163,9 +3129,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[8] == 0x00) && (srb->cmnd[8] == 0x00) &&
(srb->cmnd[9] == 0x0C)) { (srb->cmnd[9] == 0x0C)) {
retval = mg_rsp(srb, chip); retval = mg_rsp(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
...@@ -3184,9 +3149,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -3184,9 +3149,8 @@ static int mg_send_key(struct scsi_cmnd *srb, struct rtsx_chip *chip)
(srb->cmnd[4] == 0x00) && (srb->cmnd[4] == 0x00) &&
(srb->cmnd[5] < 32)) { (srb->cmnd[5] < 32)) {
retval = mg_set_ICV(srb, chip); retval = mg_set_ICV(srb, chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return TRANSPORT_FAILED; return TRANSPORT_FAILED;
}
} else { } else {
set_sense_type(chip, lun, set_sense_type(chip, lun,
......
This diff is collapsed.
...@@ -41,14 +41,12 @@ static int spi_init(struct rtsx_chip *chip) ...@@ -41,14 +41,12 @@ static int spi_init(struct rtsx_chip *chip)
retval = rtsx_write_register(chip, SPI_CONTROL, 0xFF, retval = rtsx_write_register(chip, SPI_CONTROL, 0xFF,
CS_POLARITY_LOW | DTO_MSB_FIRST CS_POLARITY_LOW | DTO_MSB_FIRST
| SPI_MASTER | SPI_MODE0 | SPI_AUTO); | SPI_MASTER | SPI_MODE0 | SPI_AUTO);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SPI_TCTL, EDO_TIMING_MASK, retval = rtsx_write_register(chip, SPI_TCTL, EDO_TIMING_MASK,
SAMPLE_DELAY_HALF); SAMPLE_DELAY_HALF);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -60,42 +58,35 @@ static int spi_set_init_para(struct rtsx_chip *chip) ...@@ -60,42 +58,35 @@ static int spi_set_init_para(struct rtsx_chip *chip)
retval = rtsx_write_register(chip, SPI_CLK_DIVIDER1, 0xFF, retval = rtsx_write_register(chip, SPI_CLK_DIVIDER1, 0xFF,
(u8)(spi->clk_div >> 8)); (u8)(spi->clk_div >> 8));
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SPI_CLK_DIVIDER0, 0xFF, retval = rtsx_write_register(chip, SPI_CLK_DIVIDER0, 0xFF,
(u8)(spi->clk_div)); (u8)(spi->clk_div));
if (retval) { if (retval)
return retval; return retval;
}
retval = switch_clock(chip, spi->spi_clock); retval = switch_clock(chip, spi->spi_clock);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = select_card(chip, SPI_CARD); retval = select_card(chip, SPI_CARD);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_CLK_EN, SPI_CLK_EN, retval = rtsx_write_register(chip, CARD_CLK_EN, SPI_CLK_EN,
SPI_CLK_EN); SPI_CLK_EN);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, CARD_OE, SPI_OUTPUT_EN, retval = rtsx_write_register(chip, CARD_OE, SPI_OUTPUT_EN,
SPI_OUTPUT_EN); SPI_OUTPUT_EN);
if (retval) { if (retval)
return retval; return retval;
}
wait_timeout(10); wait_timeout(10);
retval = spi_init(chip); retval = spi_init(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -247,47 +238,39 @@ static int spi_init_eeprom(struct rtsx_chip *chip) ...@@ -247,47 +238,39 @@ static int spi_init_eeprom(struct rtsx_chip *chip)
clk = CLK_30; clk = CLK_30;
retval = rtsx_write_register(chip, SPI_CLK_DIVIDER1, 0xFF, 0x00); retval = rtsx_write_register(chip, SPI_CLK_DIVIDER1, 0xFF, 0x00);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SPI_CLK_DIVIDER0, 0xFF, 0x27); retval = rtsx_write_register(chip, SPI_CLK_DIVIDER0, 0xFF, 0x27);
if (retval) { if (retval)
return retval; return retval;
}
retval = switch_clock(chip, clk); retval = switch_clock(chip, clk);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = select_card(chip, SPI_CARD); retval = select_card(chip, SPI_CARD);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_CLK_EN, SPI_CLK_EN, retval = rtsx_write_register(chip, CARD_CLK_EN, SPI_CLK_EN,
SPI_CLK_EN); SPI_CLK_EN);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, CARD_OE, SPI_OUTPUT_EN, retval = rtsx_write_register(chip, CARD_OE, SPI_OUTPUT_EN,
SPI_OUTPUT_EN); SPI_OUTPUT_EN);
if (retval) { if (retval)
return retval; return retval;
}
wait_timeout(10); wait_timeout(10);
retval = rtsx_write_register(chip, SPI_CONTROL, 0xFF, retval = rtsx_write_register(chip, SPI_CONTROL, 0xFF,
CS_POLARITY_HIGH | SPI_EEPROM_AUTO); CS_POLARITY_HIGH | SPI_EEPROM_AUTO);
if (retval) { if (retval)
return retval; return retval;
}
retval = rtsx_write_register(chip, SPI_TCTL, EDO_TIMING_MASK, retval = rtsx_write_register(chip, SPI_TCTL, EDO_TIMING_MASK,
SAMPLE_DELAY_HALF); SAMPLE_DELAY_HALF);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -306,9 +289,8 @@ static int spi_eeprom_program_enable(struct rtsx_chip *chip) ...@@ -306,9 +289,8 @@ static int spi_eeprom_program_enable(struct rtsx_chip *chip)
SPI_TRANSFER0_END); SPI_TRANSFER0_END);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval < 0) { if (retval < 0)
return STATUS_FAIL; return STATUS_FAIL;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -318,14 +300,12 @@ int spi_erase_eeprom_chip(struct rtsx_chip *chip) ...@@ -318,14 +300,12 @@ int spi_erase_eeprom_chip(struct rtsx_chip *chip)
int retval; int retval;
retval = spi_init_eeprom(chip); retval = spi_init_eeprom(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = spi_eeprom_program_enable(chip); retval = spi_eeprom_program_enable(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
rtsx_init_cmd(chip); rtsx_init_cmd(chip);
...@@ -339,14 +319,12 @@ int spi_erase_eeprom_chip(struct rtsx_chip *chip) ...@@ -339,14 +319,12 @@ int spi_erase_eeprom_chip(struct rtsx_chip *chip)
SPI_TRANSFER0_END); SPI_TRANSFER0_END);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval < 0) { if (retval < 0)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01); retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -356,14 +334,12 @@ int spi_erase_eeprom_byte(struct rtsx_chip *chip, u16 addr) ...@@ -356,14 +334,12 @@ int spi_erase_eeprom_byte(struct rtsx_chip *chip, u16 addr)
int retval; int retval;
retval = spi_init_eeprom(chip); retval = spi_init_eeprom(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = spi_eeprom_program_enable(chip); retval = spi_eeprom_program_enable(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
rtsx_init_cmd(chip); rtsx_init_cmd(chip);
...@@ -379,14 +355,12 @@ int spi_erase_eeprom_byte(struct rtsx_chip *chip, u16 addr) ...@@ -379,14 +355,12 @@ int spi_erase_eeprom_byte(struct rtsx_chip *chip, u16 addr)
SPI_TRANSFER0_END); SPI_TRANSFER0_END);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval < 0) { if (retval < 0)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01); retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -397,9 +371,8 @@ int spi_read_eeprom(struct rtsx_chip *chip, u16 addr, u8 *val) ...@@ -397,9 +371,8 @@ int spi_read_eeprom(struct rtsx_chip *chip, u16 addr, u8 *val)
u8 data; u8 data;
retval = spi_init_eeprom(chip); retval = spi_init_eeprom(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
rtsx_init_cmd(chip); rtsx_init_cmd(chip);
...@@ -416,23 +389,20 @@ int spi_read_eeprom(struct rtsx_chip *chip, u16 addr, u8 *val) ...@@ -416,23 +389,20 @@ int spi_read_eeprom(struct rtsx_chip *chip, u16 addr, u8 *val)
SPI_TRANSFER0_END); SPI_TRANSFER0_END);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval < 0) { if (retval < 0)
return STATUS_FAIL; return STATUS_FAIL;
}
wait_timeout(5); wait_timeout(5);
retval = rtsx_read_register(chip, SPI_DATA, &data); retval = rtsx_read_register(chip, SPI_DATA, &data);
if (retval) { if (retval)
return retval; return retval;
}
if (val) if (val)
*val = data; *val = data;
retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01); retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -442,14 +412,12 @@ int spi_write_eeprom(struct rtsx_chip *chip, u16 addr, u8 val) ...@@ -442,14 +412,12 @@ int spi_write_eeprom(struct rtsx_chip *chip, u16 addr, u8 val)
int retval; int retval;
retval = spi_init_eeprom(chip); retval = spi_init_eeprom(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = spi_eeprom_program_enable(chip); retval = spi_eeprom_program_enable(chip);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
rtsx_init_cmd(chip); rtsx_init_cmd(chip);
...@@ -466,14 +434,12 @@ int spi_write_eeprom(struct rtsx_chip *chip, u16 addr, u8 val) ...@@ -466,14 +434,12 @@ int spi_write_eeprom(struct rtsx_chip *chip, u16 addr, u8 val)
SPI_TRANSFER0_END); SPI_TRANSFER0_END);
retval = rtsx_send_cmd(chip, 0, 100); retval = rtsx_send_cmd(chip, 0, 100);
if (retval < 0) { if (retval < 0)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01); retval = rtsx_write_register(chip, CARD_GPIO_DIR, 0x01, 0x01);
if (retval) { if (retval)
return retval; return retval;
}
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
...@@ -577,9 +543,8 @@ int spi_read_flash_id(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -577,9 +543,8 @@ int spi_read_flash_id(struct scsi_cmnd *srb, struct rtsx_chip *chip)
if (len) { if (len) {
buf = kmalloc(len, GFP_KERNEL); buf = kmalloc(len, GFP_KERNEL);
if (!buf) { if (!buf)
return STATUS_ERROR; return STATUS_ERROR;
}
retval = rtsx_read_ppbuf(chip, buf, len); retval = rtsx_read_ppbuf(chip, buf, len);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS) {
...@@ -621,9 +586,8 @@ int spi_read_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -621,9 +586,8 @@ int spi_read_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
buf = kmalloc(SF_PAGE_LEN, GFP_KERNEL); buf = kmalloc(SF_PAGE_LEN, GFP_KERNEL);
if (!buf) { if (!buf)
return STATUS_ERROR; return STATUS_ERROR;
}
while (len) { while (len) {
u16 pagelen = SF_PAGE_LEN - (u8)addr; u16 pagelen = SF_PAGE_LEN - (u8)addr;
...@@ -716,9 +680,8 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -716,9 +680,8 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip)
if (program_mode == BYTE_PROGRAM) { if (program_mode == BYTE_PROGRAM) {
buf = kmalloc(4, GFP_KERNEL); buf = kmalloc(4, GFP_KERNEL);
if (!buf) { if (!buf)
return STATUS_ERROR; return STATUS_ERROR;
}
while (len) { while (len) {
retval = sf_enable_write(chip, SPI_WREN); retval = sf_enable_write(chip, SPI_WREN);
...@@ -762,14 +725,12 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -762,14 +725,12 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip)
int first_byte = 1; int first_byte = 1;
retval = sf_enable_write(chip, SPI_WREN); retval = sf_enable_write(chip, SPI_WREN);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
buf = kmalloc(4, GFP_KERNEL); buf = kmalloc(4, GFP_KERNEL);
if (!buf) { if (!buf)
return STATUS_ERROR; return STATUS_ERROR;
}
while (len) { while (len) {
rtsx_stor_access_xfer_buf(buf, 1, srb, &index, &offset, rtsx_stor_access_xfer_buf(buf, 1, srb, &index, &offset,
...@@ -808,19 +769,16 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -808,19 +769,16 @@ int spi_write_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip)
kfree(buf); kfree(buf);
retval = sf_disable_write(chip, SPI_WRDI); retval = sf_disable_write(chip, SPI_WRDI);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = sf_polling_status(chip, 100); retval = sf_polling_status(chip, 100);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
} else if (program_mode == PAGE_PROGRAM) { } else if (program_mode == PAGE_PROGRAM) {
buf = kmalloc(SF_PAGE_LEN, GFP_KERNEL); buf = kmalloc(SF_PAGE_LEN, GFP_KERNEL);
if (!buf) { if (!buf)
return STATUS_NOMEM; return STATUS_NOMEM;
}
while (len) { while (len) {
u16 pagelen = SF_PAGE_LEN - (u8)addr; u16 pagelen = SF_PAGE_LEN - (u8)addr;
...@@ -893,24 +851,20 @@ int spi_erase_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -893,24 +851,20 @@ int spi_erase_flash(struct scsi_cmnd *srb, struct rtsx_chip *chip)
if (erase_mode == PAGE_ERASE) { if (erase_mode == PAGE_ERASE) {
retval = sf_enable_write(chip, SPI_WREN); retval = sf_enable_write(chip, SPI_WREN);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = sf_erase(chip, ins, 1, addr); retval = sf_erase(chip, ins, 1, addr);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
} else if (erase_mode == CHIP_ERASE) { } else if (erase_mode == CHIP_ERASE) {
retval = sf_enable_write(chip, SPI_WREN); retval = sf_enable_write(chip, SPI_WREN);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
retval = sf_erase(chip, ins, 0, 0); retval = sf_erase(chip, ins, 0, 0);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
} else { } else {
spi_set_err_code(chip, SPI_INVALID_COMMAND); spi_set_err_code(chip, SPI_INVALID_COMMAND);
return STATUS_FAIL; return STATUS_FAIL;
...@@ -935,9 +889,8 @@ int spi_write_flash_status(struct scsi_cmnd *srb, struct rtsx_chip *chip) ...@@ -935,9 +889,8 @@ int spi_write_flash_status(struct scsi_cmnd *srb, struct rtsx_chip *chip)
} }
retval = sf_enable_write(chip, ewsr); retval = sf_enable_write(chip, ewsr);
if (retval != STATUS_SUCCESS) { if (retval != STATUS_SUCCESS)
return STATUS_FAIL; return STATUS_FAIL;
}
rtsx_init_cmd(chip); rtsx_init_cmd(chip);
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment