Lines Matching +full:blocking +full:- +full:io

1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2003-2019, Intel Corporation. All rights reserved.
39 #define MEI_MAX_OPEN_HANDLE_COUNT (MEI_CLIENTS_MAX - 1)
73 * enum mei_cb_file_ops - file operation associated with the callback
93 * enum mei_cl_io_mode - io mode between driver and fw
95 * @MEI_CL_IO_TX_BLOCKING: send is blocking
98 * @MEI_CL_IO_RX_NONBLOCK: recv is non-blocking
116 * struct mei_dma_dscr - dma address descriptor
135 * struct mei_fw_status - storage of FW status data
146 * struct mei_me_client - representation of me (fw) client
170 * struct mei_cl_cb - file operation callback structure
179 * @status: io status of the cb
181 * @blocking: transmission blocking mode
193 u32 blocking:1; member
197 * struct mei_cl_vtag - file pointer to vtag mapping structure
212 * struct mei_cl - me client host representation
213 * carried in file->private_data
231 * @notify_en: notification - enabled/disabled
274 * struct mei_hw_ops - hw specific ops
354 * enum mei_pg_event - power gating transition events
371 * enum mei_pg_state - device internal power gating state
373 * @MEI_PG_OFF: device is not power gated - it is active
374 * @MEI_PG_ON: device is power gated - it is in lower power state
384 * struct mei_fw_version - MEI FW version struct
403 * struct mei_device - MEI private device struct
576 * mei_data2slots - get slots number from a message length
588 * mei_hbm2slots - get slots number from a hbm message length
601 * mei_slots2data - get data in slots - bytes from slots
653 return dev->ops->hw_config(dev); in mei_hw_config()
658 return dev->ops->pg_state(dev); in mei_pg_state()
663 return dev->ops->pg_in_transition(dev); in mei_pg_in_transition()
668 return dev->ops->pg_is_enabled(dev); in mei_pg_is_enabled()
673 return dev->ops->hw_reset(dev, enable); in mei_hw_reset()
678 return dev->ops->hw_start(dev); in mei_hw_start()
683 dev->ops->intr_clear(dev); in mei_clear_interrupts()
688 dev->ops->intr_enable(dev); in mei_enable_interrupts()
693 dev->ops->intr_disable(dev); in mei_disable_interrupts()
698 dev->ops->synchronize_irq(dev); in mei_synchronize_irq()
703 return dev->ops->host_is_ready(dev); in mei_host_is_ready()
707 return dev->ops->hw_is_ready(dev); in mei_hw_is_ready()
712 return dev->ops->hbuf_is_ready(dev); in mei_hbuf_is_ready()
717 return dev->ops->hbuf_free_slots(dev); in mei_hbuf_empty_slots()
722 return dev->ops->hbuf_depth(dev); in mei_hbuf_depth()
729 return dev->ops->write(dev, hdr, hdr_len, data, data_len); in mei_write_message()
734 return dev->ops->read_hdr(dev); in mei_read_hdr()
740 dev->ops->read(dev, buf, len); in mei_read_slots()
745 return dev->ops->rdbuf_full_slots(dev); in mei_count_full_read_slots()
750 if (dev->ops->trc_status) in mei_trc_status()
751 return dev->ops->trc_status(dev, trc); in mei_trc_status()
752 return -EOPNOTSUPP; in mei_trc_status()
758 return dev->ops->fw_status(dev, fw_status); in mei_fw_status()
778 (hdr)->host_addr, (hdr)->me_addr, \
779 (hdr)->length, (hdr)->dma_ring, (hdr)->extended, \
780 (hdr)->internal, (hdr)->msg_complete
784 * mei_fw_status_str - fetch and convert fw status registers to printable string