mirror of
https://github.com/u-boot/u-boot.git
synced 2025-01-22 18:54:08 +08:00
Fix compiler warnings
This commit is contained in:
parent
90e4e78365
commit
2afbe4ed97
@ -38,72 +38,79 @@
|
|||||||
* Utility to send the preamble, address, and register (common to read
|
* Utility to send the preamble, address, and register (common to read
|
||||||
* and write).
|
* and write).
|
||||||
*/
|
*/
|
||||||
static void miiphy_pre(char read,
|
static void miiphy_pre (char read, unsigned char addr, unsigned char reg)
|
||||||
unsigned char addr,
|
|
||||||
unsigned char reg)
|
|
||||||
{
|
{
|
||||||
int j; /* counter */
|
int j; /* counter */
|
||||||
volatile ioport_t *iop = ioport_addr((immap_t *)CFG_IMMR, MDIO_PORT);
|
#ifndef CONFIG_EP8248
|
||||||
|
volatile ioport_t *iop = ioport_addr ((immap_t *) CFG_IMMR, MDIO_PORT);
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Send a 32 bit preamble ('1's) with an extra '1' bit for good measure.
|
* Send a 32 bit preamble ('1's) with an extra '1' bit for good measure.
|
||||||
* The IEEE spec says this is a PHY optional requirement. The AMD
|
* The IEEE spec says this is a PHY optional requirement. The AMD
|
||||||
* 79C874 requires one after power up and one after a MII communications
|
* 79C874 requires one after power up and one after a MII communications
|
||||||
* error. This means that we are doing more preambles than we need,
|
* error. This means that we are doing more preambles than we need,
|
||||||
* but it is safer and will be much more robust.
|
* but it is safer and will be much more robust.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
MDIO_ACTIVE;
|
MDIO_ACTIVE;
|
||||||
MDIO(1);
|
MDIO (1);
|
||||||
for(j = 0; j < 32; j++)
|
for (j = 0; j < 32; j++) {
|
||||||
{
|
MDC (0);
|
||||||
MDC(0);
|
MIIDELAY;
|
||||||
MIIDELAY;
|
MDC (1);
|
||||||
MDC(1);
|
MIIDELAY;
|
||||||
MIIDELAY;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* send the start bit (01) and the read opcode (10) or write (10) */
|
/* send the start bit (01) and the read opcode (10) or write (10) */
|
||||||
MDC(0); MDIO(0); MIIDELAY; MDC(1); MIIDELAY;
|
MDC (0);
|
||||||
MDC(0); MDIO(1); MIIDELAY; MDC(1); MIIDELAY;
|
MDIO (0);
|
||||||
MDC(0); MDIO(read); MIIDELAY; MDC(1); MIIDELAY;
|
MIIDELAY;
|
||||||
MDC(0); MDIO(!read); MIIDELAY; MDC(1); MIIDELAY;
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (0);
|
||||||
|
MDIO (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (0);
|
||||||
|
MDIO (read);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (0);
|
||||||
|
MDIO (!read);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
|
||||||
/* send the PHY address */
|
/* send the PHY address */
|
||||||
for(j = 0; j < 5; j++)
|
for (j = 0; j < 5; j++) {
|
||||||
{
|
MDC (0);
|
||||||
MDC(0);
|
if ((addr & 0x10) == 0) {
|
||||||
if((addr & 0x10) == 0)
|
MDIO (0);
|
||||||
{
|
} else {
|
||||||
MDIO(0);
|
MDIO (1);
|
||||||
}
|
}
|
||||||
else
|
MIIDELAY;
|
||||||
{
|
MDC (1);
|
||||||
MDIO(1);
|
MIIDELAY;
|
||||||
}
|
addr <<= 1;
|
||||||
MIIDELAY;
|
}
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
addr <<= 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* send the register address */
|
/* send the register address */
|
||||||
for(j = 0; j < 5; j++)
|
for (j = 0; j < 5; j++) {
|
||||||
{
|
MDC (0);
|
||||||
MDC(0);
|
if ((reg & 0x10) == 0) {
|
||||||
if((reg & 0x10) == 0)
|
MDIO (0);
|
||||||
{
|
} else {
|
||||||
MDIO(0);
|
MDIO (1);
|
||||||
}
|
}
|
||||||
else
|
MIIDELAY;
|
||||||
{
|
MDC (1);
|
||||||
MDIO(1);
|
MIIDELAY;
|
||||||
}
|
reg <<= 1;
|
||||||
MIIDELAY;
|
}
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
reg <<= 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -114,66 +121,63 @@ static void miiphy_pre(char read,
|
|||||||
* Returns:
|
* Returns:
|
||||||
* 0 on success
|
* 0 on success
|
||||||
*/
|
*/
|
||||||
int miiphy_read(unsigned char addr,
|
int miiphy_read (unsigned char addr, unsigned char reg, unsigned short *value)
|
||||||
unsigned char reg,
|
|
||||||
unsigned short *value)
|
|
||||||
{
|
{
|
||||||
short rdreg; /* register working value */
|
short rdreg; /* register working value */
|
||||||
int j; /* counter */
|
int j; /* counter */
|
||||||
volatile ioport_t *iop = ioport_addr((immap_t *)CFG_IMMR, MDIO_PORT);
|
#ifndef CONFIG_EP8248
|
||||||
|
volatile ioport_t *iop = ioport_addr ((immap_t *) CFG_IMMR, MDIO_PORT);
|
||||||
miiphy_pre(1, addr, reg);
|
|
||||||
|
|
||||||
/* tri-state our MDIO I/O pin so we can read */
|
|
||||||
MDC(0);
|
|
||||||
MDIO_TRISTATE;
|
|
||||||
MIIDELAY;
|
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
|
|
||||||
/* check the turnaround bit: the PHY should be driving it to zero */
|
|
||||||
if(MDIO_READ != 0)
|
|
||||||
{
|
|
||||||
/* puts ("PHY didn't drive TA low\n"); */
|
|
||||||
for(j = 0; j < 32; j++)
|
|
||||||
{
|
|
||||||
MDC(0);
|
|
||||||
MIIDELAY;
|
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
}
|
|
||||||
return(-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
MDC(0);
|
|
||||||
MIIDELAY;
|
|
||||||
|
|
||||||
/* read 16 bits of register data, MSB first */
|
|
||||||
rdreg = 0;
|
|
||||||
for(j = 0; j < 16; j++)
|
|
||||||
{
|
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
rdreg <<= 1;
|
|
||||||
rdreg |= MDIO_READ;
|
|
||||||
MDC(0);
|
|
||||||
MIIDELAY;
|
|
||||||
}
|
|
||||||
|
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
MDC(0);
|
|
||||||
MIIDELAY;
|
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
|
|
||||||
*value = rdreg;
|
|
||||||
|
|
||||||
#ifdef DEBUG
|
|
||||||
printf ("miiphy_read(0x%x) @ 0x%x = 0x%04x\n", reg, addr, *value);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return 0;
|
miiphy_pre (1, addr, reg);
|
||||||
|
|
||||||
|
/* tri-state our MDIO I/O pin so we can read */
|
||||||
|
MDC (0);
|
||||||
|
MDIO_TRISTATE;
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
|
||||||
|
/* check the turnaround bit: the PHY should be driving it to zero */
|
||||||
|
if (MDIO_READ != 0) {
|
||||||
|
/* puts ("PHY didn't drive TA low\n"); */
|
||||||
|
for (j = 0; j < 32; j++) {
|
||||||
|
MDC (0);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
}
|
||||||
|
return (-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
MDC (0);
|
||||||
|
MIIDELAY;
|
||||||
|
|
||||||
|
/* read 16 bits of register data, MSB first */
|
||||||
|
rdreg = 0;
|
||||||
|
for (j = 0; j < 16; j++) {
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
rdreg <<= 1;
|
||||||
|
rdreg |= MDIO_READ;
|
||||||
|
MDC (0);
|
||||||
|
MIIDELAY;
|
||||||
|
}
|
||||||
|
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (0);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
|
||||||
|
*value = rdreg;
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
|
printf ("miiphy_read(0x%x) @ 0x%x = 0x%04x\n", reg, addr, *value);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -184,47 +188,51 @@ int miiphy_read(unsigned char addr,
|
|||||||
* Returns:
|
* Returns:
|
||||||
* 0 on success
|
* 0 on success
|
||||||
*/
|
*/
|
||||||
int miiphy_write(unsigned char addr,
|
int miiphy_write (unsigned char addr, unsigned char reg, unsigned short value)
|
||||||
unsigned char reg,
|
|
||||||
unsigned short value)
|
|
||||||
{
|
{
|
||||||
int j; /* counter */
|
int j; /* counter */
|
||||||
volatile ioport_t *iop = ioport_addr((immap_t *)CFG_IMMR, MDIO_PORT);
|
#ifndef CONFIG_EP8248
|
||||||
|
volatile ioport_t *iop = ioport_addr ((immap_t *) CFG_IMMR, MDIO_PORT);
|
||||||
|
#endif
|
||||||
|
|
||||||
miiphy_pre(0, addr, reg);
|
miiphy_pre (0, addr, reg);
|
||||||
|
|
||||||
/* send the turnaround (10) */
|
/* send the turnaround (10) */
|
||||||
MDC(0); MDIO(1); MIIDELAY; MDC(1); MIIDELAY;
|
MDC (0);
|
||||||
MDC(0); MDIO(0); MIIDELAY; MDC(1); MIIDELAY;
|
MDIO (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (0);
|
||||||
|
MDIO (0);
|
||||||
|
MIIDELAY;
|
||||||
|
MDC (1);
|
||||||
|
MIIDELAY;
|
||||||
|
|
||||||
/* write 16 bits of register data, MSB first */
|
/* write 16 bits of register data, MSB first */
|
||||||
for(j = 0; j < 16; j++)
|
for (j = 0; j < 16; j++) {
|
||||||
{
|
MDC (0);
|
||||||
MDC(0);
|
if ((value & 0x00008000) == 0) {
|
||||||
if((value & 0x00008000) == 0)
|
MDIO (0);
|
||||||
{
|
} else {
|
||||||
MDIO(0);
|
MDIO (1);
|
||||||
}
|
}
|
||||||
else
|
MIIDELAY;
|
||||||
{
|
MDC (1);
|
||||||
MDIO(1);
|
MIIDELAY;
|
||||||
}
|
value <<= 1;
|
||||||
MIIDELAY;
|
}
|
||||||
MDC(1);
|
|
||||||
MIIDELAY;
|
|
||||||
value <<= 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Tri-state the MDIO line.
|
* Tri-state the MDIO line.
|
||||||
*/
|
*/
|
||||||
MDIO_TRISTATE;
|
MDIO_TRISTATE;
|
||||||
MDC(0);
|
MDC (0);
|
||||||
MIIDELAY;
|
MIIDELAY;
|
||||||
MDC(1);
|
MDC (1);
|
||||||
MIIDELAY;
|
MIIDELAY;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* CONFIG_BITBANGMII */
|
#endif /* CONFIG_BITBANGMII */
|
||||||
|
@ -128,7 +128,7 @@
|
|||||||
#define CONFIG_BAUDRATE 9600 /* STD Baudrate */
|
#define CONFIG_BAUDRATE 9600 /* STD Baudrate */
|
||||||
#define CONFIG_BOOTDELAY 5
|
#define CONFIG_BOOTDELAY 5
|
||||||
/* autoboot (do NOT change this set environment variable "bootdelay" to -1 instead) */
|
/* autoboot (do NOT change this set environment variable "bootdelay" to -1 instead) */
|
||||||
#define CONFIG_BOOT_RETRY_TIME -10 /* feature is avaiable but not enabled */
|
/* #define CONFIG_BOOT_RETRY_TIME -10 /XXX* feature is available but not enabled */
|
||||||
#define CONFIG_ZERO_BOOTDELAY_CHECK /* check console even if bootdelay = 0 */
|
#define CONFIG_ZERO_BOOTDELAY_CHECK /* check console even if bootdelay = 0 */
|
||||||
|
|
||||||
#define CONFIG_BOOTCOMMAND "diskboot 400000 0:1; bootm" /* autoboot command */
|
#define CONFIG_BOOTCOMMAND "diskboot 400000 0:1; bootm" /* autoboot command */
|
||||||
|
@ -112,7 +112,7 @@
|
|||||||
|
|
||||||
#define CONFIG_BOOTDELAY 5
|
#define CONFIG_BOOTDELAY 5
|
||||||
/* autoboot (do NOT change this set environment variable "bootdelay" to -1 instead) */
|
/* autoboot (do NOT change this set environment variable "bootdelay" to -1 instead) */
|
||||||
#define CONFIG_BOOT_RETRY_TIME -10 /* feature is avaiable but not enabled */
|
/* #define CONFIG_BOOT_RETRY_TIME -10 /XXX* feature is available but not enabled */
|
||||||
#define CONFIG_ZERO_BOOTDELAY_CHECK /* check console even if bootdelay = 0 */
|
#define CONFIG_ZERO_BOOTDELAY_CHECK /* check console even if bootdelay = 0 */
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user