标签:
一:开发环境的准备
主机开发环境:
目标板
二. 目标板配置
二:编写light sensor的驱动代码。
修改前:%SpbAccelerometer.DeviceDesc% = SpbAccelerometer_Install,ACPI\SpbAccelerometer
修改后:%SpbAccelerometer.DeviceDesc% = SpbAccelerometer_Install,ACPI\PS
(1) 将ASL.exe 拷贝至 the Sharks Cove board.
(2) 打开命令行工具, 输入命令 asl /tab=ssdt。该命令创建文件ssdt.asl
(3) 打开ssdt.asl,修改bios配置。黑体字部分是默认设置。可根据实际情况修改配置。
DefinitionBlock("SSDT.AML", "SSDT", 0x01, "Intel_", "ADebTabl", 0x00001000)
{
Scope(¥)
{
Name(DPTR, 0x3bf2d000)
Name(EPTR, 0x3bf3d000)
Name(CPTR, 0x3bf2d010)
Mutex(MMUT, 0x0)
Method(MDBG, 0x1, Serialized)
{
Store(Acquire(MMUT, 0x3e8), Local0)
If(LEqual(Local0, Zero))
{
OperationRegion(ABLK, SystemMemory, CPTR, 0x10)
Field(ABLK, ByteAcc, NoLock, Preserve)
{
AAAA, 128
}
Store(Arg0, AAAA)
Add(CPTR, 0x10, CPTR)
If(LNot(LLess(CPTR, EPTR)))
{
Add(DPTR, 0x10, CPTR)
}
Release(MMUT)
}
Return(Local0)
}
}
Scope(_SB_)
{
Device(SPBA)
{
Name(_HID, "PS")
Name(_UID, 1)
Method(_CRS, 0x0, NotSerialized)
{
Name(RBUF, ResourceTemplate()
{
I2CSerialBus(0x38, ControllerInitiated, 400000, AddressingMode7Bit, "¥¥_SB.I2C3", 0, ResourceConsumer)
GpioInt(Edge, ActiveHigh, Exclusive, PullDown, 0, "¥¥_SB.GPO2") {0x6}
})
Return(RBUF)
}
} // Device(SPBA)
} // Scope(_SB_)
}
(4) 输入命令asl ssdt.asl,生成ssdt.aml文件。
(5) 确认shark cove上的test signing是ON的状态
(6) 输入命令asl /loadtable ssdt.aml加载ssdt文件
标签:
原文地址:http://www.cnblogs.com/hlm0326/p/4330453.html