Lines Matching +full:master +full:- +full:mode

1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
2 /* Copyright(c) 2015-17 Intel Corporation. */
37 /* SDW Master Device Number, not supported yet */
85 * enum sdw_slave_status - Slave status
103 * @SDW_CLK_PRE_DEPREPARE: pre clock stop de-prepare
104 * @SDW_CLK_POST_DEPREPARE: post clock stop de-prepare
114 * enum sdw_command_response - Command response as defined by SDW spec
142 /* block packing mode enum */
173 * enum sdw_port_data_mode: Data Port mode
175 * @SDW_PORT_DATA_MODE_NORMAL: Normal data mode where audio data is received
177 * @SDW_PORT_DATA_MODE_PRBS: Test mode which uses a PRBS generator to produce
179 * @SDW_PORT_DATA_MODE_STATIC_0: Simple test mode which uses static value of
181 * @SDW_PORT_DATA_MODE_STATIC_1: Simple test mode which uses static value of
200 * enum sdw_p15_behave - Slave Port 15 behaviour when the Master attempts a
211 * enum sdw_dpn_type - Data port types
226 * enum sdw_clk_stop_mode - Clock Stop modes
229 * @SDW_CLK_STOP_MODE1: Slave may have entered a deeper power-saving mode,
238 * struct sdw_dp0_prop - DP0 properties
245 * @ch_prep_timeout: Port-specific timeout value, in milliseconds
250 * implementation-defined interrupts
272 * struct sdw_dpn_prop - Data Port DPn properties
283 * @ch_prep_timeout: Port-specific timeout value, in milliseconds
285 * implementation-defined interrupts
294 * @modes: SDW mode supported
298 * @block_pack_mode: Type of block port mode supported
330 * struct sdw_slave_prop - SoundWire Slave properties
335 * @wake_capable: Wake-up events are supported
336 * @test_mode_capable: If test mode is supported
337 * @clk_stop_mode1: Clock-Stop Mode 1 is supported
338 * @simple_clk_stop_capable: Simple clock mode is supported
339 * @clk_stop_timeout: Worst-case latency of the Clock Stop Prepare State
341 * @ch_prep_timeout: Worst-case latency of the Channel Prepare State Machine
344 * state machine (P=1 SCSP_SM) after exit from clock-stop mode1
351 * @p15_behave: Slave behavior when the Master attempts a read to the Port15
399 * struct sdw_master_prop - Master properties
404 * @clk_stop_modes: Bitmap, bit N set when clock-stop-modeN supported
414 * @mclk_freq: clock reference passed to SoundWire Master, in Hz.
415 * @hw_disabled: if true, the Master is not functional, typically due to pin-mux
435 /* Definitions for Master quirks */
449 * issues at the Master level.
466 * struct sdw_slave_id - Slave ID
489 * Helper macros to extract the MIPI-defined IDs
518 * struct sdw_slave_intr_status - Slave interrupt status
530 * sdw_reg_bank - SoundWire register banks
540 * struct sdw_prepare_ch: Prepare/De-prepare Data Port channel
544 * @prepare: Prepare (true) /de-prepare (false) channel
545 * @bank: Register bank, which bank Slave/Master driver should program for
583 * @s_data_mode: NORMAL, STATIC or PRBS mode for all Slave ports
584 * @m_data_mode: NORMAL, STATIC or PRBS mode for all Master ports. The value
609 * @clk_stop: handle imp-def sequences before and after prepare and de-prepare
623 enum sdw_clk_stop_mode mode,
628 * struct sdw_slave - SoundWire Slave
638 * @m_port_map: static Master port map for each Slave port
640 * @dev_num_sticky: one-time static Device Number assigned by Bus
647 * @unattach_request: mask field to keep track why the Slave re-attached and
648 * was re-initialized. This is useful to deal with potential race conditions
649 * between the Master suspending and the codec resuming, and make sure that
650 * when the Master triggered a reset the Slave is properly enumerated and
687 * struct sdw_master_device - SoundWire 'Master Device' representation
688 * @dev: Linux device for this Master
722 * SDW master structures and APIs
730 * @flow_mode: Port Data flow mode
731 * @data_mode: Test modes or normal mode
789 * struct sdw_master_port_ops: Callback functions from bus to Master
790 * driver to set Master Data ports.
792 * @dpn_set_port_params: Set the Port parameters for the Master Port.
794 * @dpn_set_port_transport_params: Set transport parameters for the Master
796 * @dpn_port_prep: Port prepare operations for the Master Data Port.
797 * @dpn_port_enable_ch: Enable the channels of Master Port.
814 * struct sdw_defer - SDW deferred message
826 * struct sdw_master_ops - Master driver ops
827 * @read_prop: Read Master properties
837 * @get_device_num: Callback for vendor-specific device_number allocation
838 * @put_device_num: Callback for vendor-specific device_number release
865 * sdw_port_config: Master or Slave Port configuration
876 * sdw_stream_config: Master or Slave stream configuration
900 * @SDW_STREAM_DEPREPARED: Stream de-prepared
933 * @m_rt_count: Count of Master runtime(s) in this stream
934 * @master_list: List of Master runtime(s) in this stream.
935 * master_list can contain only one m_rt per Master instance
948 * struct sdw_bus - SoundWire bus
949 * @dev: Shortcut to &bus->md->dev to avoid changing the entire code.
950 * @md: Master device
956 * @m_rt_list: List of Master instance of all stream(s) running on Bus. This
962 * @ops: Master callback ops
963 * @port_ops: Master port callback ops
964 * @prop: Master properties
965 * @vendor_specific_prop: pointer to non-standard properties
967 * hardware-based synchronization is required. This value is only
968 * meaningful if multi_link is set. If set to 1, hardware-based
971 * @controller_id: system-unique controller ID. If set to -1, the bus @id will be used.
973 * @id: bus system-wide unique id
1079 return -EINVAL; in sdw_stream_add_slave()
1086 return -EINVAL; in sdw_stream_remove_slave()
1093 return -EINVAL; in sdw_read()
1099 return -EINVAL; in sdw_write()
1105 return -EINVAL; in sdw_write_no_pm()
1111 return -EINVAL; in sdw_read_no_pm()
1117 return -EINVAL; in sdw_nread()
1123 return -EINVAL; in sdw_nread_no_pm()
1129 return -EINVAL; in sdw_nwrite()
1135 return -EINVAL; in sdw_nwrite_no_pm()
1141 return -EINVAL; in sdw_update()
1147 return -EINVAL; in sdw_update_no_pm()