IDR functions support associating an ID with a pointer. This is required if we need to access the controllers based on their ID. Cc: Rob Herring <robh@xxxxxxxxxx> Cc: Johan Hovold <johan@xxxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: Jiri Slaby <jslaby@xxxxxxxx> Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx> --- drivers/tty/serdev/core.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c index 3084b6d10179..6b24b0a74fbf 100644 --- a/drivers/tty/serdev/core.c +++ b/drivers/tty/serdev/core.c @@ -17,7 +17,7 @@ #include <linux/slab.h> static bool is_registered; -static DEFINE_IDA(ctrl_ida); +static DEFINE_IDR(ctrl_idr); static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -81,7 +81,7 @@ static bool is_serdev_device(const struct device *dev) static void serdev_ctrl_release(struct device *dev) { struct serdev_controller *ctrl = to_serdev_controller(dev); - ida_simple_remove(&ctrl_ida, ctrl->nr); + idr_remove(&ctrl_idr, ctrl->nr); kfree(ctrl); } @@ -500,7 +500,7 @@ struct serdev_controller *serdev_controller_alloc(struct device *parent, if (!ctrl) return NULL; - id = ida_simple_get(&ctrl_ida, 0, 0, GFP_KERNEL); + id = idr_alloc(&ctrl_idr, ctrl, 0, 0, GFP_KERNEL); if (id < 0) { dev_err(parent, "unable to allocate serdev controller identifier.\n"); -- 2.17.1 -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html