fuchsia.hardware.clock

Added: 22

PROTOCOLS

Clock

Defined in fuchsia.hardware.clock/clock.fidl

Used for driver-to-driver communication.

Disable

Disables (gates) this clock. Drivers should call this method to indicate to the clock subsystem that a particular clock signal is no longer necessary. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support Disable Returns ZX_ERR_INTERNAL if the operation failed for any other reason.

Request

<EMPTY>

Response

NameType
payload Clock_Disable_Result

Enable

Enables (ungates) this clock. Drivers must call enable on all clocks they depend upon. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support Enable. Returns ZX_ERR_TIMED_OUT if an operation timed out (for instance, a PLL was unable to lock). Returns ZX_ERR_INTERNAL if the operation failed for any other reason.

Request

<EMPTY>

Response

NameType
payload Clock_Enable_Result

GetInput

Returns the index of the current input of this clock. GetInput shall not alter the state of the clock tree in any way. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support GetInput.

Request

<EMPTY>

Response

NameType
payload Clock_GetInput_Result

GetNumInputs

Returns the number of inputs this clock has. Any value between 0 and UINT32_MAX is a valid return for this method. A Root Oscillator may return 0 for instance, if it has no inputs. GetNumInputs shall not alter the state of the clock tree in any way. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support GetNumInputs.

Request

<EMPTY>

Response

NameType
payload Clock_GetNumInputs_Result

GetRate

Returns the current rate that a given clock is running at. GetRate shall not alter the state of the clock tree in any way. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support GetRate .

Request

<EMPTY>

Response

NameType
payload Clock_GetRate_Result

IsEnabled

Returns true if a given clock is running. May query the hardware or return a cached value. IsEnabled shall not alter the state of the clock tree in any way. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support IsEnabled.

Request

<EMPTY>

Response

NameType
payload Clock_IsEnabled_Result

QuerySupportedRate

Query the hardware for the highest supported rate that does not exceed hz_in. QuerySupportedRate shall not alter the state of the clock tree in any way. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support QuerySupportedRate.

Request

NameType
hz_in uint64

Response

NameType
payload Clock_QuerySupportedRate_Result

SetInput

Sets the input of this clock by index. I.e. by selecting a mux. This clock has N inputs defined 0 through N-1, which are valid arguemts as the index to SetInput. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support SetInput Returns ZX_ERR_OUT_OF_RANGE if idx is outside of the range supplied by GetNumInputs. Returns ZX_ERR_INTERNAL if the operation failed for any other reason.

Request

NameType
idx uint32

Response

NameType
payload Clock_SetInput_Result

SetRate

Attempt to set the rate of the clock provider. Returns ZX_ERR_NOT_SUPPORTED if this clock type does not support SetRate Returns ZX_ERR_INVALID_ARGS if the requested rate is not one that is reported as supported by QuerySupportedRate. Returns ZX_ERR_TIMED_OUT if an operation timed out (for instance, a PLL was unable to lock). Returns ZX_ERR_INTERNAL if the operation failed for any other reason.

Request

NameType
hz uint64

Response

NameType
payload Clock_SetRate_Result

STRUCTS

Clock_Disable_Response

Defined in fuchsia.hardware.clock/clock.fidl

<EMPTY>

Clock_Enable_Response

Defined in fuchsia.hardware.clock/clock.fidl

<EMPTY>

Clock_GetInput_Response

Defined in fuchsia.hardware.clock/clock.fidl

FieldTypeDescriptionDefault
index uint32 No default

Clock_GetNumInputs_Response

Defined in fuchsia.hardware.clock/clock.fidl

FieldTypeDescriptionDefault
n uint32 No default

Clock_GetRate_Response

Defined in fuchsia.hardware.clock/clock.fidl

FieldTypeDescriptionDefault
hz uint64 No default

Clock_IsEnabled_Response

Defined in fuchsia.hardware.clock/clock.fidl

FieldTypeDescriptionDefault
enabled bool No default

Clock_QuerySupportedRate_Response

Defined in fuchsia.hardware.clock/clock.fidl

FieldTypeDescriptionDefault
hz_out uint64 No default

Clock_SetInput_Response

Defined in fuchsia.hardware.clock/clock.fidl

<EMPTY>

Clock_SetRate_Response

Defined in fuchsia.hardware.clock/clock.fidl

<EMPTY>

UNIONS

Clock_Disable_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_Disable_Response
err zx/Status
framework_err internal

Clock_Enable_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_Enable_Response
err zx/Status
framework_err internal

Clock_GetInput_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_GetInput_Response
err zx/Status
framework_err internal

Clock_GetNumInputs_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_GetNumInputs_Response
err zx/Status
framework_err internal

Clock_GetRate_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_GetRate_Response
err zx/Status
framework_err internal

Clock_IsEnabled_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_IsEnabled_Response
err zx/Status
framework_err internal

Clock_QuerySupportedRate_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_QuerySupportedRate_Response
err zx/Status
framework_err internal

Clock_SetInput_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_SetInput_Response
err zx/Status
framework_err internal

Clock_SetRate_Result strict

Defined in fuchsia.hardware.clock/clock.fidl

OrdinalVariantTypeDescription
response Clock_SetRate_Response
err zx/Status
framework_err internal

SERVICES

Service

Defined in fuchsia.hardware.clock/clock.fidl

NameTypeTransport
clock fuchsia.hardware.clock/Clock Channel