Lines Matching +full:bus +full:- +full:specific

5 U-Boot core driver model. See doc/driver-model/README.txt
7 -----------------------
9 -----------------------
11 The networking stack in Das U-Boot is designed for multiple network devices
16 ------------------
18 ------------------
21 meaning of 0 for success and non-zero for failure.
23 ----------
25 ----------
27 When U-Boot initializes, it will call the common function eth_initialize().
28 This will in turn call the board-specific board_eth_init() (or if that fails,
29 the cpu-specific cpu_eth_init()). These board-specific functions can do random
30 system handling, but ultimately they will call the driver-specific register
35 Any such information that is specific to an interface should be stored in a
36 private, driver-defined data structure and pointed to by eth->priv (see below).
52 struct mii_dev *bus;
56 return -ENOMEM;
61 return -ENOMEM;
67 sprintf(dev->name, "APE");
71 * MAC, read it and initialize dev->enetaddr with it
73 ape_mac_read(dev->enetaddr);
75 dev->iobase = iobase;
76 dev->priv = priv;
77 dev->init = ape_init;
78 dev->halt = ape_halt;
79 dev->send = ape_send;
80 dev->recv = ape_recv;
81 dev->write_hwaddr = ape_write_hwaddr;
86 bus = mdio_alloc();
87 if (!bus) {
90 return -ENOMEM;
93 bus->read = ape_mii_read;
94 bus->write = ape_mii_write;
95 mdio_register(bus);
106 < 0 - failure (hardware failure, not probe failure)
107 >=0 - number of interfaces detected
111 causes confusion with the driver-specific init function.
114 not touch the hardware in anyway. That step is handled in the driver-specific
118 -----------
120 -----------
133 the opportunity to program the device's MAC address with the dev->enetaddr
134 member. This allows the rest of U-Boot to dynamically change the MAC address
137 The send function does what you think -- transmit the specified packet whose
172 The write_hwaddr function should program the MAC address stored in dev->enetaddr
178 dev->init()
180 dev->send()
182 dev->recv()
184 dev->halt()
186 --------------------------------
188 --------------------------------
190 If your device supports banging arbitrary values on the MII bus (pretty much
196 bus = mdio_alloc();
197 if (!bus) {
200 return -ENOMEM;
203 bus->read = ape_mii_read;
204 bus->write = ape_mii_write;
205 mdio_register(bus);
209 int mii_read(struct mii_dev *bus, int addr, int devad, int reg);
210 int mii_write(struct mii_dev *bus, int addr, int devad, int reg,