svn_rev_469
- make some more char * const - dev_add_parameter -> dev_add_param
This commit is contained in:
parent
88673469c6
commit
7baa6289fe
|
@ -3,17 +3,13 @@
|
|||
|
||||
#define MAX_DRIVER_NAME 16
|
||||
|
||||
#define MAP_READ 1
|
||||
#define MAP_WRITE 2
|
||||
|
||||
#define DEVICE_TYPE_UNKNOWN 0
|
||||
#define DEVICE_TYPE_ETHER 1
|
||||
#define DEVICE_TYPE_STDIO 2
|
||||
#define DEVICE_TYPE_CONSOLE 2
|
||||
#define DEVICE_TYPE_DRAM 3
|
||||
#define DEVICE_TYPE_BLOCK 4
|
||||
#define DEVICE_TYPE_FS 5
|
||||
#define DEVICE_TYPE_CONSOLE 6
|
||||
#define MAX_DEVICE_TYPE 6
|
||||
#define MAX_DEVICE_TYPE 5
|
||||
|
||||
#include <param.h>
|
||||
|
||||
|
@ -69,26 +65,45 @@ struct driver_d {
|
|||
#define RW_SIZE(x) (x)
|
||||
#define RW_SIZE_MASK 0x7
|
||||
|
||||
/* Register/unregister devices and drivers. Since we don't have modules
|
||||
* we do not need a driver_unregister function.
|
||||
*/
|
||||
int register_driver(struct driver_d *);
|
||||
int register_device(struct device_d *);
|
||||
void unregister_device(struct device_d *);
|
||||
|
||||
struct device_d *device_from_spec_str(const char *str, char **endp);
|
||||
struct device_d *get_device_by_name(char *name);
|
||||
/* Iterate through the devices of a given type. if last is NULL, the
|
||||
* first device of this type is returned. Put this pointer in as
|
||||
* 'last' to get the next device. This functions returns NULL if no
|
||||
* more devices are found.
|
||||
*/
|
||||
struct device_d *get_device_by_type(ulong type, struct device_d *last);
|
||||
struct device_d *get_device_by_id(const char *id);
|
||||
struct device_d *get_first_device(void);
|
||||
|
||||
/* Find a free device id from the given template. This is archieved by
|
||||
* appending a number to the template. Dynamically created devices should
|
||||
* use this function rather than filling the id field themselves.
|
||||
*/
|
||||
int get_free_deviceid(char *id, char *id_template);
|
||||
|
||||
struct device_d *device_from_spec_str(const char *str, char **endp);
|
||||
|
||||
/* Find a driver with the given name. Currently the filesystem implementation
|
||||
* uses this to get the driver from the name the user specifies with the
|
||||
* mount command
|
||||
*/
|
||||
struct driver_d *get_driver_by_name(const char *name);
|
||||
|
||||
ssize_t dev_read(struct device_d *dev, void *buf, size_t count, ulong offset, ulong flags);
|
||||
ssize_t dev_write(struct device_d *dev, const void *buf, size_t count, ulong offset, ulong flags);
|
||||
ssize_t dev_erase(struct device_d *dev, size_t count, unsigned long offset);
|
||||
|
||||
/* These are used by drivers which work with direct memory accesses */
|
||||
ssize_t mem_read(struct device_d *dev, void *buf, size_t count, ulong offset, ulong flags);
|
||||
ssize_t mem_write(struct device_d *dev, const void *buf, size_t count, ulong offset, ulong flags);
|
||||
|
||||
/* Use this if you have nothing to do in your drivers probe function */
|
||||
int dummy_probe(struct device_d *);
|
||||
|
||||
#endif /* DRIVER_H */
|
||||
|
|
|
@ -409,7 +409,7 @@ static inline void NetCopyLong(ulong *to, ulong *from)
|
|||
char * ip_to_string (IPaddr_t x, char *s);
|
||||
|
||||
/* Convert a string to ip address */
|
||||
IPaddr_t string_to_ip(char *s);
|
||||
IPaddr_t string_to_ip(const char *s);
|
||||
|
||||
/* Convert a VLAN id to a string */
|
||||
void VLAN_to_string (ushort x, char *s);
|
||||
|
@ -426,8 +426,8 @@ ushort getenv_VLAN(char *);
|
|||
/* copy a filename (allow for "..." notation, limit length) */
|
||||
void copy_filename (char *dst, char *src, int size);
|
||||
|
||||
int string_to_enet_addr(char *str, char *enetaddr);
|
||||
void enet_addr_to_string(char *enetaddr, char *str);
|
||||
int string_to_enet_addr(const char *str, char *enetaddr);
|
||||
void enet_addr_to_string(const char *enetaddr, char *str);
|
||||
|
||||
/**********************************************************************/
|
||||
/* Network devices */
|
||||
|
|
|
@ -14,14 +14,15 @@ struct param_d {
|
|||
char *value;
|
||||
};
|
||||
|
||||
char *dev_get_param(struct device_d *dev, const char *name);
|
||||
const char *dev_get_param(struct device_d *dev, const char *name);
|
||||
int dev_set_param(struct device_d *dev, const char *name, const char *val);
|
||||
struct param_d *get_param_by_name(struct device_d *dev, const char *name);
|
||||
int dev_add_param(struct device_d *dev, struct param_d *par);
|
||||
|
||||
/* Convenience functions to handle a parameter as an ip address */
|
||||
int dev_set_param_ip(struct device_d *dev, char *name, IPaddr_t ip);
|
||||
IPaddr_t dev_get_param_ip(struct device_d *dev, char *name);
|
||||
|
||||
int dev_add_parameter(struct device_d *dev, struct param_d *par);
|
||||
|
||||
int global_add_parameter(struct param_d *param);
|
||||
|
||||
#endif /* PARAM_H */
|
||||
|
|
10
net/eth.c
10
net/eth.c
|
@ -97,11 +97,11 @@ int eth_register(struct eth_device *edev)
|
|||
edev->param_gateway.name = "gateway";
|
||||
edev->param_netmask.name = "netmask";
|
||||
edev->param_serverip.name = "serverip";
|
||||
dev_add_parameter(dev, &edev->param_ip);
|
||||
dev_add_parameter(dev, &edev->param_mac);
|
||||
dev_add_parameter(dev, &edev->param_gateway);
|
||||
dev_add_parameter(dev, &edev->param_netmask);
|
||||
dev_add_parameter(dev, &edev->param_serverip);
|
||||
dev_add_param(dev, &edev->param_ip);
|
||||
dev_add_param(dev, &edev->param_mac);
|
||||
dev_add_param(dev, &edev->param_gateway);
|
||||
dev_add_param(dev, &edev->param_netmask);
|
||||
dev_add_param(dev, &edev->param_serverip);
|
||||
|
||||
if (edev->get_mac_address(edev, ethaddr) == 0) {
|
||||
enet_addr_to_string(ethaddr, ethaddr_str);
|
||||
|
|
|
@ -291,7 +291,8 @@ NetLoop(proto_t protocol)
|
|||
return -1;
|
||||
|
||||
restart:
|
||||
string_to_enet_addr(dev_get_param(eth_get_current()->dev, "mac"), NetOurEther);
|
||||
string_to_enet_addr(dev_get_param(eth_get_current()->dev, "mac"),
|
||||
NetOurEther);
|
||||
|
||||
NetState = NETLOOP_CONTINUE;
|
||||
|
||||
|
@ -1513,7 +1514,7 @@ char *ip_to_string (IPaddr_t x, char *s)
|
|||
return s;
|
||||
}
|
||||
|
||||
IPaddr_t string_to_ip(char *s)
|
||||
IPaddr_t string_to_ip(const char *s)
|
||||
{
|
||||
IPaddr_t addr;
|
||||
char *e;
|
||||
|
@ -1581,7 +1582,7 @@ ushort getenv_VLAN(char *var)
|
|||
return (string_to_VLAN(getenv(var)));
|
||||
}
|
||||
|
||||
int string_to_enet_addr(char *str, char *enetaddr)
|
||||
int string_to_enet_addr(const char *str, char *enetaddr)
|
||||
{
|
||||
ulong reg;
|
||||
char *e;
|
||||
|
@ -1601,7 +1602,7 @@ int string_to_enet_addr(char *str, char *enetaddr)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void enet_addr_to_string(char *enetaddr, char *str)
|
||||
void enet_addr_to_string(const char *enetaddr, char *str)
|
||||
{
|
||||
sprintf (str, "%02X:%02X:%02X:%02X:%02X:%02X",
|
||||
enetaddr[0], enetaddr[1], enetaddr[2], enetaddr[3],
|
||||
|
|
Loading…
Reference in New Issue