brintos

brintos / linux-shallow public Read only

0
0
Text · 2.7 KiB · 129e32c Raw
107 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ASPEED BMC KCS Devices8 9maintainers:10  - Andrew Jeffery <andrew@aj.id.au>11 12description: |13  The Aspeed BMC SoCs typically use the Keyboard-Controller-Style (KCS)14  interfaces on the LPC bus for in-band IPMI communication with their host.15 16properties:17  compatible:18    oneOf:19      - description: Channel ID derived from reg20        items:21          enum:22            - aspeed,ast2400-kcs-bmc-v223            - aspeed,ast2500-kcs-bmc-v224            - aspeed,ast2600-kcs-bmc25 26      - description: Old-style with explicit channel ID, no reg27        deprecated: true28        items:29          enum:30            - aspeed,ast2400-kcs-bmc31            - aspeed,ast2500-kcs-bmc32 33  interrupts:34    maxItems: 135 36  reg:37    # maxItems: 338    items:39      - description: IDR register40      - description: ODR register41      - description: STR register42 43  aspeed,lpc-io-reg:44    $ref: /schemas/types.yaml#/definitions/uint32-array45    minItems: 146    maxItems: 247    description: |48      The host CPU LPC IO data and status addresses for the device. For most49      channels the status address is derived from the data address, but the50      status address may be optionally provided.51 52  aspeed,lpc-interrupts:53    $ref: /schemas/types.yaml#/definitions/uint32-array54    minItems: 255    maxItems: 256    description: |57      A 2-cell property expressing the LPC SerIRQ number and the interrupt58      level/sense encoding (specified in the standard fashion).59 60      Note that the generated interrupt is issued from the BMC to the host, and61      thus the target interrupt controller is not captured by the BMC's62      devicetree.63 64  kcs_chan:65    deprecated: true66    $ref: /schemas/types.yaml#/definitions/uint3267    description: The LPC channel number in the controller68 69  kcs_addr:70    deprecated: true71    $ref: /schemas/types.yaml#/definitions/uint3272    description: The host CPU IO map address73 74required:75  - compatible76  - interrupts77 78additionalProperties: false79 80allOf:81  - if:82      properties:83        compatible:84          contains:85            enum:86              - aspeed,ast2400-kcs-bmc87              - aspeed,ast2500-kcs-bmc88    then:89      required:90        - kcs_chan91        - kcs_addr92    else:93      required:94        - reg95        - aspeed,lpc-io-reg96 97examples:98  - |99    #include <dt-bindings/interrupt-controller/irq.h>100    kcs3: kcs@24 {101        compatible = "aspeed,ast2600-kcs-bmc";102        reg = <0x24 0x1>, <0x30 0x1>, <0x3c 0x1>;103        aspeed,lpc-io-reg = <0xca2>;104        aspeed,lpc-interrupts = <11 IRQ_TYPE_LEVEL_LOW>;105        interrupts = <8>;106    };107