• Home
  • Raw
  • Download

Lines Matching +full:ref +full:- +full:clock +full:- +full:frequency

1 /* SPDX-License-Identifier: BSD-3-Clause */
9 * Copyright (C) 2015-2016 Texas Instruments Incorporated - https://www.ti.com/
28 /* Clock requests */
54 /* PSI-L requests */
83 * struct ti_sci_msg_hdr - Generic Message Header for All messages and responses
104 * struct ti_sci_msg_resp_version - Response for a message
126 * struct ti_sci_msg_req_reboot - Reboot the SoC
137 * struct ti_sci_msg_req_set_device_state - Set the desired state of the device
144 * + MSG_FLAG_DEVICE_WAKE_ENABLED - Configure the device to be a wake source.
148 * + MSG_FLAG_DEVICE_RESET_ISO - Enable reset isolation for this device.
149 * + MSG_FLAG_DEVICE_EXCLUSIVE - Claim this device exclusively. When passed
159 /* Additional hdr->flags options */
174 * struct ti_sci_msg_req_get_device_state - Request to get device.
187 * struct ti_sci_msg_resp_get_device_state - Response to get device request.
194 * - Uses the MSG_DEVICE_SW_* macros
211 * struct ti_sci_msg_req_set_device_resets - Set the desired resets
230 * struct ti_sci_msg_req_set_clock_state - Request to setup a Clock state
232 * MSG_FLAG_CLOCK_ALLOW_SSC: Allow this clock to be modified
234 * MSG_FLAG_CLOCK_ALLOW_FREQ_CHANGE: Allow this clock's
235 * frequency to be changed while it is running so long as it
238 * is only applicable to clock inputs on the SoC pseudo-device.
240 * @clk_id: Clock identifier for the device for this request.
241 * Each device has it's own set of clock inputs. This indexes
242 * which clock input to modify. Set to 255 if clock ID is
244 * @request_state: Request the state for the clock to be set to.
245 * MSG_CLOCK_SW_STATE_UNREQ: The IP does not require this clock,
248 * automatically manage the state of this clock. If the device
249 * is enabled, then the clock is enabled. If the device is set
250 * to off or retention, then the clock is internally set as not
252 * MSG_CLOCK_SW_STATE_REQ: Configure the clock to be enabled,
254 * @clk_id_32: Clock identifier for the device for this request.
255 * Only to be used if the clock ID is greater than or equal to
267 /* Additional hdr->flags options */
282 * struct ti_sci_msg_req_get_clock_state - Request for clock state
285 * @clk_id: Clock identifier for the device for this request.
286 * Each device has it's own set of clock inputs. This indexes
287 * which clock input to get state of. Set to 255 if the clock
289 * @clk_id_32: Clock identifier for the device for the request.
290 * Only to be used if the clock ID is greater than or equal to
294 * of the clock
304 * struct ti_sci_msg_resp_get_clock_state - Response to get clock state
306 * @programmed_state: Any programmed state of the clock. This is one of
308 * @current_state: Current state of the clock. This is one of:
309 * MSG_CLOCK_HW_STATE_NOT_READY: Clock is not ready
310 * MSG_CLOCK_HW_STATE_READY: Clock is ready
323 * struct ti_sci_msg_req_set_clock_parent - Set the clock parent
326 * @clk_id: Clock identifier for the device for this request.
327 * Each device has it's own set of clock inputs. This indexes
328 * which clock input to modify. Set to 255 if clock ID is
330 * @parent_id: The new clock parent is selectable by an index via this
331 * parameter. Set to 255 if clock ID is greater than or
333 * @clk_id_32: Clock identifier if @clk_id field is 255.
349 * struct ti_sci_msg_req_get_clock_parent - Get the clock parent
352 * @clk_id: Clock identifier for the device for this request.
353 * Each device has it's own set of clock inputs. This indexes
354 * which clock input to get the parent for. If this field
355 * contains 255, the actual clock identifier is stored in
357 * @clk_id_32: Clock identifier if the @clk_id field contains 255.
369 * struct ti_sci_msg_resp_get_clock_parent - Response with clock parent
371 * @parent_id: The current clock parent. If set to 255, the current parent
373 * @parent_id_32: Current clock parent if @parent_id field is set to
385 * struct ti_sci_msg_req_get_clock_num_parents - Request to get clock parents
388 * @clk_id: Clock identifier for the device for this request. Set to
389 * 255 if clock ID is greater than or equal to 255.
390 * @clk_id_32: Clock identifier if the @clk_id field contains 255.
392 * This request provides information about how many clock parent options
393 * are available for a given clock to a device. This is typically used
407 * struct ti_sci_msg_resp_get_clock_num_parents - Response for get clk parents
409 * @num_parents: Number of clock parents. If set to 255, the actual
412 * @num_parents_32: Number of clock parents if @num_parents field is
424 * struct ti_sci_msg_req_query_clock_freq - Request to query a frequency
427 * @min_freq_hz: The minimum allowable frequency in Hz. This is the minimum
428 * allowable programmed frequency and does not account for clock
430 * @target_freq_hz: The target clock frequency. A frequency will be found
431 * as close to this target frequency as possible.
432 * @max_freq_hz: The maximum allowable frequency in Hz. This is the maximum
433 * allowable programmed frequency and does not account for clock
435 * @clk_id: Clock identifier for the device for this request. Set to
436 * 255 if clock identifier is greater than or equal to 255.
437 * @clk_id_32: Clock identifier if @clk_id is set to 255.
439 * NOTE: Normally clock frequency management is automatically done by TISCI
441 * requested frequency within provided range and responds with
458 * struct ti_sci_msg_resp_query_clock_freq - Response to a clock frequency query
460 * @freq_hz: Frequency that is the best match in Hz.
471 * struct ti_sci_msg_req_set_clock_freq - Request to setup a clock frequency
474 * @min_freq_hz: The minimum allowable frequency in Hz. This is the minimum
475 * allowable programmed frequency and does not account for clock
477 * @target_freq_hz: The target clock frequency. The clock will be programmed
478 * at a rate as close to this target frequency as possible.
479 * @max_freq_hz: The maximum allowable frequency in Hz. This is the maximum
480 * allowable programmed frequency and does not account for clock
482 * @clk_id: Clock identifier for the device for this request. Set to
483 * 255 if clock ID is greater than or equal to 255.
484 * @clk_id_32: Clock identifier if @clk_id field is set to 255.
486 * NOTE: Normally clock frequency management is automatically done by TISCI
490 * This sets the desired frequency for a clock within an allowable
491 * range. This message will fail on an enabled clock unless
492 * MSG_FLAG_CLOCK_ALLOW_FREQ_CHANGE is set for the clock. Additionally,
493 * if other clocks have their frequency modified due to this message,
496 * Calling set frequency on a clock input to the SoC pseudo-device will
497 * inform the PMMC of that clock's frequency. Setting a frequency of
498 * zero will indicate the clock is disabled.
500 * Calling set frequency on clock outputs from the SoC pseudo-device will
501 * function similarly to setting the clock frequency on a device.
517 * struct ti_sci_msg_req_get_clock_freq - Request to get the clock frequency
520 * @clk_id: Clock identifier for the device for this request. Set to
521 * 255 if clock ID is greater than or equal to 255.
522 * @clk_id_32: Clock identifier if @clk_id field is set to 255.
524 * NOTE: Normally clock frequency management is automatically done by TISCI
525 * entity. In some cases, clock frequencies are configured by host.
527 * Request type is TI_SCI_MSG_GET_CLOCK_FREQ, responded with clock frequency
528 * that the clock is currently at.
538 * struct ti_sci_msg_resp_get_clock_freq - Response of clock frequency request
540 * @freq_hz: Frequency that the clock is currently on, in Hz.
552 * struct ti_sci_msg_req_get_resource_range - Request to get a host's assigned
575 * struct ti_sci_msg_resp_get_resource_range - Response to resource get range.
589 * struct ti_sci_msg_req_manage_irq - Request to configure/release the route
596 * 0 - Valid bit for @dst_id
597 * 1 - Valid bit for @dst_host_irq
598 * 2 - Valid bit for @ia_id
599 * 3 - Valid bit for @vint
600 * 4 - Valid bit for @global_event
601 * 5 - Valid bit for @vint_status_bit_index
602 * 31 - Valid bit for @secondary_host
645 * struct ti_sci_msg_rm_ring_cfg_req - Configure a Navigator Subsystem ring
647 * Configures the non-real-time registers of a Navigator Subsystem ring.
653 * 0 - Valid bit for @tisci_msg_rm_ring_cfg_req addr_lo
654 * 1 - Valid bit for @tisci_msg_rm_ring_cfg_req addr_hi
655 * 2 - Valid bit for @tisci_msg_rm_ring_cfg_req count
656 * 3 - Valid bit for @tisci_msg_rm_ring_cfg_req mode
657 * 4 - Valid bit for @tisci_msg_rm_ring_cfg_req size
658 * 5 - Valid bit for @tisci_msg_rm_ring_cfg_req order_id
669 * the formula (log2(size_bytes) - 2), where size_bytes cannot be
687 * struct ti_sci_msg_rm_ring_get_cfg_req - Get RA ring's configuration
689 * Gets the configuration of the non-real-time register fields of a ring. The
691 * host. The values of the non-real-time registers are returned in
705 * struct ti_sci_msg_rm_ring_get_cfg_resp - Ring get configuration response
709 * non-real-time register values.
730 * struct ti_sci_msg_psil_pair - Pairs a PSI-L source thread to a destination
733 * @nav_id: SoC Navigator Subsystem device ID whose PSI-L config proxy is
735 * @src_thread: PSI-L source thread ID within the PSI-L System thread map.
741 * @dst_thread: PSI-L destination thread ID within the PSI-L System thread map.
742 * PSI-L destination threads start at index 0x8000. The request is NACK'd if
760 * struct ti_sci_msg_psil_unpair - Unpairs a PSI-L source thread from a
763 * @nav_id: SoC Navigator Subsystem device ID whose PSI-L config proxy is
765 * @src_thread: PSI-L source thread ID within the PSI-L System thread map.
770 * @dst_thread: PSI-L destination thread ID within the PSI-L System thread map.
771 * PSI-L destination threads start at index 0x8000. The request is NACK'd if
788 * struct ti_sci_msg_udmap_rx_flow_cfg - UDMAP receive flow configuration
793 * @flow_index: UDMAP receive flow index for non-optional configuration.
804 * 0 - end of packet descriptor
805 * 1 - Beginning of the data buffer
852 * struct rm_ti_sci_msg_udmap_rx_flow_opt_cfg - parameters for UDMAP receive
887 * Configures the non-real-time registers of a Navigator Subsystem UDMAP
898 * 0 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_pause_on_err
899 * 1 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_atype
900 * 2 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_chan_type
901 * 3 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_fetch_size
902 * 4 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::txcq_qnum
903 * 5 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_priority
904 * 6 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_qos
905 * 7 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_orderid
906 * 8 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_sched_priority
907 * 9 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_filt_einfo
908 * 10 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_filt_pswords
909 * 11 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_supr_tdpkt
910 * 12 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_credit_count
911 * 13 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::fdepth
912 * 14 - Valid bit for @ref ti_sci_msg_rm_udmap_tx_ch_cfg::tx_burst_size
942 * @tx_fetch_size: UDMAP transmit channel number of 32-bit descriptor words to
1002 * Configures the non-real-time registers of a Navigator Subsystem UDMAP
1014 * 0 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_pause_on_err
1015 * 1 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_atype
1016 * 2 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_chan_type
1017 * 3 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_fetch_size
1018 * 4 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rxcq_qnum
1019 * 5 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_priority
1020 * 6 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_qos
1021 * 7 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_orderid
1022 * 8 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_sched_priority
1023 * 9 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::flowid_start
1024 * 10 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::flowid_cnt
1025 * 11 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_ignore_short
1026 * 12 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_ignore_long
1027 * 14 - Valid bit for @ti_sci_msg_rm_udmap_rx_ch_cfg_req::rx_burst_size
1033 * @rx_fetch_size: UDMAP receive channel number of 32-bit descriptor words to
1058 * make use of beyond the default flow. flowid_start and @ref flowid_cnt must be
1060 * @ref flowid_cnt must be a flow index within the Navigator Subsystem's subset
1068 * of legal flow IDs for the channel. @ref flowid_start and flowid_cnt must be
1071 * allocated and used by the receive channel. @ref flowid_start plus flowid_cnt
1122 * Configuration does not include the flow registers which handle size-based
1134 * 0 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_einfo_present
1135 * 1 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_psinfo_present
1136 * 2 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_error_handling
1137 * 3 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_desc_type
1138 * 4 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_sop_offset
1139 * 5 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_dest_qnum
1140 * 6 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_src_tag_hi
1141 * 7 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_src_tag_lo
1142 * 8 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_dest_tag_hi
1143 * 9 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_dest_tag_lo
1144 * 10 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_src_tag_hi_sel
1145 * 11 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_src_tag_lo_sel
1146 * 12 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_dest_tag_hi_sel
1147 * 13 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_dest_tag_lo_sel
1148 * 14 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_fdq0_sz0_qnum
1149 * 15 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_fdq1_sz0_qnum
1150 * 16 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_fdq2_sz0_qnum
1151 * 17 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_fdq3_sz0_qnum
1152 * 18 - Valid bit for @tisci_msg_rm_udmap_flow_cfg_req::rx_ps_location
1157 * @flow_index: UDMAP receive flow index for non-optional configuration.
1179 * this field are 0-255 bytes.
1291 * struct ti_sci_msg_req_proc_request - Request a processor
1304 * struct ti_sci_msg_req_proc_release - Release a processor
1317 * struct ti_sci_msg_req_proc_handover - Handover a processor to a host
1337 * struct ti_sci_msg_req_set_config - Set Processor boot configuration
1362 * struct ti_sci_msg_req_set_ctrl - Set Processor boot control flags
1383 * struct ti_sci_msg_req_get_status - Processor boot status request
1396 * struct ti_sci_msg_resp_get_status - Processor boot status response