From 3bb5f20cc45017322e2e9cfddbbc443dd638ac7b Mon Sep 17 00:00:00 2001 From: Sophon Date: Wed, 25 Aug 2021 17:54:48 +0800 Subject: [PATCH] Fix Bluetooth on perseus Signed-off-by: Sophon --- perseus/DSDT.aml | Bin 250600 -> 249967 bytes perseus/DSDT.dsl | 770 +++++------------------------------- perseus/wcnss_bt.asl | 49 +++ perseus/wcnss_resources.asl | 384 ++++++++++++++++++ 4 files changed, 540 insertions(+), 663 deletions(-) create mode 100644 perseus/wcnss_bt.asl create mode 100644 perseus/wcnss_resources.asl diff --git a/perseus/DSDT.aml b/perseus/DSDT.aml index 656938ce6f223ddfb5b8824de67792f036290437..3a46b4d65609b3562b3f06c558a13239ef04e6c4 100644 GIT binary patch delta 542 zcmXX>PiWIn82{dTO&YSrE$yspyGrH|L9ryQlN~17{Mi;+*4kuS!9flxZVGD;RrI7F zQoINv`0ya4wZ)T&Oz72uhaElD!@w~?@Fs|;NAseW_r2fu`}2L@x8B(IU~I;8O|Slu z0B&9~%8sMBrZYFIDnJ0hUh$UI`1ISEEF!HR^E)N<6OA-r!*})kqFq+0ER)FxHPWgP z)UOd-NannXRZ%BKtaZnP?z&zz1ok9Mmn2p)^i>Mal8f;e-A~~=oDq*nCVlb=sdRS| zpC=)vdpTT)5KU(A;q-+BkxXmNHY|{$u}0adLBbxVr3}t+VU$#%2Pu4;=qz=Jw14J@ zQ}_!#@&}!y^)%*Vqwl{a>4A*%^i39Xw2{Se#I=Sw+#lx1nU{()?YV{~_)E4ad6w%H zi$xVeSY1PcUoxxo=zvTeTjYGB>Vi*7&}EVd zNAykCiFGV7O!0hGCJ0_U+XVIxmV~EKFDZ`y{M{}P$%Y0W0~*&9ee$d+k%fiO7H&l5?%OS-+~VO_YUO+gF-f f^=&1*6E16AQE8*ze^;;nZa{8gg!;+{vU}(+RCbeC delta 552 zcmaFAfd9o(er1HO+2Ri%v`YHsw_*$46C@?THFfe%fh4?VDOKwz_W@K)V zvfb>+_=S=C07FcCu#=vK!lJ>3$u`u#q{N3Os33!g6z}pi!oJ9Z~x4wKHXc2iD&w2PA0AC`qE5nEIbFE z3Qu-))tkN(D9+2yAmlB;&g&8!;uzvOUH>Yh#&iP?CKg81>4wrwh9Dh0(`Wtzn(|kQ zi5twCCc$LSi_pWs#XSB0Uq(&*Izps;RGE2QT*Ew_T^V@6-gEYMjbIRRRbiccuu_s0 z=w#l2=?}%2$_P7}ALwW=prZr8j%Hva!hZYdrIJjKaD@UJ&_G`S_UY%unT*3MJ=nNX`Xm{c z7#Nut7#P_Y8l>156sAY)W7eC_w}e?-I2jS043!K^Kzg=Y?`O_tVr1IB{2=oQJ^+v6 BmVy8P diff --git a/perseus/DSDT.dsl b/perseus/DSDT.dsl index 922618b..1de6c59 100644 --- a/perseus/DSDT.dsl +++ b/perseus/DSDT.dsl @@ -1,22 +1,22 @@ /* * Intel ACPI Component Architecture - * AML/ASL+ Disassembler version 20190703 (64-bit version) - * Copyright (c) 2000 - 2019 Intel Corporation + * AML/ASL+ Disassembler version 20210730 (64-bit version) + * Copyright (c) 2000 - 2021 Intel Corporation * * Disassembling to symbolic ASL+ operators * - * Disassembly of DSDT.aml, Tue Aug 24 06:20:10 2021 + * Disassembly of DSDT.aml, Wed Aug 25 03:31:28 2021 * * Original Table Header: * Signature "DSDT" - * Length 0x0003D1AD (250285) + * Length 0x0003D2E8 (250600) * Revision 0x02 - * Checksum 0x34 + * Checksum 0x97 * OEM ID "QCOMM " * OEM Table ID "SDM850 " * OEM Revision 0x00000003 (3) * Compiler ID "INTL" - * Compiler Version 0x20210604 (539035140) + * Compiler Version 0x20190703 (538511107) */ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { @@ -140,13 +140,13 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) "\\_SB.GIO0", 0x00, ResourceConsumer, , ) { // Pin list - 0x00C0 + 112 } GpioIo (Shared, PullUp, 0x0000, 0x0000, IoRestrictionNone, "\\_SB.GIO0", 0x00, ResourceConsumer, , ) { // Pin list - 0x007E + 126 } }) Return (RBUF) /* \_SB_.SDC2._CRS.RBUF */ @@ -32126,595 +32126,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) }) } - Scope (PEP0) - { - Method (EWMD, 0, NotSerialized) - { - Return (WBRC) /* \_SB_.PEP0.WBRC */ - } - - Name (WBRC, Package (0x03) - { - Package (0x07) - { - "DEVICE", - "\\_SB.AMSS.QWLN", - Package (0x03) - { - "COMPONENT", - Zero, - Package (0x02) - { - "FSTATE", - Zero - } - }, - - Package (0x07) - { - "DSTATE", - Zero, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS7_A", - 0x02, - 0x000FAFA0, - One, - 0x06, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO5_A", - One, - 0x000C3500, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - 0x001B7740, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - 0x0013E5C0, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - 0x002F5D00, - One, - 0x07, - Zero - } - } - }, - - Package (0x07) - { - "DSTATE", - 0x02, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO5_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS7_A", - 0x02, - Zero, - Zero, - 0x05, - Zero - } - } - }, - - Package (0x07) - { - "DSTATE", - 0x03, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO5_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS7_A", - 0x02, - Zero, - Zero, - 0x05, - Zero - } - } - }, - - Package (0x02) - { - "ABANDON_DSTATE", - 0x02 - } - }, - - Package (0x03) - { - "DEVICE", - "\\_SB.COEX", - Package (0x05) - { - "COMPONENT", - Zero, - Package (0x02) - { - "FSTATE", - Zero - }, - - Package (0x07) - { - "PSTATE", - Zero, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS7_A", - 0x02, - 0x000FAFA0, - One, - 0x06, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO5_A", - One, - 0x000C3500, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - 0x001B7740, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - 0x0013E5C0, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - 0x002F5D00, - One, - 0x07, - Zero - } - } - }, - - Package (0x07) - { - "PSTATE", - One, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO5_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS7_A", - 0x02, - Zero, - Zero, - 0x05, - Zero - } - } - } - } - }, - - Package (0x05) - { - "DEVICE", - "\\_SB.BTH0", - Package (0x03) - { - "COMPONENT", - Zero, - Package (0x02) - { - "FSTATE", - Zero - } - }, - - Package (0x07) - { - "DSTATE", - Zero, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS3_A", - 0x02, - 0x0014A140, - One, - 0x06, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS5_A", - 0x02, - 0x001F20C0, - One, - 0x06, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - 0x001B7740, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - 0x0013E5C0, - One, - 0x07, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - 0x002F5D00, - One, - 0x07, - Zero - } - } - }, - - Package (0x07) - { - "DSTATE", - 0x03, - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO7_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO17_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_LDO25_A", - One, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS3_A", - 0x02, - Zero, - Zero, - 0x05, - Zero - } - }, - - Package (0x02) - { - "PMICVREGVOTE", - Package (0x06) - { - "PPP_RESOURCE_ID_SMPS5_A", - 0x02, - Zero, - Zero, - 0x05, - Zero - } - } - } - } - }) - } + Include ("wcnss_resources.asl") Scope (PEP0) { @@ -48383,7 +47795,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { Zero, Zero, - ToUUID ("ba58766d-abf2-4402-88d7-90ab243f6c77") + ToUUID ("ba58766d-abf2-4402-88d7-90ab243f6c77") /* Unknown UUID */ } }) DerefOf (PKGG [Zero]) [Zero] = RMTB /* \_SB_.RMTB */ @@ -49435,7 +48847,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x31, "V8L", "SMMUID", - ToUUID ("9833c712-3292-4ffb-b0f4-2bd20e1f7f66"), + ToUUID ("9833c712-3292-4ffb-b0f4-2bd20e1f7f66") /* Unknown UUID */, "SMMUINTERFACEID", Buffer (0x10) { @@ -49583,7 +48995,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x20, "V7S", "SMMUID", - ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca"), + ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca") /* Unknown UUID */, "SMMUINTERFACEID", Buffer (0x10) { @@ -49648,9 +49060,9 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x20, "V7S", "SMMUID", - ToUUID ("665e0f8e-add3-49d1-91bc-5540c5f57fba"), + ToUUID ("665e0f8e-add3-49d1-91bc-5540c5f57fba") /* Unknown UUID */, "SMMUINTERFACEID", - ToUUID ("1c3fc0e8-0b11-4ee0-be89-3e21420a865f"), + ToUUID ("1c3fc0e8-0b11-4ee0-be89-3e21420a865f") /* Unknown UUID */, Package (0x07) { "PAGETABLEUSAGE", @@ -49804,7 +49216,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x20, "V7S", "SMMUID", - ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca"), + ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca") /* Unknown UUID */, "SMMUINTERFACEID", Buffer (0x10) { @@ -50104,7 +49516,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", Zero, - ToUUID ("2c135991-4391-4633-90b1-fa96f2e2cc04"), + ToUUID ("2c135991-4391-4633-90b1-fa96f2e2cc04") /* Unknown UUID */, "PRIMDISPLAY_POWER_STATES", "HW_BLOCK_MDP", Package (0x02) @@ -50715,7 +50127,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", One, - ToUUID ("30bdf1b5-28f7-4c0c-ac47-273dd1401e11"), + ToUUID ("30bdf1b5-28f7-4c0c-ac47-273dd1401e11") /* Unknown UUID */, "GRAPHICS_POWER_STATES", "HW_BLOCK_GRAPHICS", Package (0x02) @@ -51037,7 +50449,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x02, - ToUUID ("07ca2add-df87-49e1-8583-08687dc81c8e"), + ToUUID ("07ca2add-df87-49e1-8583-08687dc81c8e") /* Unknown UUID */, "MDPBLT_POWER_STATES", "HW_BLOCK_MDP", Package (0x02) @@ -51978,7 +51390,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x03, - ToUUID ("4d5ffbf5-d791-41cd-89cb-0154129ba607"), + ToUUID ("4d5ffbf5-d791-41cd-89cb-0154129ba607") /* Unknown UUID */, "ROTATOR_POWER_STATES", "HW_BLOCK_ROTATOR", Package (0x02) @@ -52854,7 +52266,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x04, - ToUUID ("d0e1bb1a-703d-4be8-b450-64a4fbfca6a8"), + ToUUID ("d0e1bb1a-703d-4be8-b450-64a4fbfca6a8") /* Unknown UUID */, "VIDEO_POWER_STATES", "HW_BLOCK_VIDEO", Package (0x02) @@ -53920,7 +53332,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x05, - ToUUID ("cc4d73fa-c3c2-4c7e-a217-d468f4611bbd"), + ToUUID ("cc4d73fa-c3c2-4c7e-a217-d468f4611bbd") /* Unknown UUID */, "CRYPTO_POWER_STATES", "HW_BLOCK_NONE", Package (0x02) @@ -54029,7 +53441,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x06, - ToUUID ("e6be5096-55ec-4891-884b-0760bfc533b6"), + ToUUID ("e6be5096-55ec-4891-884b-0760bfc533b6") /* Unknown UUID */, "VIDEO_ENCODER_POWER_STATES", "HW_BLOCK_VIDEO", Package (0x02) @@ -55105,7 +54517,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x07, - ToUUID ("c42be628-d6bc-4755-bfd5-5af776797228"), + ToUUID ("c42be628-d6bc-4755-bfd5-5af776797228") /* Unknown UUID */, "SECDISPLAY_POWER_STATES", "HW_BLOCK_MDP", Package (0x02) @@ -55716,7 +55128,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x08, - ToUUID ("818daed2-9e63-49d5-bd12-b0951f7b0f6b"), + ToUUID ("818daed2-9e63-49d5-bd12-b0951f7b0f6b") /* Unknown UUID */, "DP_POWER_STATES", "HW_BLOCK_MDP", Package (0x02) @@ -56276,7 +55688,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { "COMPONENT", 0x09, - ToUUID ("8dd40bdf-6fbd-45ed-8538-711d434b6ba1"), + ToUUID ("8dd40bdf-6fbd-45ed-8538-711d434b6ba1") /* Unknown UUID */, "ALWAYS_ACTIVE_WP", "HW_BLOCK_NONE", Package (0x01) @@ -61104,7 +60516,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) }) Name (_DSD, Package (0x02) // _DSD: Device-Specific Data { - ToUUID ("6b856e62-40f4-4688-bd46-5e888a2260de"), + ToUUID ("6b856e62-40f4-4688-bd46-5e888a2260de") /* Unknown UUID */, Package (0x0A) { Package (0x02) @@ -61190,7 +60602,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x00 // . }) CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.UCP0._DSM._T_0 */ - If ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751"))) + If ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */)) { While (One) { @@ -61537,7 +60949,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) Break } } - ElseIf ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5"))) + ElseIf ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */)) { While (One) { @@ -61628,7 +61040,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x00 // . }) CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0.RHUB._DSM._T_0 */ - If ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5"))) + If ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */)) { While (One) { @@ -61763,7 +61175,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) 0x00 // . }) CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.UFN0._DSM._T_0 */ - If ((_T_0 == ToUUID ("fe56cfeb-49d5-4378-a8a2-2978dbe54ad2"))) + If ((_T_0 == ToUUID ("fe56cfeb-49d5-4378-a8a2-2978dbe54ad2") /* Unknown UUID */)) { While (One) { @@ -61818,7 +61230,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) Break } } - ElseIf ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751"))) + ElseIf ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */)) { While (One) { @@ -63050,7 +62462,9 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) Device (TSC1) { - Name (_HID, "MSHW1003") // _HID: Hardware ID + Name (_HID, "TEST3330") // _HID: Hardware ID + Name (_HRV, One) // _HRV: Hardware Revision + Name (_ADR, Zero) // _ADR: Address Name (_UID, One) // _UID: Unique ID Name (_DEP, Package (0x03) // _DEP: Dependencies { @@ -63062,7 +62476,8 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { Name (RBUF, ResourceTemplate () { - I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, + //I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, + I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.IC13", 0x00, ResourceConsumer, , Exclusive, ) @@ -63072,16 +62487,79 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) { // Pin list 0x007D } - GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, - "\\_SB.GIO0", 0x00, ResourceConsumer, , - ) - { // Pin list - 0x0063 - } + //GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + // "\\_SB.GIO0", 0x00, ResourceConsumer, , + // ) + // { // Pin list + // 0x0063 + // } }) Return (RBUF) /* \_SB_.TSC1._CRS.RBUF */ } + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + While (One) + { + Name (_T_0, Buffer (0x01) // _T_x: Emitted by ASL Compiler + { + 0x00 // . + }) + CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.TSC1._DSM._T_0 */ + If ((_T_0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */)) + { + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (Arg2) + If ((_T_1 == Zero)) + { + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (Arg1) + If ((_T_2 == One)) + { + Return (Buffer (One) + { + 0x03 // . + }) + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + + Break + } + } + ElseIf ((_T_1 == One)) + { + Debug = "Method _DSM Function HID" + Return (0x20) + } + Else + { + } + + Break + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + + Break + } + } + Name (PGID, Buffer (0x0A) { "\\_SB.TSC1" @@ -63161,7 +62639,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) Name (_DSD, Package (0x02) // _DSD: Device-Specific Data { - ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e"), + ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e") /* Generic Buttons Device */, Package (0x06) { Package (0x05) @@ -63231,41 +62709,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) Alias (PSUB, _SUB) } - Device (BTH0) - { - Name (_HID, "QCOM02B5") // _HID: Hardware ID - Alias (PSUB, _SUB) - Name (_DEP, Package (0x03) // _DEP: Dependencies - { - PEP0, - PMIC, - UAR7 - }) - Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake - { - Zero, - Zero - }) - Name (_S4W, 0x02) // _S4W: S4 Device Wake State - Name (_S0W, 0x02) // _S0W: S0 Device Wake State - Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings - { - Name (PBUF, ResourceTemplate () - { - UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, - 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, - 0x0020, 0x0020, "\\_SB.UAR7", - 0x00, ResourceConsumer, , Exclusive, - ) - }) - Return (PBUF) /* \_SB_.BTH0._CRS.PBUF */ - } - - Method (_STA, 0, NotSerialized) // _STA: Status - { - Return (0x0F) - } - } + Include ("wcnss_bt.asl") Device (ADC1) { diff --git a/perseus/wcnss_bt.asl b/perseus/wcnss_bt.asl new file mode 100644 index 0000000..eb5021c --- /dev/null +++ b/perseus/wcnss_bt.asl @@ -0,0 +1,49 @@ +// +// WCN3990 Bluetooth +// +Device(BTH0) +{ + Name(_HID, "QCOM02B5") + Alias(\_SB.PSUB, _SUB) + Name(_DEP, Package(0x3) + { + \_SB_.PEP0, + \_SB_.PMIC, + \_SB_.UAR7 // depends on UART ACPI definition + }) + Name(_PRW, Package(0x2) + { + Zero, + Zero + }) + Name(_S4W, 0x2) + Name(_S0W, 0x2) + Method(_CRS, 0x0, NotSerialized) + { + Name(PBUF, ResourceTemplate() + { + UARTSerialBus( + 115200, // ConnectionSpeed + DataBitsEight, // BitsPerByte (defaults to DataBitsEight) + StopBitsOne, // StopBits (defaults to StopBitsOne) + 0xC0, // LinesInUse + LittleEndian, // IsBigEndian (defaults to LittleEndian) + ParityTypeNone, // Parity (defaults to ParityTypeNone) + FlowControlHardware, // FlowControl (defaults to FlowControlNone) + 0x20, // ReceiveBufferSize + 0x20, // TransmitBufferSize + "\\_SB.UAR7", // depends on UART ACPI definition + 0, // ResourceSourceIndex (defaults to 0) + ResourceConsumer, // ResourceUsage (defaults to ResourceConsumer) + , // DescriptorName + ) + + // GpioIo(Exclusive, PullDown, 0, 0, , "\\_SB.PM01", , , , ) {146} // 0x690 - PM_INT__PM1_GPIO19__GPIO_IN_STS + }) + Return(PBUF) + } + Method(_STA, 0x0, NotSerialized) + { + Return(0xF) + } +}//End BTH0 diff --git a/perseus/wcnss_resources.asl b/perseus/wcnss_resources.asl new file mode 100644 index 0000000..18cc61c --- /dev/null +++ b/perseus/wcnss_resources.asl @@ -0,0 +1,384 @@ +// PEP resources for WCNSS +Scope(\_SB_.PEP0) +{ + //Wireless Connectivity Devices + Method(EWMD) + { + Return(WBRC) + } + + Name(WBRC, + Package() + { + // PEP settings for Wlan iHelium + Package() + { + "DEVICE", + "\\_SB.AMSS.QWLN", + + Package() + { + "COMPONENT", + 0x0, // Component 0 + + Package() + { + "FSTATE", + 0x0, // F0 state + }, + }, + + Package() + { + "DSTATE", + 0x0, // D0 state + + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS7_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 1028000, // Voltage = 1.028 V + 1, // Software Enable = Enable + 6, // Software Power Mode = Auto + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO5_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 800000, // Voltage = 0.8 V + 1, // Software Enable = Enable + 7, // Software Power Mode = NPM + 0, // Head Room + }, + }, + }, + Package() + { + "DSTATE", + 0x2, // D2 state + + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO5_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS7_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + }, + Package() + { + "DSTATE", + 0x3, // D3 state + + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO5_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS7_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + }, + + package() + { + "ABANDON_DSTATE", + 2 // Abandon D state defined as D2 + }, + }, + // END AMSS.QWLN + + // PEP settings for Ltecoex device + Package() + { + "DEVICE", + "\\_SB.COEX", + Package() + { + "COMPONENT", + 0x0, // Component 0. + Package() + { + "FSTATE", + 0x0, // f0 state + }, + + Package() + { + "PSTATE", + 0x0, // P0 state + + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS7_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 1028000, // Voltage = 1.028 V + 1, // Software Enable = Enable + 6, // Software Power Mode = Auto + 0, // Head Room + }, + }, + + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO5_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 800000, // Voltage = 0.8 V + 1, // Software Enable = Enable + 7, // Software Power Mode = NPM + 0, // Head Room + }, + }, + }, + Package() + { + "PSTATE", + 0x1, // P1 state + + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO5_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS7_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + }, + }, + }, + // END _SB.COEX + + // PEP settings for Bluetooth SOC + Package() + { + "DEVICE", + "\\_SB.BTH0", + Package() + { + "COMPONENT", + 0x0, // Component 0. + Package() + { + "FSTATE", + 0x0, // f0 state + }, + }, + Package() + { + "DSTATE", + 0x0, // D0 state + + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS3_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 1352000, // Voltage = 1.352 V + 1, // Software Enable = Enable + 6, // Software Power Mode = Auto + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS5_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 2040000, // Voltage = 2.04 V + 1, // Software Enable = Enable + 6, // Software Power Mode = Auto + 0, // Head Room + }, + }, + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO7_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 1800000, // Voltage = 1.8 V + 1, // Software Enable = Enable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO17_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 1304000, // Voltage = 1.304 V + 1, // Software Enable = Enable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO25_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 3104000, // Voltage = 3.104 V + 1, // Software Enable = Enable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + }, + Package() + { + "DSTATE", + 0x3, // D3 state + + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO7_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO17_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + Package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_LDO25_A", // Resource ID + 1, // Voltage Regulator type 1 = LDO + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS3_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + package() + { + "PMICVREGVOTE", + package() + { + "PPP_RESOURCE_ID_SMPS5_A", // Resource ID + 2, // Voltage Regulator type 2 = SMPS + 0, // Voltage = 0 V + 0, // Software Enable = Disable + 5, // Software Power Mode = LPM + 0, // Head Room + }, + }, + }, + }, + // END BTH0 + + // PEP settings for FM SOC + // END FM + + }) // END WBRC +} -- 2.45.2