af85d689ae
The Message Signaled Interrupts (MSI) support has been introduced in UFSHCI version 4.0 (JESD223E). The MSI is the recommended interrupt approach for MCQ. If choose to use MSI, in UFS DT, we need to provide msi-parent property that point to the hardware entity which serves as the MSI controller for this UFS controller. Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Ziqi Chen <quic_ziqichen@quicinc.com> Link: https://lore.kernel.org/r/1701144469-1018-1-git-send-email-quic_ziqichen@quicinc.com Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
114 lines
2.9 KiB
YAML
114 lines
2.9 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/ufs/ufs-common.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Common properties for Universal Flash Storage (UFS) Host Controllers
|
|
|
|
maintainers:
|
|
- Alim Akhtar <alim.akhtar@samsung.com>
|
|
- Avri Altman <avri.altman@wdc.com>
|
|
|
|
properties:
|
|
clocks: true
|
|
|
|
clock-names: true
|
|
|
|
freq-table-hz:
|
|
items:
|
|
items:
|
|
- description: Minimum frequency for given clock in Hz
|
|
- description: Maximum frequency for given clock in Hz
|
|
deprecated: true
|
|
description: |
|
|
Preferred is operating-points-v2.
|
|
|
|
Array of <min max> operating frequencies in Hz stored in the same order
|
|
as the clocks property. If either this property or operating-points-v2 is
|
|
not defined or a value in the array is "0" then it is assumed that the
|
|
frequency is set by the parent clock or a fixed rate clock source.
|
|
|
|
operating-points-v2:
|
|
description:
|
|
Preferred over freq-table-hz.
|
|
If present, each OPP must contain array of frequencies stored in the same
|
|
order for each clock. If clock frequency in the array is "0" then it is
|
|
assumed that the frequency is set by the parent clock or a fixed rate
|
|
clock source.
|
|
|
|
opp-table:
|
|
type: object
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
lanes-per-direction:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
enum: [1, 2]
|
|
default: 2
|
|
description:
|
|
Number of lanes available per direction. Note that it is assume same
|
|
number of lanes is used both directions at once.
|
|
|
|
vdd-hba-supply:
|
|
description:
|
|
Phandle to UFS host controller supply regulator node.
|
|
|
|
vcc-supply:
|
|
description:
|
|
Phandle to VCC supply regulator node.
|
|
|
|
vccq-supply:
|
|
description:
|
|
Phandle to VCCQ supply regulator node.
|
|
|
|
vccq2-supply:
|
|
description:
|
|
Phandle to VCCQ2 supply regulator node.
|
|
|
|
vcc-supply-1p8:
|
|
type: boolean
|
|
description:
|
|
For embedded UFS devices, valid VCC range is 1.7-1.95V or 2.7-3.6V. This
|
|
boolean property when set, specifies to use low voltage range of
|
|
1.7-1.95V. Note for external UFS cards this property is invalid and valid
|
|
VCC range is always 2.7-3.6V.
|
|
|
|
vcc-max-microamp:
|
|
description:
|
|
Specifies max. load that can be drawn from VCC supply.
|
|
|
|
vccq-max-microamp:
|
|
description:
|
|
Specifies max. load that can be drawn from VCCQ supply.
|
|
|
|
vccq2-max-microamp:
|
|
description:
|
|
Specifies max. load that can be drawn from VCCQ2 supply.
|
|
|
|
msi-parent: true
|
|
|
|
dependencies:
|
|
freq-table-hz: [ clocks ]
|
|
operating-points-v2: [ clocks, clock-names ]
|
|
|
|
required:
|
|
- interrupts
|
|
|
|
allOf:
|
|
- if:
|
|
required:
|
|
- freq-table-hz
|
|
then:
|
|
properties:
|
|
operating-points-v2: false
|
|
- if:
|
|
required:
|
|
- operating-points-v2
|
|
then:
|
|
properties:
|
|
freq-table-hz: false
|
|
|
|
additionalProperties: true
|