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>__archive__
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 io_base = lpcspifi_info->io_base;
|
||||
uint32_t value;
|
||||
uint8_t id_buf[3];
|
||||
int retval;
|
||||
|
||||
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)
|
||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||
if (retval == ERROR_OK)
|
||||
((uint8_t *)id)[0] = value;
|
||||
id_buf[0] = value;
|
||||
|
||||
/* Dummy write to clock in data */
|
||||
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)
|
||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||
if (retval == ERROR_OK)
|
||||
((uint8_t *)id)[1] = value;
|
||||
id_buf[1] = value;
|
||||
|
||||
/* Dummy write to clock in data */
|
||||
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)
|
||||
retval = ssp_read_reg(target, ssp_base, SSP_DATA, &value);
|
||||
if (retval == ERROR_OK)
|
||||
((uint8_t *)id)[2] = value;
|
||||
id_buf[2] = value;
|
||||
|
||||
if (retval == ERROR_OK)
|
||||
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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue