Merge branches 'acpi-resources', 'acpi-battery', 'acpi-doc' and 'acpi-pnp'
[linux-2.6-block.git] / net / dsa / dsa.c
index 5eaadabe23a1dbf6c8dcaa8032fd739d5d7d04c8..e6f6cc3a1bcf45ee6fa49d6cfe840f58660e3511 100644 (file)
@@ -124,7 +124,7 @@ static ssize_t temp1_max_store(struct device *dev,
 
        return count;
 }
-static DEVICE_ATTR(temp1_max, S_IRUGO, temp1_max_show, temp1_max_store);
+static DEVICE_ATTR_RW(temp1_max);
 
 static ssize_t temp1_max_alarm_show(struct device *dev,
                                    struct device_attribute *attr, char *buf)
@@ -159,8 +159,8 @@ static umode_t dsa_hwmon_attrs_visible(struct kobject *kobj,
        if (index == 1) {
                if (!drv->get_temp_limit)
                        mode = 0;
-               else if (drv->set_temp_limit)
-                       mode |= S_IWUSR;
+               else if (!drv->set_temp_limit)
+                       mode &= ~S_IWUSR;
        } else if (index == 2 && !drv->get_temp_alarm) {
                mode = 0;
        }
@@ -633,7 +633,7 @@ static int dsa_of_probe(struct device *dev)
                if (cd->sw_addr > PHY_MAX_ADDR)
                        continue;
 
-               if (!of_property_read_u32(np, "eeprom-length", &eeprom_len))
+               if (!of_property_read_u32(child, "eeprom-length", &eeprom_len))
                        cd->eeprom_len = eeprom_len;
 
                for_each_available_child_of_node(child, port) {