Skip to content

Commit

Permalink
media: cec: remove unused functions
Browse files Browse the repository at this point in the history
Remove several functions that are no longer used now that the
conversion of cec drivers to cec_notifier_conn_(un)register() and
cec_notifier_cec_adap_(un)register() is complete.

Signed-off-by: Hans Verkuil <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
  • Loading branch information
Hans Verkuil authored and mchehab committed Jan 8, 2020
1 parent bb6d420 commit e611164
Show file tree
Hide file tree
Showing 5 changed files with 4 additions and 129 deletions.
21 changes: 1 addition & 20 deletions drivers/media/cec/cec-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,24 +183,6 @@ static void cec_devnode_unregister(struct cec_adapter *adap)
put_device(&devnode->dev);
}

#ifdef CONFIG_CEC_NOTIFIER
static void cec_cec_notify(struct cec_adapter *adap, u16 pa)
{
cec_s_phys_addr(adap, pa, false);
}

void cec_register_cec_notifier(struct cec_adapter *adap,
struct cec_notifier *notifier)
{
if (WARN_ON(!cec_is_registered(adap)))
return;

adap->notifier = notifier;
cec_notifier_register(adap->notifier, adap, cec_cec_notify);
}
EXPORT_SYMBOL_GPL(cec_register_cec_notifier);
#endif

#ifdef CONFIG_DEBUG_FS
static ssize_t cec_error_inj_write(struct file *file,
const char __user *ubuf, size_t count, loff_t *ppos)
Expand Down Expand Up @@ -416,8 +398,7 @@ void cec_unregister_adapter(struct cec_adapter *adap)
#endif
debugfs_remove_recursive(adap->cec_dir);
#ifdef CONFIG_CEC_NOTIFIER
if (adap->notifier)
cec_notifier_unregister(adap->notifier);
cec_notifier_cec_adap_unregister(adap->notifier, adap);
#endif
cec_devnode_unregister(adap);
}
Expand Down
37 changes: 2 additions & 35 deletions drivers/media/cec/cec-notifier.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ struct cec_notifier {
struct cec_connector_info conn_info;
const char *conn_name;
struct cec_adapter *cec_adap;
void (*callback)(struct cec_adapter *adap, u16 pa);

u16 phys_addr;
};
Expand Down Expand Up @@ -81,13 +80,12 @@ static void cec_notifier_release(struct kref *kref)
kfree(n);
}

void cec_notifier_put(struct cec_notifier *n)
static void cec_notifier_put(struct cec_notifier *n)
{
mutex_lock(&cec_notifiers_lock);
kref_put(&n->kref, cec_notifier_release);
mutex_unlock(&cec_notifiers_lock);
}
EXPORT_SYMBOL_GPL(cec_notifier_put);

struct cec_notifier *
cec_notifier_conn_register(struct device *hdmi_dev, const char *conn_name,
Expand Down Expand Up @@ -162,7 +160,6 @@ void cec_notifier_cec_adap_unregister(struct cec_notifier *n,
mutex_lock(&n->lock);
adap->notifier = NULL;
n->cec_adap = NULL;
n->callback = NULL;
mutex_unlock(&n->lock);
cec_notifier_put(n);
}
Expand All @@ -175,9 +172,7 @@ void cec_notifier_set_phys_addr(struct cec_notifier *n, u16 pa)

mutex_lock(&n->lock);
n->phys_addr = pa;
if (n->callback)
n->callback(n->cec_adap, n->phys_addr);
else if (n->cec_adap)
if (n->cec_adap)
cec_s_phys_addr(n->cec_adap, n->phys_addr, false);
mutex_unlock(&n->lock);
}
Expand All @@ -198,34 +193,6 @@ void cec_notifier_set_phys_addr_from_edid(struct cec_notifier *n,
}
EXPORT_SYMBOL_GPL(cec_notifier_set_phys_addr_from_edid);

void cec_notifier_register(struct cec_notifier *n,
struct cec_adapter *adap,
void (*callback)(struct cec_adapter *adap, u16 pa))
{
kref_get(&n->kref);
mutex_lock(&n->lock);
n->cec_adap = adap;
n->callback = callback;
n->callback(adap, n->phys_addr);
mutex_unlock(&n->lock);
}
EXPORT_SYMBOL_GPL(cec_notifier_register);

void cec_notifier_unregister(struct cec_notifier *n)
{
/* Do nothing unless cec_notifier_register was called first */
if (!n->callback)
return;

mutex_lock(&n->lock);
n->callback = NULL;
n->cec_adap->notifier = NULL;
n->cec_adap = NULL;
mutex_unlock(&n->lock);
cec_notifier_put(n);
}
EXPORT_SYMBOL_GPL(cec_notifier_unregister);

struct device *cec_notifier_parse_hdmi_phandle(struct device *dev)
{
struct platform_device *hdmi_pdev;
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/cec/cec-priv.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#define _CEC_PRIV_H

#include <linux/cec-funcs.h>
#include <media/cec.h>
#include <media/cec-notifier.h>

#define dprintk(lvl, fmt, arg...) \
do { \
Expand Down
27 changes: 0 additions & 27 deletions include/media/cec-notifier.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,6 @@ struct cec_notifier;
struct cec_notifier *cec_notifier_get_conn(struct device *dev,
const char *conn);

/**
* cec_notifier_put - decrease refcount and delete when the refcount reaches 0.
* @n: notifier
*/
void cec_notifier_put(struct cec_notifier *n);

/**
* cec_notifier_conn_register - find or create a new cec_notifier for the given
* HDMI device and connector tuple.
Expand Down Expand Up @@ -138,10 +132,6 @@ static inline struct cec_notifier *cec_notifier_get_conn(struct device *dev,
return (struct cec_notifier *)0xdeadfeed;
}

static inline void cec_notifier_put(struct cec_notifier *n)
{
}

static inline struct cec_notifier *
cec_notifier_conn_register(struct device *hdmi_dev, const char *conn_name,
const struct cec_connector_info *conn_info)
Expand Down Expand Up @@ -183,23 +173,6 @@ static inline struct device *cec_notifier_parse_hdmi_phandle(struct device *dev)

#endif

/**
* cec_notifier_get - find or create a new cec_notifier for the given device.
* @dev: device that sends the events.
*
* If a notifier for device @dev already exists, then increase the refcount
* and return that notifier.
*
* If it doesn't exist, then allocate a new notifier struct and return a
* pointer to that new struct.
*
* Return NULL if the memory could not be allocated.
*/
static inline struct cec_notifier *cec_notifier_get(struct device *dev)
{
return cec_notifier_get_conn(dev, NULL);
}

/**
* cec_notifier_phys_addr_invalidate() - set the physical address to INVALID
*
Expand Down
46 changes: 0 additions & 46 deletions include/media/cec.h
Original file line number Diff line number Diff line change
Expand Up @@ -386,52 +386,6 @@ cec_fill_conn_info_from_drm(struct cec_connector_info *conn_info,

#endif

#if IS_REACHABLE(CONFIG_CEC_CORE) && IS_ENABLED(CONFIG_CEC_NOTIFIER)

/**
* cec_notifier_register - register a callback with the notifier
* @n: the CEC notifier
* @adap: the CEC adapter, passed as argument to the callback function
* @callback: the callback function
*/
void cec_notifier_register(struct cec_notifier *n,
struct cec_adapter *adap,
void (*callback)(struct cec_adapter *adap, u16 pa));

/**
* cec_notifier_unregister - unregister the callback from the notifier.
* @n: the CEC notifier
*/
void cec_notifier_unregister(struct cec_notifier *n);

/**
* cec_register_cec_notifier - register the notifier with the cec adapter.
* @adap: the CEC adapter
* @notifier: the CEC notifier
*/
void cec_register_cec_notifier(struct cec_adapter *adap,
struct cec_notifier *notifier);

#else

static inline void
cec_notifier_register(struct cec_notifier *n,
struct cec_adapter *adap,
void (*callback)(struct cec_adapter *adap, u16 pa))
{
}

static inline void cec_notifier_unregister(struct cec_notifier *n)
{
}

static inline void cec_register_cec_notifier(struct cec_adapter *adap,
struct cec_notifier *notifier)
{
}

#endif

/**
* cec_phys_addr_invalidate() - set the physical address to INVALID
*
Expand Down

0 comments on commit e611164

Please sign in to comment.