Remove obsolete battery recall properties

The recalls for that broken batch of Sony batteries dates back from
2006. All the batteries that could have been recalled have now
been recalled, and somebody particularly interested in supporting
them can match the batteries using the old rules file, in a
user session or a separate daemon.
This commit is contained in:
Bastien Nocera 2013-10-10 12:16:31 +02:00
parent 3ed22cd32b
commit c842f1a53e
11 changed files with 0 additions and 414 deletions

View file

@ -86,9 +86,6 @@ struct _UpDevicePrivate
gint64 time_to_full; /* seconds */
gdouble percentage; /* percent */
gdouble temperature; /* degrees C */
gboolean recall_notice;
gchar *recall_vendor;
gchar *recall_url;
};
enum {
@ -119,9 +116,6 @@ enum {
PROP_TIME_TO_FULL,
PROP_PERCENTAGE,
PROP_TEMPERATURE,
PROP_RECALL_NOTICE,
PROP_RECALL_VENDOR,
PROP_RECALL_URL,
PROP_LAST
};
@ -221,14 +215,6 @@ up_device_collect_props_cb (const char *key, const GValue *value, UpDevice *devi
device->priv->capacity = g_value_get_double (value);
} else if (g_strcmp0 (key, "State") == 0) {
device->priv->state = g_value_get_uint (value);
} else if (g_strcmp0 (key, "RecallNotice") == 0) {
device->priv->recall_notice = g_value_get_boolean (value);
} else if (g_strcmp0 (key, "RecallVendor") == 0) {
g_free (device->priv->recall_vendor);
device->priv->recall_vendor = g_strdup (g_value_get_string (value));
} else if (g_strcmp0 (key, "RecallUrl") == 0) {
g_free (device->priv->recall_url);
device->priv->recall_url = g_strdup (g_value_get_string (value));
} else {
g_warning ("unhandled property '%s'", key);
}
@ -527,12 +513,6 @@ up_device_to_text (UpDevice *device)
}
if (device->priv->kind == UP_DEVICE_KIND_LINE_POWER)
g_string_append_printf (string, " online: %s\n", up_device_bool_to_string (device->priv->online));
if (device->priv->kind == UP_DEVICE_KIND_BATTERY) {
if (device->priv->recall_notice) {
g_string_append_printf (string, " recall vendor: %s\n", device->priv->recall_vendor);
g_string_append_printf (string, " recall url: %s\n", device->priv->recall_url);
}
}
/* if we can, get history */
if (device->priv->has_history) {
@ -841,17 +821,6 @@ up_device_set_property (GObject *object, guint prop_id, const GValue *value, GPa
case PROP_TECHNOLOGY:
device->priv->technology = g_value_get_uint (value);
break;
case PROP_RECALL_NOTICE:
device->priv->recall_notice = g_value_get_boolean (value);
break;
case PROP_RECALL_VENDOR:
g_free (device->priv->recall_vendor);
device->priv->recall_vendor = g_strdup (g_value_get_string (value));
break;
case PROP_RECALL_URL:
g_free (device->priv->recall_url);
device->priv->recall_url = g_strdup (g_value_get_string (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@ -945,15 +914,6 @@ up_device_get_property (GObject *object, guint prop_id, GValue *value, GParamSpe
case PROP_TEMPERATURE:
g_value_set_double (value, device->priv->temperature);
break;
case PROP_RECALL_NOTICE:
g_value_set_boolean (value, device->priv->recall_notice);
break;
case PROP_RECALL_VENDOR:
g_value_set_string (value, device->priv->recall_vendor);
break;
case PROP_RECALL_URL:
g_value_set_string (value, device->priv->recall_url);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@ -1323,47 +1283,6 @@ up_device_class_init (UpDeviceClass *klass)
g_param_spec_double ("temperature", NULL, NULL,
0.0, G_MAXDOUBLE, 0.0,
G_PARAM_READWRITE));
/**
* UpDevice:recall-notice:
*
* If the device may be recalled due to defect. NOTE: This property does
* not mean the battery is broken, and just that the user should
* _check_ with the vendor.
*
* Since: 0.9.0
**/
g_object_class_install_property (object_class,
PROP_RECALL_NOTICE,
g_param_spec_boolean ("recall-notice",
NULL, NULL,
FALSE,
G_PARAM_READWRITE));
/**
* UpDevice:recall-vendor:
*
* The vendor that is recalling the device.
*
* Since: 0.9.0
**/
g_object_class_install_property (object_class,
PROP_RECALL_VENDOR,
g_param_spec_string ("recall-vendor",
NULL, NULL,
NULL,
G_PARAM_READWRITE));
/**
* UpDevice:recall-url:
*
* The vendors internet link for the recalled device.
*
* Since: 0.9.0
**/
g_object_class_install_property (object_class,
PROP_RECALL_URL,
g_param_spec_string ("recall-url",
NULL, NULL,
NULL,
G_PARAM_READWRITE));
g_type_class_add_private (klass, sizeof (UpDevicePrivate));
}
@ -1397,8 +1316,6 @@ up_device_finalize (GObject *object)
g_free (device->priv->model);
g_free (device->priv->serial);
g_free (device->priv->native_path);
g_free (device->priv->recall_vendor);
g_free (device->priv->recall_url);
if (device->priv->proxy_device != NULL)
g_object_unref (device->priv->proxy_device);
if (device->priv->proxy_props != NULL)

View file

@ -1,61 +0,0 @@
##############################################################################################################
# Battery recall notices: Dell
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_dell_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_dell_end"
# only match correct manufacturer
ATTR{manufacturer}!="Dell", GOTO="up_battery_recall_dell_end"
ATTR{model_name}=="1K055", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C5446", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="F2100", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="KD494", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="W5915", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="Y1333", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="3K590", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C6269", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="F5132", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="OR331", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5308", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="Y4500", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="5P474", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C6270", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="GD785", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="M3006", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5329", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="Y5466", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="6P922", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="D2961", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="H3191", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="RD857", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5332", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C2603", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="D5555", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="J1524", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="TD349", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5333", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C5339", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="D6024", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="JD616", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="U5867", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5875", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="C5340", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="D6025", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="JD617", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="U5882", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="X5877", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="Dell", ENV{UPOWER_RECALL_URL}="https://www.dellbatteryprogram.com"
LABEL="up_battery_recall_dell_end"

View file

@ -1,31 +0,0 @@
##############################################################################################################
# Battery recall notices: Fujitsu
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_fujitsu_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_fujitsu_end"
# only match correct manufacturer
ATTR{manufacturer}!="Fujitsu", GOTO="up_battery_recall_fujitsu_end"
ATTR{model_name}=="CP255100", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP255108", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP229720", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP229725", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP234003", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP234019", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP283030", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="CP267910", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="Fujitsu", ENV{UPOWER_RECALL_URL}="http://www.computers.us.fujitsu.com/battery/"
LABEL="up_battery_recall_fujitsu_end"

View file

@ -1,28 +0,0 @@
##############################################################################################################
# Battery recall notices: Gateway
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_gateway_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_gateway_end"
# only match correct manufacturer
ATTR{manufacturer}!="Gateway", GOTO="up_battery_recall_gateway_end"
ATTR{model_name}=="916C4610F", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="916C4720F", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="916C4730F", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="916C5010F", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="W230", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="Gateway", ENV{UPOWER_RECALL_URL}="http://www.gateway.com/battery/\n"
LABEL="up_battery_recall_gateway_end"

View file

@ -1,38 +0,0 @@
##############################################################################################################
# Battery recall notices: IBM
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_ibm_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_ibm_end"
# only match correct manufacturer
ATTR{manufacturer}!="SONY", GOTO="up_battery_recall_ibm_end"
# only recalled on some particular models
ATTR{[dmi/id]product_version}!="*R60*|*T60*|*Z60m*|*Z61e*|*Z61m*|*Z61p*", GOTO="up_battery_recall_ibm_end"
ATTR{model_name}=="92P1072", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1073", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1088", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1089", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1142", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1141", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1170", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1169", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="93P5028", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1174", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="92P1173", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="93P5030", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="LENOVO", ENV{UPOWER_RECALL_URL}="http://www.lenovo.com/batteryprogram"
LABEL="up_battery_recall_ibm_end"

View file

@ -1,24 +0,0 @@
##############################################################################################################
# Battery recall notices: Lenovo
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_lenovo_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_lenovo_end"
# only match correct manufacturer
ATTR{manufacturer}!="SANYO", GOTO="up_battery_recall_lenovo_end"
ATTR{model_name}=="92P1131", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="LENOVO", ENV{UPOWER_RECALL_URL}="http://www.lenovo.com/batteryprogram"
LABEL="up_battery_recall_lenovo_end"

View file

@ -1,36 +0,0 @@
##############################################################################################################
# Battery recall notices: Toshiba
#
# These are properties defining the behavior:
# UPOWER_RECALL_NOTICE
# UPOWER_RECALL_VENDOR
# UPOWER_RECALL_URL
#
# only match power_supply devices
SUBSYSTEM!="power_supply", GOTO="up_battery_recall_toshiba_end"
# only match batteries
ATTR{type}!="Battery", GOTO="up_battery_recall_toshiba_end"
# only match correct manufacturer
ATTR{manufacturer}!="TOSHIBA", GOTO="up_battery_recall_toshiba_end"
ATTR{model_name}=="PA3191U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3191U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3356U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3356U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3475U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3476U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3399U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3451U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3383U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3395U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3399U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3400U", ENV{UPOWER_RECALL_NOTICE}="1"
ATTR{model_name}=="PA3421U", ENV{UPOWER_RECALL_NOTICE}="1"
ENV{UPOWER_RECALL_NOTICE}=="1", ENV{UPOWER_RECALL_VENDOR}="Toshiba", ENV{UPOWER_RECALL_URL}="http://bxinfo.toshiba.com/"
LABEL="up_battery_recall_toshiba_end"

View file

@ -1,12 +1,6 @@
## Process this file with automake to produce Makefile.in
udevrules_DATA = \
95-upower-battery-recall-dell.rules \
95-upower-battery-recall-fujitsu.rules \
95-upower-battery-recall-gateway.rules \
95-upower-battery-recall-ibm.rules \
95-upower-battery-recall-lenovo.rules \
95-upower-battery-recall-toshiba.rules \
95-upower-wup.rules \
95-upower-hid.rules \
95-upower-csr.rules

View file

@ -505,9 +505,6 @@ up_device_supply_refresh_battery (UpDeviceSupply *supply)
gchar *manufacturer = NULL;
gchar *model_name = NULL;
gchar *serial_number = NULL;
gboolean recall_notice;
const gchar *recall_vendor = NULL;
const gchar *recall_url = NULL;
UpDaemon *daemon;
gboolean ac_online = FALSE;
gboolean has_ac = FALSE;
@ -562,13 +559,6 @@ up_device_supply_refresh_battery (UpDeviceSupply *supply)
up_device_supply_make_safe_string (model_name);
up_device_supply_make_safe_string (serial_number);
/* are we possibly recalled by the vendor? */
recall_notice = g_udev_device_has_property (native, "UPOWER_RECALL_NOTICE");
if (recall_notice) {
recall_vendor = g_udev_device_get_property (native, "UPOWER_RECALL_VENDOR");
recall_url = g_udev_device_get_property (native, "UPOWER_RECALL_URL");
}
g_object_set (device,
"vendor", manufacturer,
"model", model_name,
@ -576,9 +566,6 @@ up_device_supply_refresh_battery (UpDeviceSupply *supply)
"is-rechargeable", TRUE, /* assume true for laptops */
"has-history", TRUE,
"has-statistics", TRUE,
"recall-notice", recall_notice,
"recall-vendor", recall_vendor,
"recall-url", recall_url,
NULL);
/* these don't change at runtime */

View file

@ -684,45 +684,6 @@ method return sender=:1.386 -> dest=:1.477 reply_serial=2
</doc:doc>
</property>
<property name="RecallNotice" type="b" access="read">
<doc:doc>
<doc:description>
<doc:para>
If the device may have been recalled by the vendor due to a suspected
fault.
This key does not imply the device is faulty, only that it approximatly
matches the description from the vendor of units that were recalled.
</doc:para>
</doc:description>
</doc:doc>
</property>
<property name="RecallVendor" type="s" access="read">
<doc:doc>
<doc:description>
<doc:para>
The vendor that is handling the hardware recall.
</doc:para>
<doc:para>
This property is only valid if the property recall-notice is true.
</doc:para>
</doc:description>
</doc:doc>
</property>
<property name="RecallUrl" type="s" access="read">
<doc:doc>
<doc:description>
<doc:para>
The URL to visit about the hardware recall.
</doc:para>
<doc:para>
This property is only valid if the property recall-notice is true.
</doc:para>
</doc:description>
</doc:doc>
</property>
</interface>
</node>

View file

@ -78,9 +78,6 @@ struct UpDevicePrivate
gint64 time_to_full; /* seconds */
gdouble percentage; /* percent */
gdouble temperature; /* degrees C */
gboolean recall_notice;
gchar *recall_vendor;
gchar *recall_url;
};
static gboolean up_device_register_device (UpDevice *device);
@ -113,9 +110,6 @@ enum {
PROP_PERCENTAGE,
PROP_TEMPERATURE,
PROP_TECHNOLOGY,
PROP_RECALL_NOTICE,
PROP_RECALL_VENDOR,
PROP_RECALL_URL,
PROP_LAST
};
@ -257,15 +251,6 @@ up_device_get_property (GObject *object, guint prop_id, GValue *value, GParamSpe
case PROP_TECHNOLOGY:
g_value_set_uint (value, device->priv->technology);
break;
case PROP_RECALL_NOTICE:
g_value_set_boolean (value, device->priv->recall_notice);
break;
case PROP_RECALL_VENDOR:
g_value_set_string (value, device->priv->recall_vendor);
break;
case PROP_RECALL_URL:
g_value_set_string (value, device->priv->recall_url);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@ -363,17 +348,6 @@ up_device_set_property (GObject *object, guint prop_id, const GValue *value, GPa
case PROP_TECHNOLOGY:
device->priv->technology = g_value_get_uint (value);
break;
case PROP_RECALL_NOTICE:
device->priv->recall_notice = g_value_get_boolean (value);
break;
case PROP_RECALL_VENDOR:
g_free (device->priv->recall_vendor);
device->priv->recall_vendor = g_strdup (g_value_get_string (value));
break;
case PROP_RECALL_URL:
g_free (device->priv->recall_url);
device->priv->recall_url = g_strdup (g_value_get_string (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@ -928,8 +902,6 @@ up_device_finalize (GObject *object)
g_free (device->priv->model);
g_free (device->priv->serial);
g_free (device->priv->native_path);
g_free (device->priv->recall_vendor);
g_free (device->priv->recall_url);
G_OBJECT_CLASS (up_device_parent_class)->finalize (object);
}
@ -1185,33 +1157,6 @@ up_device_class_init (UpDeviceClass *klass)
g_param_spec_double ("temperature", NULL, NULL,
0.0, G_MAXDOUBLE, 0.0,
G_PARAM_READWRITE));
/**
* UpDevice:recall-notice:
*/
g_object_class_install_property (object_class,
PROP_RECALL_NOTICE,
g_param_spec_boolean ("recall-notice",
NULL, NULL,
FALSE,
G_PARAM_READWRITE));
/**
* UpDevice:recall-vendor:
*/
g_object_class_install_property (object_class,
PROP_RECALL_VENDOR,
g_param_spec_string ("recall-vendor",
NULL, NULL,
NULL,
G_PARAM_READWRITE));
/**
* UpDevice:recall-url:
*/
g_object_class_install_property (object_class,
PROP_RECALL_URL,
g_param_spec_string ("recall-url",
NULL, NULL,
NULL,
G_PARAM_READWRITE));
dbus_g_error_domain_register (UP_DEVICE_ERROR, NULL, UP_DEVICE_TYPE_ERROR);
}