요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
Mediatek ALSA BT SCO CVSD/MSBC Driver
Required properties:
- compatible = "mediatek,mtk-btcvsd-snd";
- reg: register location and size of PKV and SRAM_BANK2
- interrupts: should contain BTSCO interrupt
- mediatek,infracfg: the phandles of INFRASYS
- mediatek,offset: Array contains of register offset and mask
infra_misc_offset,
infra_conn_bt_cvsd_mask,
cvsd_mcu_read_offset,
cvsd_mcu_write_offset,
cvsd_packet_indicator_offset
Example:
mtk-btcvsd-snd@18000000 {
compatible = "mediatek,mtk-btcvsd-snd";
reg=<0 0x18000000 0 0x1000>,
<0 0x18080000 0 0x8000>;
interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_LOW>;
mediatek,infracfg = <&infrasys>;
mediatek,offset = <0xf00 0x800 0xfd0 0xfd4 0xfd8>;
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
BT SCO CVSD/MSBC 자원
1-14Mediatek ALSA BT SCO CVSD/MSBC driver의 `compatible`은 `mediatek,mtk-btcvsd-snd`입니다. `reg`는 PKV와 `SRAM_BANK2`의 register 위치·크기, `interrupts`는 BTSCO interrupt, `mediatek,infracfg`는 INFRASYS phandle입니다.
`mediatek,offset` 배열은 `infra_misc_offset`, `infra_conn_bt_cvsd_mask`, `cvsd_mcu_read_offset`, `cvsd_mcu_write_offset`, `cvsd_packet_indicator_offset` 순서의 register offset과 mask를 담습니다.
BT SCO memory·interrupt 예제
15-24예제는 `0x18000000` PKV, `0x18080000` SRAM bank, GIC SPI 286, `infrasys`와 다섯 offset 값을 지정합니다.
mtk-btcvsd-snd@18000000 {
compatible = "mediatek,mtk-btcvsd-snd";
reg=<0 0x18000000 0 0x1000>,
<0 0x18080000 0 0x8000>;
interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_LOW>;
mediatek,infracfg = <&infrasys>;
mediatek,offset = <0xf00 0x800 0xfd0 0xfd4 0xfd8>;
};
요약과 해설
mtk-btcvsd-snd.txt:1-24BT SCO CVSD/MSBC driver의 memory, interrupt, INFRASYS와 register offset 배열을 설명합니다. 아래의 접을 수 있는 영어 원문은 source path와 줄 배치를 그대로 보존하고, 한국어 전문 번역은 property·phandle·symbol과 예제 코드를 원형으로 유지합니다.