Lines Matching refs:controller
125 * struct stratix10_svc_controller - service controller
157 * @ctrl: pointer to service controller which is the provider of this channel
163 * service client has its own channel created by service controller.
197 * @ctrl: pointer to service layer controller
243 * @ctrl: pointer to service layer controller
887 struct stratix10_svc_controller *controller;
896 controller = list_first_entry(&svc_ctrl,
899 if (!strcmp(controller->chans[i].name, name)) {
900 chan = &controller->chans[i];
911 if (chan->scl || !try_module_get(controller->dev->driver->owner)) {
1129 struct stratix10_svc_controller *controller;
1157 /* allocate service controller and supporting channel */
1158 controller = devm_kzalloc(dev, sizeof(*controller), GFP_KERNEL);
1159 if (!controller) {
1171 controller->dev = dev;
1172 controller->num_chans = SVC_NUM_CHANNEL;
1173 controller->num_active_client = 0;
1174 controller->chans = chans;
1175 controller->genpool = genpool;
1176 controller->task = NULL;
1177 controller->invoke_fn = invoke_fn;
1178 init_completion(&controller->complete_status);
1181 ret = kfifo_alloc(&controller->svc_fifo, fifo_size, GFP_KERNEL);
1186 spin_lock_init(&controller->svc_fifo_lock);
1189 chans[0].ctrl = controller;
1194 chans[1].ctrl = controller;
1199 chans[2].ctrl = controller;
1203 list_add_tail(&controller->node, &svc_ctrl);
1204 platform_set_drvdata(pdev, controller);
1248 kfifo_free(&controller->svc_fifo);