mei_cl_init(cl, dev);
 
-       ret = mei_cl_link(cl, MEI_IAMTHIF_HOST_CLIENT_ID);
+       ret = mei_cl_link(cl);
        if (ret < 0) {
                dev_err(dev->dev, "amthif: failed cl_link %d\n", ret);
                return ret;
 
 
        mutex_lock(&bus->device_lock);
        /* we need to connect to INFO GUID */
-       cl = mei_cl_alloc_linked(bus, MEI_HOST_CLIENT_ID_ANY);
+       cl = mei_cl_alloc_linked(bus);
        if (IS_ERR(cl)) {
                ret = PTR_ERR(cl);
                cl = NULL;
 
 
        if (!cl) {
                mutex_lock(&bus->device_lock);
-               cl = mei_cl_alloc_linked(bus, MEI_HOST_CLIENT_ID_ANY);
+               cl = mei_cl_alloc_linked(bus);
                mutex_unlock(&bus->device_lock);
                if (IS_ERR(cl))
                        return PTR_ERR(cl);
 
  * mei_cl_link - allocate host id in the host map
  *
  * @cl: host client
- * @id: fixed host id or MEI_HOST_CLIENT_ID_ANY (-1) for generic one
  *
  * Return: 0 on success
  *     -EINVAL on incorrect values
  *     -EMFILE if open count exceeded.
  */
-int mei_cl_link(struct mei_cl *cl, int id)
+int mei_cl_link(struct mei_cl *cl)
 {
        struct mei_device *dev;
        long open_handle_count;
+       int id;
 
        if (WARN_ON(!cl || !cl->dev))
                return -EINVAL;
 
        dev = cl->dev;
 
-       /* If Id is not assigned get one*/
-       if (id == MEI_HOST_CLIENT_ID_ANY)
-               id = find_first_zero_bit(dev->host_clients_map,
-                                       MEI_CLIENTS_MAX);
-
+       id = find_first_zero_bit(dev->host_clients_map, MEI_CLIENTS_MAX);
        if (id >= MEI_CLIENTS_MAX) {
                dev_err(dev->dev, "id exceeded %d", MEI_CLIENTS_MAX);
                return -EMFILE;
  * mei_cl_alloc_linked - allocate and link host client
  *
  * @dev: the device structure
- * @id: fixed host id or MEI_HOST_CLIENT_ID_ANY (-1) for generic one
  *
  * Return: cl on success ERR_PTR on failure
  */
-struct mei_cl *mei_cl_alloc_linked(struct mei_device *dev, int id)
+struct mei_cl *mei_cl_alloc_linked(struct mei_device *dev)
 {
        struct mei_cl *cl;
        int ret;
                goto err;
        }
 
-       ret = mei_cl_link(cl, id);
+       ret = mei_cl_link(cl);
        if (ret)
                goto err;
 
 
 void mei_cl_init(struct mei_cl *cl, struct mei_device *dev);
 
 
-int mei_cl_link(struct mei_cl *cl, int id);
+int mei_cl_link(struct mei_cl *cl);
 int mei_cl_unlink(struct mei_cl *cl);
 
-struct mei_cl *mei_cl_alloc_linked(struct mei_device *dev, int id);
+struct mei_cl *mei_cl_alloc_linked(struct mei_device *dev);
 
 struct mei_cl_cb *mei_cl_read_cb(const struct mei_cl *cl,
                                 const struct file *fp);
 
                goto err_unlock;
        }
 
-       cl = mei_cl_alloc_linked(dev, MEI_HOST_CLIENT_ID_ANY);
+       cl = mei_cl_alloc_linked(dev);
        if (IS_ERR(cl)) {
                err = PTR_ERR(cl);
                goto err_unlock;
 
  */
 #define  MEI_MAX_OPEN_HANDLE_COUNT (MEI_CLIENTS_MAX - 1)
 
-/*
- * Internal Clients Number
- */
-#define MEI_HOST_CLIENT_ID_ANY        (-1)
-#define MEI_HBM_HOST_CLIENT_ID         0 /* not used, just for documentation */
-#define MEI_IAMTHIF_HOST_CLIENT_ID     2
-
-
 /* File state */
 enum file_state {
        MEI_FILE_INITIALIZING = 0,