Message ID | 20250103060035.30688-2-jianjun.wang@mediatek.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | PCI: mediatek-gen3: Add MT8196 support | expand |
On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > + clock-names: > + items: > + - const: pl_250m > + - const: tl_26m > + - const: peri_26m > + - const: peri_mem > + - const: ahb_apb > + - const: low_power > + > + resets: > + minItems: 1 > + maxItems: 2 > + > + reset-names: > + minItems: 1 > + maxItems: 2 Why resets are flexible? Best regards, Krzysztof
Il 03/01/25 07:00, Jianjun Wang ha scritto: > Add compatible string and clock definition for MT8196. It has 6 clocks like > the MT8195, but 2 of them are different. > > Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com> > --- > .../bindings/pci/mediatek-pcie-gen3.yaml | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml > index f05aab2b1add..b4158a666fb6 100644 > --- a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml > +++ b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml > @@ -51,6 +51,7 @@ properties: > - mediatek,mt7986-pcie > - mediatek,mt8188-pcie > - mediatek,mt8195-pcie > + - mediatek,mt8196-pcie > - const: mediatek,mt8192-pcie > - const: mediatek,mt8192-pcie > - const: airoha,en7581-pcie > @@ -197,6 +198,34 @@ allOf: > minItems: 1 > maxItems: 2 > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - mediatek,mt8196-pcie > + then: > + properties: > + clocks: > + minItems: 6 > + > + clock-names: > + items: > + - const: pl_250m > + - const: tl_26m > + - const: peri_26m > + - const: peri_mem > + - const: ahb_apb ahb_apb is a bus clock, so you can set it as - const: bus > + - const: low_power Can you please clarify what the LP clock is for? Thanks, Angelo > + > + resets: > + minItems: 1 > + maxItems: 2 > + > + reset-names: > + minItems: 1 > + maxItems: 2 > + > - if: > properties: > compatible:
On Fri, 2025-01-03 at 10:26 +0100, AngeloGioacchino Del Regno wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > Il 03/01/25 07:00, Jianjun Wang ha scritto: > > Add compatible string and clock definition for MT8196. It has 6 > > clocks like > > the MT8195, but 2 of them are different. > > > > Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com> > > --- > > .../bindings/pci/mediatek-pcie-gen3.yaml | 29 > > +++++++++++++++++++ > > 1 file changed, 29 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/pci/mediatek-pcie- > > gen3.yaml b/Documentation/devicetree/bindings/pci/mediatek-pcie- > > gen3.yaml > > index f05aab2b1add..b4158a666fb6 100644 > > --- a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml > > +++ b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml > > @@ -51,6 +51,7 @@ properties: > > - mediatek,mt7986-pcie > > - mediatek,mt8188-pcie > > - mediatek,mt8195-pcie > > + - mediatek,mt8196-pcie > > - const: mediatek,mt8192-pcie > > - const: mediatek,mt8192-pcie > > - const: airoha,en7581-pcie > > @@ -197,6 +198,34 @@ allOf: > > minItems: 1 > > maxItems: 2 > > > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - mediatek,mt8196-pcie > > + then: > > + properties: > > + clocks: > > + minItems: 6 > > + > > + clock-names: > > + items: > > + - const: pl_250m > > + - const: tl_26m > > + - const: peri_26m > > + - const: peri_mem > > + - const: ahb_apb > > ahb_apb is a bus clock, so you can set it as > > - const: bus Agree, I'll change it to "bus" in the next version, thanks. > > > > + - const: low_power > > Can you please clarify what the LP clock is for? This is a power-saving clock. Its clock source consumes less power than a regular clock, we need to keep this clock on if when entering L1.2 during suspend. Thanks. > > Thanks, > Angelo > > > + > > + resets: > > + minItems: 1 > > + maxItems: 2 > > + > > + reset-names: > > + minItems: 1 > > + maxItems: 2 > > + > > - if: > > properties: > > compatible: > >
On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > > + clock-names: > > + items: > > + - const: pl_250m > > + - const: tl_26m > > + - const: peri_26m > > + - const: peri_mem > > + - const: ahb_apb > > + - const: low_power > > + > > + resets: > > + minItems: 1 > > + maxItems: 2 > > + > > + reset-names: > > + minItems: 1 > > + maxItems: 2 > > Why resets are flexible? There are two resets, one for MAC and another for PHY, some platforms may only use one of them. Would you prefer to set the number of resets to a fixed value for specific platforms? Thanks. > > Best regards, > Krzysztof > >
On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: > On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: >> External email : Please do not click links or open attachments until >> you have verified the sender or the content. >> >> >> On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: >>> + clock-names: >>> + items: >>> + - const: pl_250m >>> + - const: tl_26m >>> + - const: peri_26m >>> + - const: peri_mem >>> + - const: ahb_apb >>> + - const: low_power >>> + >>> + resets: >>> + minItems: 1 >>> + maxItems: 2 >>> + >>> + reset-names: >>> + minItems: 1 >>> + maxItems: 2 >> >> Why resets are flexible? > > There are two resets, one for MAC and another for PHY, some platforms > may only use one of them. Even more questions. What does it mean use? Is it there or is it not? Platform like SoC? But this is one specific SoC, it cannot be used on different SoC. > > Would you prefer to set the number of resets to a fixed value for > specific platforms? Everything should be constrained to match hardware. Best regards, Krzysztof
On Mon, 2025-01-06 at 13:27 +0100, Krzysztof Kozlowski wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: > > On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: > > > External email : Please do not click links or open attachments > > > until > > > you have verified the sender or the content. > > > > > > > > > On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > > > > + clock-names: > > > > + items: > > > > + - const: pl_250m > > > > + - const: tl_26m > > > > + - const: peri_26m > > > > + - const: peri_mem > > > > + - const: ahb_apb > > > > + - const: low_power > > > > + > > > > + resets: > > > > + minItems: 1 > > > > + maxItems: 2 > > > > + > > > > + reset-names: > > > > + minItems: 1 > > > > + maxItems: 2 > > > > > > Why resets are flexible? > > > > There are two resets, one for MAC and another for PHY, some > > platforms > > may only use one of them. > > Even more questions. What does it mean use? Is it there or is it not? It will be used by calling the reset controller's APIs in the PCIe controller driver. Ideally, it should be de-asserted before PCIe initialization and should be asserted if PCIe powers down or the driver is removed. > Platform like SoC? But this is one specific SoC, it cannot be used on > different SoC. Yes, it should be SoC, each SoC have its own resets, and the number of resets for each SoC is defined by the hardware design, most SoCs should have one reset for MAC and one reset for PHY. > > > > > Would you prefer to set the number of resets to a fixed value for > > specific platforms? > > Everything should be constrained to match hardware. For MT8196, there are 2 resets. Should I use a fixed item in this case? Thanks. > > > Best regards, > Krzysztof >
On Tue, Jan 7, 2025 at 4:45 PM Jianjun Wang (王建军) <Jianjun.Wang@mediatek.com> wrote: > > On Mon, 2025-01-06 at 13:27 +0100, Krzysztof Kozlowski wrote: > > External email : Please do not click links or open attachments until > > you have verified the sender or the content. > > > > > > On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: > > > On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: > > > > External email : Please do not click links or open attachments > > > > until > > > > you have verified the sender or the content. > > > > > > > > > > > > On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > > > > > + clock-names: > > > > > + items: > > > > > + - const: pl_250m > > > > > + - const: tl_26m > > > > > + - const: peri_26m > > > > > + - const: peri_mem > > > > > + - const: ahb_apb > > > > > + - const: low_power > > > > > + > > > > > + resets: > > > > > + minItems: 1 > > > > > + maxItems: 2 > > > > > + > > > > > + reset-names: > > > > > + minItems: 1 > > > > > + maxItems: 2 > > > > > > > > Why resets are flexible? > > > > > > There are two resets, one for MAC and another for PHY, some > > > platforms > > > may only use one of them. > > > > Even more questions. What does it mean use? Is it there or is it not? > > It will be used by calling the reset controller's APIs in the PCIe > controller driver. Ideally, it should be de-asserted before PCIe > initialization and should be asserted if PCIe powers down or the driver > is removed. > > > Platform like SoC? But this is one specific SoC, it cannot be used on > > different SoC. > > Yes, it should be SoC, each SoC have its own resets, and the number of > resets for each SoC is defined by the hardware design, most SoCs should > have one reset for MAC and one reset for PHY. > > > > > > > > > Would you prefer to set the number of resets to a fixed value for > > > specific platforms? > > > > Everything should be constrained to match hardware. > > For MT8196, there are 2 resets. Should I use a fixed item in this case? Yes. As you said, MT8196 has two resets, therefore the binding should say it requires two resets. So in the second part where it matches against mt8196, you should have minItems = maxItems = 2. ChenYu > Thanks. > > > > > > > Best regards, > > Krzysztof > >
Il 06/01/25 10:19, Jianjun Wang (王建军) ha scritto: > On Fri, 2025-01-03 at 10:26 +0100, AngeloGioacchino Del Regno wrote: >> External email : Please do not click links or open attachments until >> you have verified the sender or the content. >> >> >> Il 03/01/25 07:00, Jianjun Wang ha scritto: >>> Add compatible string and clock definition for MT8196. It has 6 >>> clocks like >>> the MT8195, but 2 of them are different. >>> >>> Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com> >>> --- >>> .../bindings/pci/mediatek-pcie-gen3.yaml | 29 >>> +++++++++++++++++++ >>> 1 file changed, 29 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/pci/mediatek-pcie- >>> gen3.yaml b/Documentation/devicetree/bindings/pci/mediatek-pcie- >>> gen3.yaml >>> index f05aab2b1add..b4158a666fb6 100644 >>> --- a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml >>> +++ b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml >>> @@ -51,6 +51,7 @@ properties: >>> - mediatek,mt7986-pcie >>> - mediatek,mt8188-pcie >>> - mediatek,mt8195-pcie >>> + - mediatek,mt8196-pcie >>> - const: mediatek,mt8192-pcie >>> - const: mediatek,mt8192-pcie >>> - const: airoha,en7581-pcie >>> @@ -197,6 +198,34 @@ allOf: >>> minItems: 1 >>> maxItems: 2 >>> >>> + - if: >>> + properties: >>> + compatible: >>> + contains: >>> + enum: >>> + - mediatek,mt8196-pcie >>> + then: >>> + properties: >>> + clocks: >>> + minItems: 6 >>> + >>> + clock-names: >>> + items: >>> + - const: pl_250m >>> + - const: tl_26m >>> + - const: peri_26m >>> + - const: peri_mem >>> + - const: ahb_apb >> >> ahb_apb is a bus clock, so you can set it as >> >> - const: bus > > Agree, I'll change it to "bus" in the next version, thanks. > >> >> >>> + - const: low_power >> >> Can you please clarify what the LP clock is for? > > This is a power-saving clock. Its clock source consumes less power than > a regular clock, we need to keep this clock on if when entering L1.2 > during suspend. > In the driver, you are keeping all clocks ON instead. Is this clock required to be ON when the full power ones are enabled and the SoC is not in suspend state? Can you please add handling for this "special" clock so that we can save power during suspend? Cheers, Angelo > Thanks. > >> >> Thanks, >> Angelo >> >>> + >>> + resets: >>> + minItems: 1 >>> + maxItems: 2 >>> + >>> + reset-names: >>> + minItems: 1 >>> + maxItems: 2 >>> + >>> - if: >>> properties: >>> compatible: >> >>
On Tue, 2025-01-07 at 17:02 +0800, Chen-Yu Tsai wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > On Tue, Jan 7, 2025 at 4:45 PM Jianjun Wang (王建军) > <Jianjun.Wang@mediatek.com> wrote: > > > > On Mon, 2025-01-06 at 13:27 +0100, Krzysztof Kozlowski wrote: > > > External email : Please do not click links or open attachments > > > until > > > you have verified the sender or the content. > > > > > > > > > On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: > > > > On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: > > > > > External email : Please do not click links or open > > > > > attachments > > > > > until > > > > > you have verified the sender or the content. > > > > > > > > > > > > > > > On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > > > > > > + clock-names: > > > > > > + items: > > > > > > + - const: pl_250m > > > > > > + - const: tl_26m > > > > > > + - const: peri_26m > > > > > > + - const: peri_mem > > > > > > + - const: ahb_apb > > > > > > + - const: low_power > > > > > > + > > > > > > + resets: > > > > > > + minItems: 1 > > > > > > + maxItems: 2 > > > > > > + > > > > > > + reset-names: > > > > > > + minItems: 1 > > > > > > + maxItems: 2 > > > > > > > > > > Why resets are flexible? > > > > > > > > There are two resets, one for MAC and another for PHY, some > > > > platforms > > > > may only use one of them. > > > > > > Even more questions. What does it mean use? Is it there or is it > > > not? > > > > It will be used by calling the reset controller's APIs in the PCIe > > controller driver. Ideally, it should be de-asserted before PCIe > > initialization and should be asserted if PCIe powers down or the > > driver > > is removed. > > > > > Platform like SoC? But this is one specific SoC, it cannot be > > > used on > > > different SoC. > > > > Yes, it should be SoC, each SoC have its own resets, and the number > > of > > resets for each SoC is defined by the hardware design, most SoCs > > should > > have one reset for MAC and one reset for PHY. > > > > > > > > > > > > > Would you prefer to set the number of resets to a fixed value > > > > for > > > > specific platforms? > > > > > > Everything should be constrained to match hardware. > > > > For MT8196, there are 2 resets. Should I use a fixed item in this > > case? > > Yes. As you said, MT8196 has two resets, therefore the binding should > say it requires two resets. > > So in the second part where it matches against mt8196, you should > have minItems = maxItems = 2. Got it, I'll fix it in the next version. Thanks. > > > ChenYu > > > Thanks. > > > > > > > > > > > Best regards, > > > Krzysztof > > >
On 07/01/2025 09:43, Jianjun Wang (王建军) wrote: > On Mon, 2025-01-06 at 13:27 +0100, Krzysztof Kozlowski wrote: >> External email : Please do not click links or open attachments until >> you have verified the sender or the content. >> >> >> On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: >>> On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: >>>> External email : Please do not click links or open attachments >>>> until >>>> you have verified the sender or the content. >>>> >>>> >>>> On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: >>>>> + clock-names: >>>>> + items: >>>>> + - const: pl_250m >>>>> + - const: tl_26m >>>>> + - const: peri_26m >>>>> + - const: peri_mem >>>>> + - const: ahb_apb >>>>> + - const: low_power >>>>> + >>>>> + resets: >>>>> + minItems: 1 >>>>> + maxItems: 2 >>>>> + >>>>> + reset-names: >>>>> + minItems: 1 >>>>> + maxItems: 2 >>>> >>>> Why resets are flexible? >>> >>> There are two resets, one for MAC and another for PHY, some >>> platforms >>> may only use one of them. >> >> Even more questions. What does it mean use? Is it there or is it not? > > It will be used by calling the reset controller's APIs in the PCIe > controller driver. Ideally, it should be de-asserted before PCIe > initialization and should be asserted if PCIe powers down or the driver > is removed. So it is there? Then drop minItems. > >> Platform like SoC? But this is one specific SoC, it cannot be used on >> different SoC. > > Yes, it should be SoC, each SoC have its own resets, and the number of > resets for each SoC is defined by the hardware design, most SoCs should > have one reset for MAC and one reset for PHY. You respond with some obvious things, so this review won't work. Properties are supposed to be constrained. Your arguments that something else has something else, do not apply. It does not matter what something else has. > >> >>> >>> Would you prefer to set the number of resets to a fixed value for >>> specific platforms? >> >> Everything should be constrained to match hardware. > > For MT8196, there are 2 resets. Should I use a fixed item in this case? Yes. I asked why this soc has this flexible and you speak about some other socs. Best regards, Krzysztof
On Tue, 2025-01-07 at 14:04 +0100, AngeloGioacchino Del Regno wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > Il 06/01/25 10:19, Jianjun Wang (王建军) ha scritto: > > On Fri, 2025-01-03 at 10:26 +0100, AngeloGioacchino Del Regno > > wrote: > > > External email : Please do not click links or open attachments > > > until > > > you have verified the sender or the content. > > > > > > > > > Il 03/01/25 07:00, Jianjun Wang ha scritto: > > > > Add compatible string and clock definition for MT8196. It has 6 > > > > clocks like > > > > the MT8195, but 2 of them are different. > > > > > > > > Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com> > > > > --- > > > > .../bindings/pci/mediatek-pcie-gen3.yaml | 29 > > > > +++++++++++++++++++ > > > > 1 file changed, 29 insertions(+) > > > > > > > > diff --git a/Documentation/devicetree/bindings/pci/mediatek- > > > > pcie- > > > > gen3.yaml b/Documentation/devicetree/bindings/pci/mediatek- > > > > pcie- > > > > gen3.yaml > > > > index f05aab2b1add..b4158a666fb6 100644 > > > > --- a/Documentation/devicetree/bindings/pci/mediatek-pcie- > > > > gen3.yaml > > > > +++ b/Documentation/devicetree/bindings/pci/mediatek-pcie- > > > > gen3.yaml > > > > @@ -51,6 +51,7 @@ properties: > > > > - mediatek,mt7986-pcie > > > > - mediatek,mt8188-pcie > > > > - mediatek,mt8195-pcie > > > > + - mediatek,mt8196-pcie > > > > - const: mediatek,mt8192-pcie > > > > - const: mediatek,mt8192-pcie > > > > - const: airoha,en7581-pcie > > > > @@ -197,6 +198,34 @@ allOf: > > > > minItems: 1 > > > > maxItems: 2 > > > > > > > > + - if: > > > > + properties: > > > > + compatible: > > > > + contains: > > > > + enum: > > > > + - mediatek,mt8196-pcie > > > > + then: > > > > + properties: > > > > + clocks: > > > > + minItems: 6 > > > > + > > > > + clock-names: > > > > + items: > > > > + - const: pl_250m > > > > + - const: tl_26m > > > > + - const: peri_26m > > > > + - const: peri_mem > > > > + - const: ahb_apb > > > > > > ahb_apb is a bus clock, so you can set it as > > > > > > - const: bus > > > > Agree, I'll change it to "bus" in the next version, thanks. > > > > > > > > > > > > + - const: low_power > > > > > > Can you please clarify what the LP clock is for? > > > > This is a power-saving clock. Its clock source consumes less power > > than > > a regular clock, we need to keep this clock on if when entering > > L1.2 > > during suspend. > > > > In the driver, you are keeping all clocks ON instead. > > Is this clock required to be ON when the full power ones are enabled > and > the SoC is not in suspend state? This clock affects the exit from L1.2 via the CLKREQ# signal, and ASPM L1.2 can be entered in the normal state. Therefore, we need to keep it on like the other clocks. > > Can you please add handling for this "special" clock so that we can > save power > during suspend? When entering the L1.2 state, this clock is the only clock needed by the PCIe HW. However, since ASPM L1.2 is controlled by HW and we don't know when it will exit(e.g., exit by the device side), we still need to keep other clocks on to ensure the PCIe is ready to work. Thanks. > > Cheers, > Angelo > > > Thanks. > > > > > > > > Thanks, > > > Angelo > > > > > > > + > > > > + resets: > > > > + minItems: 1 > > > > + maxItems: 2 > > > > + > > > > + reset-names: > > > > + minItems: 1 > > > > + maxItems: 2 > > > > + > > > > - if: > > > > properties: > > > > compatible: > > > > > > > > >
On Wed, 2025-01-08 at 08:16 +0100, Krzysztof Kozlowski wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > On 07/01/2025 09:43, Jianjun Wang (王建军) wrote: > > On Mon, 2025-01-06 at 13:27 +0100, Krzysztof Kozlowski wrote: > > > External email : Please do not click links or open attachments > > > until > > > you have verified the sender or the content. > > > > > > > > > On 06/01/2025 10:26, Jianjun Wang (王建军) wrote: > > > > On Fri, 2025-01-03 at 10:10 +0100, Krzysztof Kozlowski wrote: > > > > > External email : Please do not click links or open > > > > > attachments > > > > > until > > > > > you have verified the sender or the content. > > > > > > > > > > > > > > > On Fri, Jan 03, 2025 at 02:00:11PM +0800, Jianjun Wang wrote: > > > > > > + clock-names: > > > > > > + items: > > > > > > + - const: pl_250m > > > > > > + - const: tl_26m > > > > > > + - const: peri_26m > > > > > > + - const: peri_mem > > > > > > + - const: ahb_apb > > > > > > + - const: low_power > > > > > > + > > > > > > + resets: > > > > > > + minItems: 1 > > > > > > + maxItems: 2 > > > > > > + > > > > > > + reset-names: > > > > > > + minItems: 1 > > > > > > + maxItems: 2 > > > > > > > > > > Why resets are flexible? > > > > > > > > There are two resets, one for MAC and another for PHY, some > > > > platforms > > > > may only use one of them. > > > > > > Even more questions. What does it mean use? Is it there or is it > > > not? > > > > It will be used by calling the reset controller's APIs in the PCIe > > controller driver. Ideally, it should be de-asserted before PCIe > > initialization and should be asserted if PCIe powers down or the > > driver > > is removed. > > So it is there? Then drop minItems. > > > > > > Platform like SoC? But this is one specific SoC, it cannot be > > > used on > > > different SoC. > > > > Yes, it should be SoC, each SoC have its own resets, and the number > > of > > resets for each SoC is defined by the hardware design, most SoCs > > should > > have one reset for MAC and one reset for PHY. > > You respond with some obvious things, so this review won't work. > Properties are supposed to be constrained. Your arguments that > something > else has something else, do not apply. It does not matter what > something > else has. > > > > > > > > > > > > > > Would you prefer to set the number of resets to a fixed value > > > > for > > > > specific platforms? > > > > > > Everything should be constrained to match hardware. > > > > For MT8196, there are 2 resets. Should I use a fixed item in this > > case? > > Yes. I asked why this soc has this flexible and you speak about some > other socs. Got it, sorry for the noise, will fix it in the next version. Thanks. > > > > Best regards, > Krzysztof >
diff --git a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml index f05aab2b1add..b4158a666fb6 100644 --- a/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml +++ b/Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.yaml @@ -51,6 +51,7 @@ properties: - mediatek,mt7986-pcie - mediatek,mt8188-pcie - mediatek,mt8195-pcie + - mediatek,mt8196-pcie - const: mediatek,mt8192-pcie - const: mediatek,mt8192-pcie - const: airoha,en7581-pcie @@ -197,6 +198,34 @@ allOf: minItems: 1 maxItems: 2 + - if: + properties: + compatible: + contains: + enum: + - mediatek,mt8196-pcie + then: + properties: + clocks: + minItems: 6 + + clock-names: + items: + - const: pl_250m + - const: tl_26m + - const: peri_26m + - const: peri_mem + - const: ahb_apb + - const: low_power + + resets: + minItems: 1 + maxItems: 2 + + reset-names: + minItems: 1 + maxItems: 2 + - if: properties: compatible:
Add compatible string and clock definition for MT8196. It has 6 clocks like the MT8195, but 2 of them are different. Signed-off-by: Jianjun Wang <jianjun.wang@mediatek.com> --- .../bindings/pci/mediatek-pcie-gen3.yaml | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+)