lpcspifi: Fix byte order bug
Found by grepping for pointer casts. Change-Id: I42ef3ebcce9fc6391154888b48601ede8377c34e Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/1771 Tested-by: jenkins Reviewed-by: Jens Bauer <jens@gpio.dk> Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
This commit is contained in:
parent
a3c0f05461
commit
dc15e0a295
|
@ -774,6 +774,7 @@ static int lpcspifi_read_flash_id(struct flash_bank *bank, uint32_t *id)
|
||||||
uint32_t ssp_base = lpcspifi_info->ssp_base;
|
uint32_t ssp_base = lpcspifi_info->ssp_base;
|
||||||
uint32_t io_base = lpcspifi_info->io_base;
|
uint32_t io_base = lpcspifi_info->io_base;
|
||||||
uint32_t value;
|
uint32_t value;
|
||||||
|
uint8_t id_buf[3];
|
||||||
int retval;
|
int retval;
|
||||||
|
|
||||||
if (target->state != TARGET_HALTED) {
|
if (target->state != TARGET_HALTED) {
|
||||||
|
@ -808,7 +809,7 @@ static int lpcspifi_read_flash_id(struct flash_bank *bank, uint32_t *id)
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
((uint8_t *)id)[0] = value;
|
id_buf[0] = value;
|
||||||
|
|
||||||
/* Dummy write to clock in data */
|
/* Dummy write to clock in data */
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
|
@ -818,7 +819,7 @@ static int lpcspifi_read_flash_id(struct flash_bank *bank, uint32_t *id)
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
((uint8_t *)id)[1] = value;
|
id_buf[1] = value;
|
||||||
|
|
||||||
/* Dummy write to clock in data */
|
/* Dummy write to clock in data */
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
|
@ -828,10 +829,12 @@ static int lpcspifi_read_flash_id(struct flash_bank *bank, uint32_t *id)
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
((uint8_t *)id)[2] = value;
|
id_buf[2] = value;
|
||||||
|
|
||||||
if (retval == ERROR_OK)
|
if (retval == ERROR_OK)
|
||||||
retval = ssp_setcs(target, io_base, 1);
|
retval = ssp_setcs(target, io_base, 1);
|
||||||
|
if (retval == ERROR_OK)
|
||||||
|
*id = id_buf[2] << 16 | id_buf[1] << 8 | id_buf[0];
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue