Lines Matching defs:ec_dev

119  * @ec_dev: CrOS EC MFD device.
135 struct cros_ec_device *ec_dev;
147 cros_ec_irq_thread(0, client_data->ec_dev);
325 client_data->ec_dev->last_event_time = timestamp;
416 * @ec_dev: CrOS EC MFD device.
424 static int prepare_cros_ec_rx(struct cros_ec_device *ec_dev,
433 rv = cros_ec_check_result(ec_dev, msg);
438 dev_err(ec_dev->dev, "Packet too long (%d bytes, expected %d)",
452 dev_dbg(ec_dev->dev, "Bad received packet checksum %d\n", sum);
459 static int cros_ec_pkt_xfer_ish(struct cros_ec_device *ec_dev,
463 struct ishtp_cl *cros_ish_cl = ec_dev->priv;
466 struct cros_ish_in_msg *in_msg = (struct cros_ish_in_msg *)ec_dev->din;
468 (struct cros_ish_out_msg *)ec_dev->dout;
473 if (in_size > ec_dev->din_size) {
475 "Incoming payload size %zu is too large for ec_dev->din_size %d\n",
476 in_size, ec_dev->din_size);
480 if (out_size > ec_dev->dout_size) {
482 "Outgoing payload size %zu is too large for ec_dev->dout_size %d\n",
483 out_size, ec_dev->dout_size);
498 ec_dev->dout += OUT_MSG_EC_REQUEST_PREAMBLE;
499 rv = cros_ec_prepare_tx(ec_dev, msg);
502 ec_dev->dout -= OUT_MSG_EC_REQUEST_PREAMBLE;
519 rv = prepare_cros_ec_rx(ec_dev, in_msg, msg);
543 struct cros_ec_device *ec_dev;
546 ec_dev = devm_kzalloc(dev, sizeof(*ec_dev), GFP_KERNEL);
547 if (!ec_dev)
550 client_data->ec_dev = ec_dev;
551 dev->driver_data = ec_dev;
553 ec_dev->dev = dev;
554 ec_dev->priv = client_data->cros_ish_cl;
555 ec_dev->cmd_xfer = NULL;
556 ec_dev->pkt_xfer = cros_ec_pkt_xfer_ish;
557 ec_dev->phys_name = dev_name(dev);
558 ec_dev->din_size = sizeof(struct cros_ish_in_msg) +
560 ec_dev->dout_size = sizeof(struct cros_ish_out_msg);
562 return cros_ec_register(ec_dev);
587 /* Refresh ec_dev device pointers */
588 client_data->ec_dev->priv = client_data->cros_ish_cl;
590 dev->driver_data = client_data->ec_dev;
706 return cros_ec_suspend(client_data->ec_dev);
721 return cros_ec_resume(client_data->ec_dev);