projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
[powerpc.git]
/
arch
/
powerpc
/
sysdev
/
tsi108_dev.c
diff --git
a/arch/powerpc/sysdev/tsi108_dev.c
b/arch/powerpc/sysdev/tsi108_dev.c
index
97f37ef
..
7d3b09b
100644
(file)
--- a/
arch/powerpc/sysdev/tsi108_dev.c
+++ b/
arch/powerpc/sysdev/tsi108_dev.c
@@
-48,7
+48,7
@@
phys_addr_t get_csrbase(void)
tsi = of_find_node_by_type(NULL, "tsi-bridge");
if (tsi) {
unsigned int size;
tsi = of_find_node_by_type(NULL, "tsi-bridge");
if (tsi) {
unsigned int size;
- const void *prop = get_property(tsi, "reg", &size);
+ const void *prop =
of_
get_property(tsi, "reg", &size);
tsi108_csr_base = of_translate_address(tsi, prop);
of_node_put(tsi);
};
tsi108_csr_base = of_translate_address(tsi, prop);
of_node_put(tsi);
};
@@
-77,10
+77,10
@@
static int __init tsi108_eth_of_init(void)
struct resource r[2];
struct device_node *phy;
hw_info tsi_eth_data;
struct resource r[2];
struct device_node *phy;
hw_info tsi_eth_data;
- unsigned int *id;
- unsigned int *phy_id;
+
const
unsigned int *id;
+
const
unsigned int *phy_id;
const void *mac_addr;
const void *mac_addr;
- phandle *ph;
+
const
phandle *ph;
memset(r, 0, sizeof(r));
memset(&tsi_eth_data, 0, sizeof(tsi_eth_data));
memset(r, 0, sizeof(r));
memset(&tsi_eth_data, 0, sizeof(tsi_eth_data));
@@
-107,10
+107,11
@@
static int __init tsi108_eth_of_init(void)
goto err;
}
goto err;
}
- mac_addr = get_property(np, "address", NULL);
- memcpy(tsi_eth_data.mac_addr, mac_addr, 6);
+ mac_addr = of_get_mac_address(np);
+ if (mac_addr)
+ memcpy(tsi_eth_data.mac_addr, mac_addr, 6);
- ph =
(phandle *)
get_property(np, "phy-handle", NULL);
+ ph =
of_
get_property(np, "phy-handle", NULL);
phy = of_find_node_by_phandle(*ph);
if (phy == NULL) {
phy = of_find_node_by_phandle(*ph);
if (phy == NULL) {
@@
-118,8
+119,8
@@
static int __init tsi108_eth_of_init(void)
goto unreg;
}
goto unreg;
}
- id =
(u32 *)
get_property(phy, "reg", NULL);
- phy_id =
(u32 *)
get_property(phy, "phy-id", NULL);
+ id =
of_
get_property(phy, "reg", NULL);
+ phy_id =
of_
get_property(phy, "phy-id", NULL);
ret = of_address_to_resource(phy, 0, &res);
if (ret) {
of_node_put(phy);
ret = of_address_to_resource(phy, 0, &res);
if (ret) {
of_node_put(phy);
@@
-129,6
+130,8
@@
static int __init tsi108_eth_of_init(void)
tsi_eth_data.phyregs = res.start;
tsi_eth_data.phy = *phy_id;
tsi_eth_data.irq_num = irq_of_parse_and_map(np, 0);
tsi_eth_data.phyregs = res.start;
tsi_eth_data.phy = *phy_id;
tsi_eth_data.irq_num = irq_of_parse_and_map(np, 0);
+ if (of_device_is_compatible(phy, "bcm54xx"))
+ tsi_eth_data.phy_type = TSI108_PHY_BCM54XX;
of_node_put(phy);
ret =
platform_device_add_data(tsi_eth_dev, &tsi_eth_data,
of_node_put(phy);
ret =
platform_device_add_data(tsi_eth_dev, &tsi_eth_data,