aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/thermal
diff options
context:
space:
mode:
authorEduardo Valentin <eduardo.valentin@ti.com>2013-01-02 10:29:39 -0500
committerZhang Rui <rui.zhang@intel.com>2013-01-15 21:46:46 -0500
commit8ab3e6a08a98f7ff18c6814065eb30ba2e000233 (patch)
tree79653389ffbff8e748815ca13a7a925e585ca2a9 /drivers/thermal
parentc076fc42a4d6c51d6422aaf9f6626bf1adf983e7 (diff)
thermal: Use thermal zone device id in netlink messages
This patch changes the function thermal_generate_netlink_event to receive a thermal zone device instead of a originator id. This way, the messages will always be bound to a thermal zone. Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com> Reviewed-by: Durgadoss R <durgadoss.r@intel.com> Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Diffstat (limited to 'drivers/thermal')
-rw-r--r--drivers/thermal/thermal_sys.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/thermal/thermal_sys.c b/drivers/thermal/thermal_sys.c
index 8c8ce806180f..d85f51f433be 100644
--- a/drivers/thermal/thermal_sys.c
+++ b/drivers/thermal/thermal_sys.c
@@ -1711,7 +1711,8 @@ static struct genl_multicast_group thermal_event_mcgrp = {
1711 .name = THERMAL_GENL_MCAST_GROUP_NAME, 1711 .name = THERMAL_GENL_MCAST_GROUP_NAME,
1712}; 1712};
1713 1713
1714int thermal_generate_netlink_event(u32 orig, enum events event) 1714int thermal_generate_netlink_event(struct thermal_zone_device *tz,
1715 enum events event)
1715{ 1716{
1716 struct sk_buff *skb; 1717 struct sk_buff *skb;
1717 struct nlattr *attr; 1718 struct nlattr *attr;
@@ -1721,6 +1722,9 @@ int thermal_generate_netlink_event(u32 orig, enum events event)
1721 int result; 1722 int result;
1722 static unsigned int thermal_event_seqnum; 1723 static unsigned int thermal_event_seqnum;
1723 1724
1725 if (!tz)
1726 return -EINVAL;
1727
1724 /* allocate memory */ 1728 /* allocate memory */
1725 size = nla_total_size(sizeof(struct thermal_genl_event)) + 1729 size = nla_total_size(sizeof(struct thermal_genl_event)) +
1726 nla_total_size(0); 1730 nla_total_size(0);
@@ -1755,7 +1759,7 @@ int thermal_generate_netlink_event(u32 orig, enum events event)
1755 1759
1756 memset(thermal_event, 0, sizeof(struct thermal_genl_event)); 1760 memset(thermal_event, 0, sizeof(struct thermal_genl_event));
1757 1761
1758 thermal_event->orig = orig; 1762 thermal_event->orig = tz->id;
1759 thermal_event->event = event; 1763 thermal_event->event = event;
1760 1764
1761 /* send multicast genetlink message */ 1765 /* send multicast genetlink message */