요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/tpm/tcg,tpm_tis-spi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: SPI-attached Trusted Platform Module conforming to TCG TIS specification
maintainers:
- Lukas Wunner <lukas@wunner.de>
description: |
The Trusted Computing Group (TCG) has defined a multi-vendor standard
for accessing a TPM chip. It can be transported over various buses,
one of them being SPI. The standard is named:
TCG PC Client Specific TPM Interface Specification (TIS)
https://trustedcomputinggroup.org/resource/pc-client-work-group-pc-client-specific-tpm-interface-specification-tis/
properties:
compatible:
items:
- enum:
- atmel,attpm20p
- infineon,slb9670
- st,st33htpm-spi
- st,st33zp24-spi
- const: tcg,tpm_tis-spi
allOf:
- $ref: tpm-common.yaml#
- $ref: /schemas/spi/spi-peripheral-props.yaml#
- if:
properties:
compatible:
contains:
const: st,st33zp24-spi
then:
properties:
spi-max-frequency:
maximum: 10000000
required:
- compatible
- reg
unevaluatedProperties: false
examples:
- |
spi {
#address-cells = <1>;
#size-cells = <0>;
tpm@0 {
reg = <0>;
compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
spi-max-frequency = <10000000>;
};
};
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
tpm@0 {
reg = <0>;
compatible = "st,st33zp24-spi", "tcg,tpm_tis-spi";
spi-max-frequency = <10000000>;
interrupt-parent = <&gpio5>;
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
lpcpd-gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>;
};
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
SPI TCG TIS TPM
1-18GPL-2.0-only 또는 BSD-2-Clause 라이선스의 이 스키마는 TCG TIS specification을 따르는 SPI-attached TPM을 정의합니다. Trusted Computing Group은 여러 vendor의 TPM chip에 접근하는 표준인 TCG PC Client Specific TPM Interface Specification(TIS)을 정의했으며 SPI는 이 표준을 운반하는 bus 중 하나입니다. Maintainer는 Lukas Wunner입니다.
Vendor compatible과 ST clock 제한
19-47Atmel ATTPM20P, Infineon SLB9670, ST ST33HTPM 또는 ST33ZP24 SPI chip은 vendor compatible 뒤에 `tcg,tpm_tis-spi` fallback을 둡니다. Node는 `tpm-common.yaml`과 SPI peripheral 공통 속성을 함께 따릅니다. `st,st33zp24-spi`에서는 `spi-max-frequency`가 최대 10,000,000 Hz입니다. `compatible`과 `reg`가 필수이며 평가되지 않은 추가 속성은 허용하지 않습니다.
properties:
compatible:
items:
- enum:
- atmel,attpm20p
- infineon,slb9670
- st,st33htpm-spi
- st,st33zp24-spi
- const: tcg,tpm_tis-spi
allOf:
- $ref: tpm-common.yaml#
- $ref: /schemas/spi/spi-peripheral-props.yaml#
- if:
properties:
compatible:
contains:
const: st,st33zp24-spi
then:
properties:
spi-max-frequency:
maximum: 10000000
required:
- compatible
- reg
unevaluatedProperties: false
Infineon SLB9670 예제
48-60첫 예제는 SPI chip select 0에 Infineon SLB9670 TPM을 연결하고 generic `tcg,tpm_tis-spi` fallback과 최대 frequency 10 MHz를 지정합니다.
examples:
- |
spi {
#address-cells = <1>;
#size-cells = <0>;
tpm@0 {
reg = <0>;
compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
spi-max-frequency = <10000000>;
};
};
ST33ZP24 interrupt·power-down 예제
61-76둘째 예제는 ST33ZP24 SPI TPM에 10 MHz frequency, GPIO5 line 7 level-high interrupt, GPIO5 line 15 active-high LPC power-down signal `lpcpd-gpios`를 지정합니다.
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
tpm@0 {
reg = <0>;
compatible = "st,st33zp24-spi", "tcg,tpm_tis-spi";
spi-max-frequency = <10000000>;
interrupt-parent = <&gpio5>;
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
lpcpd-gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>;
};
};
요약과 해설
tcg,tpm_tis-spi.yaml:1-76TCG TIS SPI TPM의 vendor compatible과 frequency 조건을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며 compatible, interrupt, bus, register, phandle, 수치와 줄 좌표를 원형대로 보존합니다.