Lines Matching +full:tx +full:- +full:slots

1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2003-2022, Intel Corporation. All rights reserved.
44 #define MEI_MAX_OPEN_HANDLE_COUNT (MEI_CLIENTS_MAX - 1)
71 * enum mei_dev_pxp_mode - MEI PXP mode state
86 * enum mei_dev_reset_to_pxp - reset to PXP mode performed
107 * enum mei_cb_file_ops - file operation associated with the callback
131 * enum mei_cl_io_mode - io mode between driver and fw
136 * @MEI_CL_IO_RX_NONBLOCK: recv is non-blocking
165 * struct mei_dma_dscr - dma address descriptor
184 * struct mei_fw_status - storage of FW status data
195 * struct mei_me_client - representation of me (fw) client
219 * struct mei_cl_cb - file operation callback structure
248 * struct mei_cl_vtag - file pointer to vtag mapping structure
263 * struct mei_cl - me client host representation
264 * carried in file->private_data
269 * @tx_wait: wait queue for tx completion
282 * @notify_en: notification - enabled/disabled
284 * @tx_cb_queued: number of tx callbacks in queue
285 * @writing_state: state of the tx
329 * struct mei_hw_ops - hw specific ops
349 * @hbuf_free_slots : query for write buffer empty slots
355 * @rdbuf_full_slots : query how many slots are filled
411 * enum mei_pg_event - power gating transition events
428 * enum mei_pg_state - device internal power gating state
430 * @MEI_PG_OFF: device is not power gated - it is active
431 * @MEI_PG_ON: device is power gated - it is in lower power state
441 * struct mei_fw_version - MEI FW version struct
471 * struct mei_device - MEI private device struct
481 * @tx_queue_limit: tx queues per client linit
509 * @dr_dscr: DMA ring descriptors: TX, RX, and CTRL
666 * mei_data2slots - get slots number from a message length
670 * Return: number of slots
678 * mei_hbm2slots - get slots number from a hbm message length
683 * Return: number of slots
691 * mei_slots2data - get data in slots - bytes from slots
693 * @slots: number of available slots
695 * Return: number of bytes in slots
697 static inline u32 mei_slots2data(int slots) in mei_slots2data() argument
699 return slots * MEI_SLOT_SIZE; in mei_slots2data()
732 struct list_head *cmpl_list, s32 *slots);
744 return dev->ops->hw_config(dev); in mei_hw_config()
749 return dev->ops->pg_state(dev); in mei_pg_state()
754 return dev->ops->pg_in_transition(dev); in mei_pg_in_transition()
759 return dev->ops->pg_is_enabled(dev); in mei_pg_is_enabled()
764 return dev->ops->hw_reset(dev, enable); in mei_hw_reset()
769 return dev->ops->hw_start(dev); in mei_hw_start()
774 dev->ops->intr_clear(dev); in mei_clear_interrupts()
779 dev->ops->intr_enable(dev); in mei_enable_interrupts()
784 dev->ops->intr_disable(dev); in mei_disable_interrupts()
789 dev->ops->synchronize_irq(dev); in mei_synchronize_irq()
794 return dev->ops->host_is_ready(dev); in mei_host_is_ready()
798 return dev->ops->hw_is_ready(dev); in mei_hw_is_ready()
803 return dev->ops->hbuf_is_ready(dev); in mei_hbuf_is_ready()
808 return dev->ops->hbuf_free_slots(dev); in mei_hbuf_empty_slots()
813 return dev->ops->hbuf_depth(dev); in mei_hbuf_depth()
820 return dev->ops->write(dev, hdr, hdr_len, data, data_len); in mei_write_message()
825 return dev->ops->read_hdr(dev); in mei_read_hdr()
831 dev->ops->read(dev, buf, len); in mei_read_slots()
836 return dev->ops->rdbuf_full_slots(dev); in mei_count_full_read_slots()
841 if (dev->ops->trc_status) in mei_trc_status()
842 return dev->ops->trc_status(dev, trc); in mei_trc_status()
843 return -EOPNOTSUPP; in mei_trc_status()
849 return dev->ops->fw_status(dev, fw_status); in mei_fw_status()
869 (hdr)->host_addr, (hdr)->me_addr, \
870 (hdr)->length, (hdr)->dma_ring, (hdr)->extended, \
871 (hdr)->internal, (hdr)->msg_complete
875 * mei_fw_status_str - fetch and convert fw status registers to printable string
901 * kind_is_gsc - checks whether the device is gsc
910 return dev->kind && (strcmp(dev->kind, "gsc") == 0); in kind_is_gsc()
914 * kind_is_gscfi - checks whether the device is gscfi
923 return dev->kind && (strcmp(dev->kind, "gscfi") == 0); in kind_is_gscfi()