reset: remove legacy reset lookup code
There are no more users of this code. Let's remove the exported symbols and the implementation from reset core. Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> [p.zabel@pengutronix.de: folded in 8e6ec20e-8965-4b42-99fc-0462269ff2f1@paulmck-laptop] Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This commit is contained in:
committed by
Philipp Zabel
parent
a86aaf2b62
commit
8bffbfdc01
@@ -25,9 +25,6 @@
|
||||
static DEFINE_MUTEX(reset_list_mutex);
|
||||
static LIST_HEAD(reset_controller_list);
|
||||
|
||||
static DEFINE_MUTEX(reset_lookup_mutex);
|
||||
static LIST_HEAD(reset_lookup_list);
|
||||
|
||||
/* Protects reset_gpio_lookup_list */
|
||||
static DEFINE_MUTEX(reset_gpio_lookup_mutex);
|
||||
static LIST_HEAD(reset_gpio_lookup_list);
|
||||
@@ -190,33 +187,6 @@ int devm_reset_controller_register(struct device *dev,
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(devm_reset_controller_register);
|
||||
|
||||
/**
|
||||
* reset_controller_add_lookup - register a set of lookup entries
|
||||
* @lookup: array of reset lookup entries
|
||||
* @num_entries: number of entries in the lookup array
|
||||
*/
|
||||
void reset_controller_add_lookup(struct reset_control_lookup *lookup,
|
||||
unsigned int num_entries)
|
||||
{
|
||||
struct reset_control_lookup *entry;
|
||||
unsigned int i;
|
||||
|
||||
mutex_lock(&reset_lookup_mutex);
|
||||
for (i = 0; i < num_entries; i++) {
|
||||
entry = &lookup[i];
|
||||
|
||||
if (!entry->dev_id || !entry->provider) {
|
||||
pr_warn("%s(): reset lookup entry badly specified, skipping\n",
|
||||
__func__);
|
||||
continue;
|
||||
}
|
||||
|
||||
list_add_tail(&entry->list, &reset_lookup_list);
|
||||
}
|
||||
mutex_unlock(&reset_lookup_mutex);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(reset_controller_add_lookup);
|
||||
|
||||
static inline struct reset_control_array *
|
||||
rstc_to_array(struct reset_control *rstc) {
|
||||
return container_of(rstc, struct reset_control_array, base);
|
||||
@@ -1081,75 +1051,12 @@ out_put:
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(__of_reset_control_get);
|
||||
|
||||
static struct reset_controller_dev *
|
||||
__reset_controller_by_name(const char *name)
|
||||
{
|
||||
struct reset_controller_dev *rcdev;
|
||||
|
||||
lockdep_assert_held(&reset_list_mutex);
|
||||
|
||||
list_for_each_entry(rcdev, &reset_controller_list, list) {
|
||||
if (!rcdev->dev)
|
||||
continue;
|
||||
|
||||
if (!strcmp(name, dev_name(rcdev->dev)))
|
||||
return rcdev;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static struct reset_control *
|
||||
__reset_control_get_from_lookup(struct device *dev, const char *con_id,
|
||||
enum reset_control_flags flags)
|
||||
{
|
||||
bool optional = flags & RESET_CONTROL_FLAGS_BIT_OPTIONAL;
|
||||
const struct reset_control_lookup *lookup;
|
||||
struct reset_controller_dev *rcdev;
|
||||
const char *dev_id = dev_name(dev);
|
||||
struct reset_control *rstc = NULL;
|
||||
|
||||
mutex_lock(&reset_lookup_mutex);
|
||||
|
||||
list_for_each_entry(lookup, &reset_lookup_list, list) {
|
||||
if (strcmp(lookup->dev_id, dev_id))
|
||||
continue;
|
||||
|
||||
if ((!con_id && !lookup->con_id) ||
|
||||
((con_id && lookup->con_id) &&
|
||||
!strcmp(con_id, lookup->con_id))) {
|
||||
mutex_lock(&reset_list_mutex);
|
||||
rcdev = __reset_controller_by_name(lookup->provider);
|
||||
if (!rcdev) {
|
||||
mutex_unlock(&reset_list_mutex);
|
||||
mutex_unlock(&reset_lookup_mutex);
|
||||
/* Reset provider may not be ready yet. */
|
||||
return ERR_PTR(-EPROBE_DEFER);
|
||||
}
|
||||
|
||||
flags &= ~RESET_CONTROL_FLAGS_BIT_OPTIONAL;
|
||||
|
||||
rstc = __reset_control_get_internal(rcdev,
|
||||
lookup->index,
|
||||
flags);
|
||||
mutex_unlock(&reset_list_mutex);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
mutex_unlock(&reset_lookup_mutex);
|
||||
|
||||
if (!rstc)
|
||||
return optional ? NULL : ERR_PTR(-ENOENT);
|
||||
|
||||
return rstc;
|
||||
}
|
||||
|
||||
struct reset_control *__reset_control_get(struct device *dev, const char *id,
|
||||
int index, enum reset_control_flags flags)
|
||||
{
|
||||
bool shared = flags & RESET_CONTROL_FLAGS_BIT_SHARED;
|
||||
bool acquired = flags & RESET_CONTROL_FLAGS_BIT_ACQUIRED;
|
||||
bool optional = flags & RESET_CONTROL_FLAGS_BIT_OPTIONAL;
|
||||
|
||||
if (WARN_ON(shared && acquired))
|
||||
return ERR_PTR(-EINVAL);
|
||||
@@ -1157,7 +1064,7 @@ struct reset_control *__reset_control_get(struct device *dev, const char *id,
|
||||
if (dev->of_node)
|
||||
return __of_reset_control_get(dev->of_node, id, index, flags);
|
||||
|
||||
return __reset_control_get_from_lookup(dev, id, flags);
|
||||
return optional ? NULL : ERR_PTR(-ENOENT);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(__reset_control_get);
|
||||
|
||||
@@ -1492,31 +1399,6 @@ devm_reset_control_array_get(struct device *dev, enum reset_control_flags flags)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(devm_reset_control_array_get);
|
||||
|
||||
static int reset_control_get_count_from_lookup(struct device *dev)
|
||||
{
|
||||
const struct reset_control_lookup *lookup;
|
||||
const char *dev_id;
|
||||
int count = 0;
|
||||
|
||||
if (!dev)
|
||||
return -EINVAL;
|
||||
|
||||
dev_id = dev_name(dev);
|
||||
mutex_lock(&reset_lookup_mutex);
|
||||
|
||||
list_for_each_entry(lookup, &reset_lookup_list, list) {
|
||||
if (!strcmp(lookup->dev_id, dev_id))
|
||||
count++;
|
||||
}
|
||||
|
||||
mutex_unlock(&reset_lookup_mutex);
|
||||
|
||||
if (count == 0)
|
||||
count = -ENOENT;
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
* reset_control_get_count - Count number of resets available with a device
|
||||
*
|
||||
@@ -1530,6 +1412,6 @@ int reset_control_get_count(struct device *dev)
|
||||
if (dev->of_node)
|
||||
return of_reset_control_get_count(dev->of_node);
|
||||
|
||||
return reset_control_get_count_from_lookup(dev);
|
||||
return -ENOENT;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(reset_control_get_count);
|
||||
|
||||
@@ -26,31 +26,6 @@ struct module;
|
||||
struct device_node;
|
||||
struct of_phandle_args;
|
||||
|
||||
/**
|
||||
* struct reset_control_lookup - represents a single lookup entry
|
||||
*
|
||||
* @list: internal list of all reset lookup entries
|
||||
* @provider: name of the reset controller device controlling this reset line
|
||||
* @index: ID of the reset controller in the reset controller device
|
||||
* @dev_id: name of the device associated with this reset line
|
||||
* @con_id: name of the reset line (can be NULL)
|
||||
*/
|
||||
struct reset_control_lookup {
|
||||
struct list_head list;
|
||||
const char *provider;
|
||||
unsigned int index;
|
||||
const char *dev_id;
|
||||
const char *con_id;
|
||||
};
|
||||
|
||||
#define RESET_LOOKUP(_provider, _index, _dev_id, _con_id) \
|
||||
{ \
|
||||
.provider = _provider, \
|
||||
.index = _index, \
|
||||
.dev_id = _dev_id, \
|
||||
.con_id = _con_id, \
|
||||
}
|
||||
|
||||
/**
|
||||
* struct reset_controller_dev - reset controller entity that might
|
||||
* provide multiple reset controls
|
||||
@@ -90,9 +65,6 @@ void reset_controller_unregister(struct reset_controller_dev *rcdev);
|
||||
struct device;
|
||||
int devm_reset_controller_register(struct device *dev,
|
||||
struct reset_controller_dev *rcdev);
|
||||
|
||||
void reset_controller_add_lookup(struct reset_control_lookup *lookup,
|
||||
unsigned int num_entries);
|
||||
#else
|
||||
static inline int reset_controller_register(struct reset_controller_dev *rcdev)
|
||||
{
|
||||
@@ -108,11 +80,6 @@ static inline int devm_reset_controller_register(struct device *dev,
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void reset_controller_add_lookup(struct reset_control_lookup *lookup,
|
||||
unsigned int num_entries)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user