me_cl 51 drivers/misc/mei/bus-fixup.c if (cldev->me_cl->props.max_number_of_connections > 1) me_cl 263 drivers/misc/mei/bus-fixup.c cldev->me_cl->props.protocol_version = 0x2; me_cl 406 drivers/misc/mei/bus-fixup.c struct mei_me_client *me_cl = NULL; me_cl 425 drivers/misc/mei/bus-fixup.c me_cl = mei_me_cl_by_uuid(bus, &mei_nfc_info_guid); me_cl 426 drivers/misc/mei/bus-fixup.c if (!me_cl) { me_cl 432 drivers/misc/mei/bus-fixup.c ret = mei_cl_connect(cl, me_cl, NULL); me_cl 467 drivers/misc/mei/bus-fixup.c mei_me_cl_put(me_cl); me_cl 499 drivers/misc/mei/bus-fixup.c const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl); me_cl 57 drivers/misc/mei/bus.c if (!mei_me_cl_is_active(cl->me_cl)) { me_cl 445 drivers/misc/mei/bus.c return mei_me_cl_uuid(cldev->me_cl); me_cl 458 drivers/misc/mei/bus.c return mei_me_cl_ver(cldev->me_cl); me_cl 528 drivers/misc/mei/bus.c if (!mei_me_cl_is_active(cldev->me_cl)) { me_cl 534 drivers/misc/mei/bus.c ret = mei_cl_connect(cl, cldev->me_cl, NULL); me_cl 626 drivers/misc/mei/bus.c uuid = mei_me_cl_uuid(cldev->me_cl); me_cl 627 drivers/misc/mei/bus.c version = mei_me_cl_ver(cldev->me_cl); me_cl 766 drivers/misc/mei/bus.c const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl); me_cl 776 drivers/misc/mei/bus.c u8 version = mei_me_cl_ver(cldev->me_cl); me_cl 786 drivers/misc/mei/bus.c const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl); me_cl 787 drivers/misc/mei/bus.c u8 version = mei_me_cl_ver(cldev->me_cl); me_cl 814 drivers/misc/mei/bus.c const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl); me_cl 815 drivers/misc/mei/bus.c u8 version = mei_me_cl_ver(cldev->me_cl); me_cl 863 drivers/misc/mei/bus.c mei_me_cl_put(cldev->me_cl); me_cl 885 drivers/misc/mei/bus.c mei_me_cl_uuid(cldev->me_cl)); me_cl 897 drivers/misc/mei/bus.c struct mei_me_client *me_cl) me_cl 917 drivers/misc/mei/bus.c cldev->me_cl = mei_me_cl_get(me_cl); me_cl 960 drivers/misc/mei/bus.c mei_me_cl_uuid(cldev->me_cl), me_cl 961 drivers/misc/mei/bus.c mei_me_cl_ver(cldev->me_cl)); me_cl 1040 drivers/misc/mei/bus.c struct mei_me_client *me_cl) me_cl 1046 drivers/misc/mei/bus.c dev_dbg(bus->dev, "initializing %pUl", mei_me_cl_uuid(me_cl)); me_cl 1048 drivers/misc/mei/bus.c if (me_cl->bus_added) me_cl 1051 drivers/misc/mei/bus.c cldev = mei_cl_bus_dev_alloc(bus, me_cl); me_cl 1055 drivers/misc/mei/bus.c me_cl->bus_added = true; me_cl 1069 drivers/misc/mei/bus.c struct mei_me_client *me_cl; me_cl 1074 drivers/misc/mei/bus.c list_for_each_entry(me_cl, &bus->me_clients, list) me_cl 1075 drivers/misc/mei/bus.c mei_cl_bus_dev_init(bus, me_cl); me_cl 1080 drivers/misc/mei/bus.c if (!mei_me_cl_is_active(cldev->me_cl)) { me_cl 24 drivers/misc/mei/client.c void mei_me_cl_init(struct mei_me_client *me_cl) me_cl 26 drivers/misc/mei/client.c INIT_LIST_HEAD(&me_cl->list); me_cl 27 drivers/misc/mei/client.c kref_init(&me_cl->refcnt); me_cl 39 drivers/misc/mei/client.c struct mei_me_client *mei_me_cl_get(struct mei_me_client *me_cl) me_cl 41 drivers/misc/mei/client.c if (me_cl && kref_get_unless_zero(&me_cl->refcnt)) me_cl 42 drivers/misc/mei/client.c return me_cl; me_cl 56 drivers/misc/mei/client.c struct mei_me_client *me_cl = me_cl 59 drivers/misc/mei/client.c kfree(me_cl); me_cl 69 drivers/misc/mei/client.c void mei_me_cl_put(struct mei_me_client *me_cl) me_cl 71 drivers/misc/mei/client.c if (me_cl) me_cl 72 drivers/misc/mei/client.c kref_put(&me_cl->refcnt, mei_me_cl_release); me_cl 84 drivers/misc/mei/client.c static void __mei_me_cl_del(struct mei_device *dev, struct mei_me_client *me_cl) me_cl 86 drivers/misc/mei/client.c if (!me_cl) me_cl 89 drivers/misc/mei/client.c list_del_init(&me_cl->list); me_cl 90 drivers/misc/mei/client.c mei_me_cl_put(me_cl); me_cl 100 drivers/misc/mei/client.c void mei_me_cl_del(struct mei_device *dev, struct mei_me_client *me_cl) me_cl 103 drivers/misc/mei/client.c __mei_me_cl_del(dev, me_cl); me_cl 113 drivers/misc/mei/client.c void mei_me_cl_add(struct mei_device *dev, struct mei_me_client *me_cl) me_cl 116 drivers/misc/mei/client.c list_add(&me_cl->list, &dev->me_clients); me_cl 134 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 139 drivers/misc/mei/client.c list_for_each_entry(me_cl, &dev->me_clients, list) { me_cl 140 drivers/misc/mei/client.c pn = &me_cl->props.protocol_name; me_cl 142 drivers/misc/mei/client.c return mei_me_cl_get(me_cl); me_cl 162 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 165 drivers/misc/mei/client.c me_cl = __mei_me_cl_by_uuid(dev, uuid); me_cl 168 drivers/misc/mei/client.c return me_cl; me_cl 185 drivers/misc/mei/client.c struct mei_me_client *__me_cl, *me_cl = NULL; me_cl 190 drivers/misc/mei/client.c me_cl = mei_me_cl_get(__me_cl); me_cl 196 drivers/misc/mei/client.c return me_cl; me_cl 214 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 219 drivers/misc/mei/client.c list_for_each_entry(me_cl, &dev->me_clients, list) { me_cl 220 drivers/misc/mei/client.c pn = &me_cl->props.protocol_name; me_cl 222 drivers/misc/mei/client.c me_cl->client_id == client_id) me_cl 223 drivers/misc/mei/client.c return mei_me_cl_get(me_cl); me_cl 243 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 246 drivers/misc/mei/client.c me_cl = __mei_me_cl_by_uuid_id(dev, uuid, client_id); me_cl 249 drivers/misc/mei/client.c return me_cl; me_cl 262 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 267 drivers/misc/mei/client.c me_cl = __mei_me_cl_by_uuid(dev, uuid); me_cl 268 drivers/misc/mei/client.c __mei_me_cl_del(dev, me_cl); me_cl 269 drivers/misc/mei/client.c mei_me_cl_put(me_cl); me_cl 284 drivers/misc/mei/client.c struct mei_me_client *me_cl; me_cl 289 drivers/misc/mei/client.c me_cl = __mei_me_cl_by_uuid_id(dev, uuid, id); me_cl 290 drivers/misc/mei/client.c __mei_me_cl_del(dev, me_cl); me_cl 291 drivers/misc/mei/client.c mei_me_cl_put(me_cl); me_cl 304 drivers/misc/mei/client.c struct mei_me_client *me_cl, *next; me_cl 307 drivers/misc/mei/client.c list_for_each_entry_safe(me_cl, next, &dev->me_clients, list) me_cl 308 drivers/misc/mei/client.c __mei_me_cl_del(dev, me_cl); me_cl 764 drivers/misc/mei/client.c if (!cl->me_cl) me_cl 767 drivers/misc/mei/client.c if (!WARN_ON(cl->me_cl->connect_count == 0)) me_cl 768 drivers/misc/mei/client.c cl->me_cl->connect_count--; me_cl 770 drivers/misc/mei/client.c if (cl->me_cl->connect_count == 0) me_cl 771 drivers/misc/mei/client.c cl->me_cl->tx_flow_ctrl_creds = 0; me_cl 773 drivers/misc/mei/client.c mei_me_cl_put(cl->me_cl); me_cl 774 drivers/misc/mei/client.c cl->me_cl = NULL; me_cl 777 drivers/misc/mei/client.c static int mei_cl_set_connecting(struct mei_cl *cl, struct mei_me_client *me_cl) me_cl 779 drivers/misc/mei/client.c if (!mei_me_cl_get(me_cl)) me_cl 783 drivers/misc/mei/client.c if (me_cl->props.fixed_address) { me_cl 784 drivers/misc/mei/client.c if (me_cl->connect_count) { me_cl 785 drivers/misc/mei/client.c mei_me_cl_put(me_cl); me_cl 790 drivers/misc/mei/client.c cl->me_cl = me_cl; me_cl 792 drivers/misc/mei/client.c cl->me_cl->connect_count++; me_cl 1065 drivers/misc/mei/client.c int mei_cl_connect(struct mei_cl *cl, struct mei_me_client *me_cl, me_cl 1072 drivers/misc/mei/client.c if (WARN_ON(!cl || !cl->dev || !me_cl)) me_cl 1077 drivers/misc/mei/client.c rets = mei_cl_set_connecting(cl, me_cl); me_cl 1185 drivers/misc/mei/client.c if (WARN_ON(!cl || !cl->me_cl)) me_cl 1195 drivers/misc/mei/client.c if (cl->me_cl->tx_flow_ctrl_creds > 0) me_cl 1213 drivers/misc/mei/client.c if (WARN_ON(!cl || !cl->me_cl)) me_cl 1220 drivers/misc/mei/client.c if (WARN_ON(cl->me_cl->tx_flow_ctrl_creds <= 0)) me_cl 1222 drivers/misc/mei/client.c cl->me_cl->tx_flow_ctrl_creds--; me_cl 1477 drivers/misc/mei/client.c if (!mei_me_cl_is_active(cl->me_cl)) { me_cl 19 drivers/misc/mei/client.h void mei_me_cl_init(struct mei_me_client *me_cl); me_cl 20 drivers/misc/mei/client.h void mei_me_cl_put(struct mei_me_client *me_cl); me_cl 21 drivers/misc/mei/client.h struct mei_me_client *mei_me_cl_get(struct mei_me_client *me_cl); me_cl 23 drivers/misc/mei/client.h void mei_me_cl_add(struct mei_device *dev, struct mei_me_client *me_cl); me_cl 24 drivers/misc/mei/client.h void mei_me_cl_del(struct mei_device *dev, struct mei_me_client *me_cl); me_cl 43 drivers/misc/mei/client.h static inline bool mei_me_cl_is_active(const struct mei_me_client *me_cl) me_cl 45 drivers/misc/mei/client.h return !list_empty_careful(&me_cl->list); me_cl 55 drivers/misc/mei/client.h static inline const uuid_le *mei_me_cl_uuid(const struct mei_me_client *me_cl) me_cl 57 drivers/misc/mei/client.h return &me_cl->props.protocol_name; me_cl 67 drivers/misc/mei/client.h static inline u8 mei_me_cl_ver(const struct mei_me_client *me_cl) me_cl 69 drivers/misc/mei/client.h return me_cl->props.protocol_version; me_cl 123 drivers/misc/mei/client.h return cl->me_cl ? cl->me_cl->client_id : 0; me_cl 135 drivers/misc/mei/client.h return cl->me_cl->props.max_msg_length; me_cl 147 drivers/misc/mei/client.h return cl->me_cl && cl->me_cl->props.fixed_address; me_cl 160 drivers/misc/mei/client.h return cl->me_cl->props.single_recv_buf; me_cl 172 drivers/misc/mei/client.h return mei_me_cl_uuid(cl->me_cl); me_cl 190 drivers/misc/mei/client.h int mei_cl_connect(struct mei_cl *cl, struct mei_me_client *me_cl, me_cl 22 drivers/misc/mei/debugfs.c struct mei_me_client *me_cl; me_cl 36 drivers/misc/mei/debugfs.c list_for_each_entry(me_cl, &dev->me_clients, list) { me_cl 37 drivers/misc/mei/debugfs.c if (!mei_me_cl_get(me_cl)) me_cl 41 drivers/misc/mei/debugfs.c i++, me_cl->client_id, me_cl 42 drivers/misc/mei/debugfs.c me_cl->props.fixed_address, me_cl 43 drivers/misc/mei/debugfs.c &me_cl->props.protocol_name, me_cl 44 drivers/misc/mei/debugfs.c me_cl->props.max_number_of_connections, me_cl 45 drivers/misc/mei/debugfs.c me_cl->props.max_msg_length, me_cl 46 drivers/misc/mei/debugfs.c me_cl->props.single_recv_buf, me_cl 47 drivers/misc/mei/debugfs.c kref_read(&me_cl->refcnt)); me_cl 48 drivers/misc/mei/debugfs.c mei_me_cl_put(me_cl); me_cl 378 drivers/misc/mei/hbm.c struct mei_me_client *me_cl; me_cl 383 drivers/misc/mei/hbm.c me_cl = kzalloc(sizeof(struct mei_me_client), GFP_KERNEL); me_cl 384 drivers/misc/mei/hbm.c if (!me_cl) me_cl 387 drivers/misc/mei/hbm.c mei_me_cl_init(me_cl); me_cl 389 drivers/misc/mei/hbm.c me_cl->props = res->client_properties; me_cl 390 drivers/misc/mei/hbm.c me_cl->client_id = res->me_addr; me_cl 391 drivers/misc/mei/hbm.c me_cl->tx_flow_ctrl_creds = 0; me_cl 393 drivers/misc/mei/hbm.c mei_me_cl_add(dev, me_cl); me_cl 699 drivers/misc/mei/hbm.c struct mei_me_client *me_cl; me_cl 702 drivers/misc/mei/hbm.c me_cl = mei_me_cl_by_id(dev, fctrl->me_addr); me_cl 703 drivers/misc/mei/hbm.c if (!me_cl) { me_cl 708 drivers/misc/mei/hbm.c if (WARN_ON(me_cl->props.single_recv_buf == 0)) { me_cl 713 drivers/misc/mei/hbm.c me_cl->tx_flow_ctrl_creds++; me_cl 715 drivers/misc/mei/hbm.c fctrl->me_addr, me_cl->tx_flow_ctrl_creds); me_cl 719 drivers/misc/mei/hbm.c mei_me_cl_put(me_cl); me_cl 840 drivers/misc/mei/hbm.c mei_me_cl_del(dev, cl->me_cl); me_cl 276 drivers/misc/mei/main.c if (!mei_me_cl_is_active(cl->me_cl)) { me_cl 347 drivers/misc/mei/main.c struct mei_me_client *me_cl; me_cl 362 drivers/misc/mei/main.c me_cl = mei_me_cl_by_uuid(dev, &data->in_client_uuid); me_cl 363 drivers/misc/mei/main.c if (!me_cl) { me_cl 370 drivers/misc/mei/main.c if (me_cl->props.fixed_address) { me_cl 382 drivers/misc/mei/main.c me_cl->client_id); me_cl 384 drivers/misc/mei/main.c me_cl->props.protocol_version); me_cl 386 drivers/misc/mei/main.c me_cl->props.max_msg_length); me_cl 390 drivers/misc/mei/main.c client->max_msg_length = me_cl->props.max_msg_length; me_cl 391 drivers/misc/mei/main.c client->protocol_version = me_cl->props.protocol_version; me_cl 394 drivers/misc/mei/main.c rets = mei_cl_connect(cl, me_cl, file); me_cl 397 drivers/misc/mei/main.c mei_me_cl_put(me_cl); me_cl 232 drivers/misc/mei/mei_dev.h struct mei_me_client *me_cl; me_cl 46 include/linux/mei_cl_bus.h struct mei_me_client *me_cl;