cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

mt8195-afe-pcm.yaml (6199B)


      1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/sound/mt8195-afe-pcm.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: Mediatek AFE PCM controller for mt8195
      8
      9maintainers:
     10  - Trevor Wu <trevor.wu@mediatek.com>
     11
     12properties:
     13  compatible:
     14    const: mediatek,mt8195-audio
     15
     16  reg:
     17    maxItems: 1
     18
     19  interrupts:
     20    maxItems: 1
     21
     22  resets:
     23    maxItems: 1
     24
     25  reset-names:
     26    const: audiosys
     27
     28  memory-region:
     29    maxItems: 1
     30    description: |
     31      Shared memory region for AFE memif.  A "shared-dma-pool".
     32      See ../reserved-memory/reserved-memory.txt for details.
     33
     34  mediatek,topckgen:
     35    $ref: "/schemas/types.yaml#/definitions/phandle"
     36    description: The phandle of the mediatek topckgen controller
     37
     38  power-domains:
     39    maxItems: 1
     40
     41  clocks:
     42    items:
     43      - description: 26M clock
     44      - description: audio pll1 clock
     45      - description: audio pll2 clock
     46      - description: clock divider for i2si1_mck
     47      - description: clock divider for i2si2_mck
     48      - description: clock divider for i2so1_mck
     49      - description: clock divider for i2so2_mck
     50      - description: clock divider for dptx_mck
     51      - description: a1sys hoping clock
     52      - description: audio intbus clock
     53      - description: audio hires clock
     54      - description: audio local bus clock
     55      - description: mux for dptx_mck
     56      - description: mux for i2so1_mck
     57      - description: mux for i2so2_mck
     58      - description: mux for i2si1_mck
     59      - description: mux for i2si2_mck
     60      - description: audio infra 26M clock
     61      - description: infra bus clock
     62
     63  clock-names:
     64    items:
     65      - const: clk26m
     66      - const: apll1_ck
     67      - const: apll2_ck
     68      - const: apll12_div0
     69      - const: apll12_div1
     70      - const: apll12_div2
     71      - const: apll12_div3
     72      - const: apll12_div9
     73      - const: a1sys_hp_sel
     74      - const: aud_intbus_sel
     75      - const: audio_h_sel
     76      - const: audio_local_bus_sel
     77      - const: dptx_m_sel
     78      - const: i2so1_m_sel
     79      - const: i2so2_m_sel
     80      - const: i2si1_m_sel
     81      - const: i2si2_m_sel
     82      - const: infra_ao_audio_26m_b
     83      - const: scp_adsp_audiodsp
     84
     85  mediatek,etdm-in1-chn-disabled:
     86    $ref: /schemas/types.yaml#/definitions/uint8-array
     87    maxItems: 24
     88    description: Specify which input channel should be disabled.
     89
     90  mediatek,etdm-in2-chn-disabled:
     91    $ref: /schemas/types.yaml#/definitions/uint8-array
     92    maxItems: 16
     93    description: Specify which input channel should be disabled.
     94
     95patternProperties:
     96  "^mediatek,etdm-in[1-2]-mclk-always-on-rate-hz$":
     97    description: Specify etdm in mclk output rate for always on case.
     98
     99  "^mediatek,etdm-out[1-3]-mclk-always-on-rate-hz$":
    100    description: Specify etdm out mclk output rate for always on case.
    101
    102  "^mediatek,etdm-in[1-2]-multi-pin-mode$":
    103    type: boolean
    104    description: if present, the etdm data mode is I2S.
    105
    106  "^mediatek,etdm-out[1-3]-multi-pin-mode$":
    107    type: boolean
    108    description: if present, the etdm data mode is I2S.
    109
    110  "^mediatek,etdm-in[1-2]-cowork-source$":
    111    $ref: /schemas/types.yaml#/definitions/uint32
    112    description: |
    113      etdm modules can share the same external clock pin. Specify
    114      which etdm clock source is required by this etdm in moudule.
    115    enum:
    116      - 0 # etdm1_in
    117      - 1 # etdm2_in
    118      - 2 # etdm1_out
    119      - 3 # etdm2_out
    120
    121  "^mediatek,etdm-out[1-2]-cowork-source$":
    122    $ref: /schemas/types.yaml#/definitions/uint32
    123    description: |
    124      etdm modules can share the same external clock pin. Specify
    125      which etdm clock source is required by this etdm out moudule.
    126    enum:
    127      - 0 # etdm1_in
    128      - 1 # etdm2_in
    129      - 2 # etdm1_out
    130      - 3 # etdm2_out
    131
    132required:
    133  - compatible
    134  - reg
    135  - interrupts
    136  - resets
    137  - reset-names
    138  - mediatek,topckgen
    139  - power-domains
    140  - clocks
    141  - clock-names
    142  - memory-region
    143
    144additionalProperties: false
    145
    146examples:
    147  - |
    148    #include <dt-bindings/interrupt-controller/arm-gic.h>
    149    #include <dt-bindings/interrupt-controller/irq.h>
    150
    151    afe: mt8195-afe-pcm@10890000 {
    152        compatible = "mediatek,mt8195-audio";
    153        reg = <0x10890000 0x10000>;
    154        interrupts = <GIC_SPI 822 IRQ_TYPE_LEVEL_HIGH 0>;
    155        resets = <&watchdog 14>;
    156        reset-names = "audiosys";
    157        mediatek,topckgen = <&topckgen>;
    158        power-domains = <&spm 7>; //MT8195_POWER_DOMAIN_AUDIO
    159        memory-region = <&snd_dma_mem_reserved>;
    160        clocks = <&clk26m>,
    161                 <&topckgen 163>, //CLK_TOP_APLL1
    162                 <&topckgen 166>, //CLK_TOP_APLL2
    163                 <&topckgen 233>, //CLK_TOP_APLL12_DIV0
    164                 <&topckgen 234>, //CLK_TOP_APLL12_DIV1
    165                 <&topckgen 235>, //CLK_TOP_APLL12_DIV2
    166                 <&topckgen 236>, //CLK_TOP_APLL12_DIV3
    167                 <&topckgen 238>, //CLK_TOP_APLL12_DIV9
    168                 <&topckgen 100>, //CLK_TOP_A1SYS_HP_SEL
    169                 <&topckgen 33>, //CLK_TOP_AUD_INTBUS_SEL
    170                 <&topckgen 34>, //CLK_TOP_AUDIO_H_SEL
    171                 <&topckgen 107>, //CLK_TOP_AUDIO_LOCAL_BUS_SEL
    172                 <&topckgen 98>, //CLK_TOP_DPTX_M_SEL
    173                 <&topckgen 94>, //CLK_TOP_I2SO1_M_SEL
    174                 <&topckgen 95>, //CLK_TOP_I2SO2_M_SEL
    175                 <&topckgen 96>, //CLK_TOP_I2SI1_M_SEL
    176                 <&topckgen 97>, //CLK_TOP_I2SI2_M_SEL
    177                 <&infracfg_ao 50>, //CLK_INFRA_AO_AUDIO_26M_B
    178                 <&scp_adsp 0>; //CLK_SCP_ADSP_AUDIODSP
    179        clock-names = "clk26m",
    180                      "apll1_ck",
    181                      "apll2_ck",
    182                      "apll12_div0",
    183                      "apll12_div1",
    184                      "apll12_div2",
    185                      "apll12_div3",
    186                      "apll12_div9",
    187                      "a1sys_hp_sel",
    188                      "aud_intbus_sel",
    189                      "audio_h_sel",
    190                      "audio_local_bus_sel",
    191                      "dptx_m_sel",
    192                      "i2so1_m_sel",
    193                      "i2so2_m_sel",
    194                      "i2si1_m_sel",
    195                      "i2si2_m_sel",
    196                      "infra_ao_audio_26m_b",
    197                      "scp_adsp_audiodsp";
    198    };
    199
    200...