|
@@ -247,10 +247,11 @@ static void bind_cdev(struct thermal_cooling_device *cdev)
|
|
|
if (!pos->tzp && !pos->ops->bind)
|
|
|
continue;
|
|
|
|
|
|
- if (!pos->tzp && pos->ops->bind) {
|
|
|
+ if (pos->ops->bind) {
|
|
|
ret = pos->ops->bind(pos, cdev);
|
|
|
if (ret)
|
|
|
print_bind_err_msg(pos, cdev, ret);
|
|
|
+ continue;
|
|
|
}
|
|
|
|
|
|
tzp = pos->tzp;
|
|
@@ -282,8 +283,8 @@ static void bind_tz(struct thermal_zone_device *tz)
|
|
|
|
|
|
mutex_lock(&thermal_list_lock);
|
|
|
|
|
|
- /* If there is no platform data, try to use ops->bind */
|
|
|
- if (!tzp && tz->ops->bind) {
|
|
|
+ /* If there is ops->bind, try to use ops->bind */
|
|
|
+ if (tz->ops->bind) {
|
|
|
list_for_each_entry(pos, &thermal_cdev_list, node) {
|
|
|
ret = tz->ops->bind(tz, pos);
|
|
|
if (ret)
|