mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 06:31:31 +00:00
board/tqc/tqm5200/cmd_stk52xx.c: fix GC 4.6 build warnings
Fix: cmd_stk52xx.c: In function 'spi_transmit': cmd_stk52xx.c:85:6: warning: variable 'dummy' set but not used [-Wunused-but-set-variable] cmd_stk52xx.c: In function 'i2s_play_wave': cmd_stk52xx.c:199:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] Signed-off-by: Wolfgang Denk <wd@denx.de>
This commit is contained in:
parent
1c2931d4ec
commit
65766f3852
1 changed files with 12 additions and 11 deletions
|
@ -82,18 +82,17 @@ static void spi_init(void)
|
||||||
|
|
||||||
static int spi_transmit(unsigned char data)
|
static int spi_transmit(unsigned char data)
|
||||||
{
|
{
|
||||||
int dummy;
|
|
||||||
struct mpc5xxx_spi *spi = (struct mpc5xxx_spi*)MPC5XXX_SPI;
|
struct mpc5xxx_spi *spi = (struct mpc5xxx_spi*)MPC5XXX_SPI;
|
||||||
|
|
||||||
spi->dr = data;
|
spi->dr = data;
|
||||||
/* wait for SPI transmission completed */
|
/* wait for SPI transmission completed */
|
||||||
while(!(spi->sr & 0x80))
|
while (!(spi->sr & 0x80)) {
|
||||||
{
|
if (spi->sr & 0x40) { /* if write collision occured */
|
||||||
if (spi->sr & 0x40) /* if write collision occured */
|
int dummy;
|
||||||
{
|
|
||||||
/* do dummy read to clear status register */
|
/* do dummy read to clear status register */
|
||||||
dummy = spi->dr;
|
dummy = spi->dr;
|
||||||
printf ("SPI write collision\n");
|
printf("SPI write collision: dr=0x%x\n", dummy);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -172,10 +171,8 @@ static void i2s_init(void)
|
||||||
psc->ccr = 0x1F03; /* 16 bit data width; 5.617MHz MCLK */
|
psc->ccr = 0x1F03; /* 16 bit data width; 5.617MHz MCLK */
|
||||||
psc->ctur = 0x0F; /* 16 bit frame width */
|
psc->ctur = 0x0F; /* 16 bit frame width */
|
||||||
|
|
||||||
for(i=0;i<128;i++)
|
for (i = 0; i < 128; i++)
|
||||||
{
|
|
||||||
psc->psc_buffer_32 = 0; /* clear tx fifo */
|
psc->psc_buffer_32 = 0; /* clear tx fifo */
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int i2s_play_wave(unsigned long addr, unsigned long len)
|
static int i2s_play_wave(unsigned long addr, unsigned long len)
|
||||||
|
@ -183,7 +180,6 @@ static int i2s_play_wave(unsigned long addr, unsigned long len)
|
||||||
unsigned long i;
|
unsigned long i;
|
||||||
unsigned char *wave_file = (uchar *)addr + 44; /* quick'n dirty: skip
|
unsigned char *wave_file = (uchar *)addr + 44; /* quick'n dirty: skip
|
||||||
* wav header*/
|
* wav header*/
|
||||||
unsigned char swapped[4];
|
|
||||||
struct mpc5xxx_psc *psc = (struct mpc5xxx_psc*)MPC5XXX_PSC2;
|
struct mpc5xxx_psc *psc = (struct mpc5xxx_psc*)MPC5XXX_PSC2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -192,11 +188,16 @@ static int i2s_play_wave(unsigned long addr, unsigned long len)
|
||||||
psc->command = (PSC_RX_ENABLE | PSC_TX_ENABLE);
|
psc->command = (PSC_RX_ENABLE | PSC_TX_ENABLE);
|
||||||
|
|
||||||
for(i = 0;i < (len / 4); i++) {
|
for(i = 0;i < (len / 4); i++) {
|
||||||
|
unsigned char swapped[4];
|
||||||
|
unsigned long *p = (unsigned long*)swapped;
|
||||||
|
|
||||||
swapped[3] = *wave_file++;
|
swapped[3] = *wave_file++;
|
||||||
swapped[2] = *wave_file++;
|
swapped[2] = *wave_file++;
|
||||||
swapped[1] = *wave_file++;
|
swapped[1] = *wave_file++;
|
||||||
swapped[0] = *wave_file++;
|
swapped[0] = *wave_file++;
|
||||||
psc->psc_buffer_32 = *((unsigned long*)swapped);
|
|
||||||
|
psc->psc_buffer_32 = *p;
|
||||||
|
|
||||||
while (psc->tfnum > 400) {
|
while (psc->tfnum > 400) {
|
||||||
if(ctrlc())
|
if(ctrlc())
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Add table
Reference in a new issue