AM64x MCU+ SDK  08.02.00

Detailed Description

Set the clock parent.

Many IPs have a mux external to the IP that can select among different clock sources. The clock must be disabled (TISCI_MSG_VALUE_CLOCK_SW_STATE_UNREQ) for this message to succeed. If a set frequency command is not issued before the clock is enabled again, then the execution of the enable command will attempt to set the new parent to the old parent's frequency. If this fails, then the enable will fail.

Muxes that provide clocks to multiple devices are not currently configurable via this API.

Parameters
hdrTISCI header
deviceThe device ID that the clock is connected to.
clkEach device has its own set of clock inputs. This indexes which clock input to modify.

If the clock index is 255 or greater, this field should be set to 255 and the full value placed in the clk32 field. This is kept for backwards compatibility with older firmwares.

Parameters
clk32Stores the actual clock index if clk field is set to 255. This field is ignored otherwise. This field can hold the full range of possible clock indexes, but for compatibility with older firmwares should only be used when the index is 255 or greater.
parentThe new clock parent is selectable by an index via this parameter.

If the parent clock index is 255 or greater, this field should be set to 255 and the full value placed in the parent32 field. This is kept for backwards compatibility with older firmwares.

Parameters
parent32Stores the actual parent clock index if parent field is set to 255. This field is ignored otherwise. This field can hold the full range of possible parent clock indexes, but for compatibility with older firmwares should only be used when the index is 255 or greater.

Data Fields

struct tisci_header hdr
 
uint32_t device
 
uint8_t clk
 
uint8_t parent
 
uint32_t clk32
 
uint32_t parent32
 

Field Documentation

◆ hdr

struct tisci_header tisci_msg_set_clock_parent_req::hdr

◆ device

uint32_t tisci_msg_set_clock_parent_req::device

◆ clk

uint8_t tisci_msg_set_clock_parent_req::clk

◆ parent

uint8_t tisci_msg_set_clock_parent_req::parent

◆ clk32

uint32_t tisci_msg_set_clock_parent_req::clk32

◆ parent32

uint32_t tisci_msg_set_clock_parent_req::parent32