linux驱动编译成kext,Hackintosh:制作AppleALC以驱动原生AppleHDA

本文详细介绍了如何将Linux驱动编译成kext,特别是针对AppleALC项目的操作步骤,包括codec文件的整理、路径推导、ConfigData的修改以及配置文件的编辑,最终实现对AppleHDA的驱动支持。
摘要由CSDN通过智能技术生成

这篇教程一直在OneNote上躺着,休息了好长时间也该见见眼光了!

一、准备工作

1. 所需文件与工具

(1) codec:在linux中提取的信息,cat /proc/asound/card1/card#0 > ~/Desktop/codec.txt;

(2) codecgraph:用于整理出节点的路径图。在使用前要先安装brew和依赖 brew install graphviz ;

(3) verbit.sh:将codec中的有效节点提取出来;

(4) xcode:编译工具;

(5) AppleALC项目文件,git clone https://github.com/vit9696/AppleALC;

(6) PlistEdit Pro:用于修改plist文件;

(7) Lilu.kext的Release版本,在vit9696大神的GitHub项目里。

2. 整理codec文件

2.1 生成路径图

在codec目录下执行命令:./codecgraph ../codec.txt,会在codecgraph位置默认生成svg文件,打开可以看见节点路径图。

2.2 生成有效节点信息

首先给予verbit.sh权限:sudo chmod +x verbit.sh;然后是执行命令:./verbit.sh ../codec.txt > ../codec_dump.txt,打开就能看见有效节点。

二、整理路径

1. 整理有效节点

我的有效节点如下所示

23691012b358

有效节点

很明显0x17和0x1d为无效节点,并且去掉Modified Verbs,于是剩下的有效信息一如下

23691012b358

有效信息一

2. 推导路径

2.1 推导内置麦克风路径

打开最原始的codec.txt文件,查找包含内置麦克风对应的节点0x12,也就是说我们需要找的是Connection包含0x12的节点,显然发现是0x12是在0x11下的,同理再查找0x11在哪个节点包含之下。发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值