Skip to content

Gc6 2#38

Closed
jackpot51 wants to merge 264 commits intosystem76from
gc6-2
Closed

Gc6 2#38
jackpot51 wants to merge 264 commits intosystem76from
gc6-2

Conversation

@jackpot51
Copy link
Copy Markdown
Member

No description provided.

jackpot51 and others added 9 commits January 15, 2021 10:56
Change-Id: Idf37290a410a2e31549e26e852b94f81fc939061
Change-Id: I8076322d2950b33641a1a2aa678b9e088c494a43
Change-Id: Icc4a882ff73f62a134b92f1afb0dc298ea809189
Change-Id: Id7f4373989dffe8c3bc68a034f59a94d2160dd15
Change-Id: Id239f4bb28a3c755a6ff64d66ec046b0da6c27ef
Change-Id: Ic2dbbf351f2b14b6d9a1c1b123ce2553a73a2f79
Change-Id: Ib4c568f74eec928a420fb42204303ef1c65c3c71
The `clear` command for SMMSTORE version 1 does not require a parameter.

Change-Id: I992b7ce5962bf7ee62b7e1970ae7aa1b975ef42e
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Change-Id: I51f047b62a8a2eadcaf89a4c6e6041d5bb9d1331
crawfxrd and others added 12 commits January 26, 2021 09:16
- Remove the comments, which were copied from the header
- Remove the dq entries for LPDDR, which are not used
- Allow higher memory speeds on oryp5

Change-Id: Ied41e9aad832c19344f92845b0d8d4bdab7e1ac8
Upstream is moving towards having registers set within their relevant
device. Do this now to reduce the diff for upstreaming and later syncing
changes back.

Does not touch the TGL boards or lemp9, which have most of the changes.

- Move registers to devices
- Remove unneeded registers
- Remove extra comments

Change-Id: I8cd54d428493981538722e9fe6a8f3ff2918a041
Change-Id: I528320065b0d90926bb94963cdc833c02106b35c
Change-Id: I8be16d9203dd71ca877cbc00290ec044e8b5cc77
Change-Id: Iab3d22ed7af4986c457fdbbbfafb3699f8e60e27
Change-Id: Ia0a505b22b91c70b5263fa6c2471d3dc905d13e8
Change-Id: Iba9cf8eda1957fc0f594125d987c083b18c719c2
Change-Id: I99e92293946229b4212ce38f75499d0fadd3b6a7
Change-Id: I215bf6e502e1cbf67635d3ac26b0b6208137423b
Change-Id: I4cca07b77dd486a8d79b3ceea1c5aa4f15fbe54d
Change-Id: I83bdf50d4f9789400b6a49ee027797718fd8118b
Change-Id: Icef5501856a955fc32775870e6d6d492bb03a669
@crawfxrd
Copy link
Copy Markdown
Member

Had the error on oryp6 on boot.

$ cat /sys/module/nvidia/version 
460.32.03
[   37.420349] ACPI Debug:  "NVIDIA _PS3 {"
[   37.420364] ACPI Debug:  "} NVIDIA _PS3"
[   37.420372] ACPI Debug:  "NVIDIA PWRR._OFF {"
[   37.420380] ACPI Debug:  "NVIDIA _OFF {"
[   37.420389] ACPI Debug:  "NVIDIA GC6I {"
[   37.420432] ACPI Debug:  "  LTRE = 0000000000000001"
[   37.420440] ACPI Debug:  "RTDS {"
[   37.420442] ACPI Debug:  "  Q0L2 = 1"
[   37.420447] ACPI Debug:  "  Sleep 16"
[   37.444311] ACPI Debug:  "  While Q0L2"
[   37.444329] ACPI Debug:  "  P0RM = 1"
[   37.444336] ACPI Debug:  "  P0AP = 3"
[   37.444342] ACPI Debug:  "} RTDS"
[   37.444349] ACPI Debug:  "  Sleep 10"
[   37.464315] ACPI Debug:  "  DGPU_RST_N low"
[   37.464549] ACPI Debug:  "} NVIDIA GC6I"
[   37.464556] ACPI Debug:  "  While DGPU_GC6 low"
[   37.772875] ACPI Debug:  "    While DGPU_GC6 low timeout"
[   37.772892] ACPI Debug:  "    DGPU_PWR_EN low"
[   37.773281] ACPI Debug:  "  _STA = 0x5"
[   37.773305] ACPI Debug:  "} NVIDIA _OFF"
[   37.773330] ACPI Debug:  "} NVIDIA PWRR._OFF"
[   37.773387] ACPI Debug:  "NVIDIA PWRR._ON {"
[   37.773420] ACPI Debug:  "NVIDIA _ON {"
[   37.773448] ACPI Debug:  "  If DGPU_PWR_EN low"
[   37.773838] ACPI Debug:  "    DGPU_PWR_EN high"
[   37.774207] ACPI Debug:  "    Sleep 16"
[   37.796352] ACPI Debug:  "NVIDIA GC6O {"
[   37.796371] ACPI Debug:  "  DGPU_RST_N high"
[   37.796867] ACPI Debug:  "  Sleep 10"
[   37.816372] ACPI Debug:  "RTEN {"
[   37.816391] ACPI Debug:  "  Q0L0 = 1"
[   37.816418] ACPI Debug:  "  Sleep 16"
[   37.840365] ACPI Debug:  "  While Q0L0"
[   37.840418] ACPI Debug:  "  P0RM = 0"
[   37.840441] ACPI Debug:  "  P0AP = 0"
[   37.840461] ACPI Debug:  "} RTEN"
[   37.840582] ACPI Debug:  "  LREN = 0000000000000001"
[   37.840607] ACPI Debug:  "  CEDR = 1"
[   37.840700] ACPI Debug:  "  CMDR |= 7"
[   37.840759] ACPI Debug:  "} NVIDIA GC6O"
[   37.840776] ACPI Debug:  "  _STA = 0xF"
[   37.840796] ACPI Debug:  "} NVIDIA _ON"
[   37.840820] ACPI Debug:  "} NVIDIA PWRR._ON"
[   37.840855] ACPI Debug:  "NVIDIA _PS0 {"
[   37.840882] ACPI Debug:  "} NVIDIA _PS0"
[   37.840902] nvidia 0000:01:00.0: can't change power state from D3cold to D0 (config space inaccessible)
[   37.840952] NVRM: GPU at PCI:0000:01:00: GPU-c9ed20ba-4c45-946e-4ed6-616892890b92
[   37.840960] NVRM: Xid (PCI:0000:01:00): 79, pid=7, GPU has fallen off the bus.
[   37.840963] NVRM: GPU 0000:01:00.0: GPU has fallen off the bus.
[   37.842334] xhci_hcd 0000:01:00.2: can't change power state from D3cold to D0 (config space inaccessible)
[   37.842356] xhci_hcd 0000:01:00.2: can't change power state from D3hot to D0 (config space inaccessible)
[   37.842366] xhci_hcd 0000:01:00.2: Controller not ready at resume -19
[   37.842369] xhci_hcd 0000:01:00.2: PCI post-resume error -19!
[   37.842372] xhci_hcd 0000:01:00.2: HC died; cleaning up

@benjamindoron
Copy link
Copy Markdown
Contributor

I can't comment at all on the xHCI error.

Regarding the first error: The issue appears to be that the method tries to guarantee that the link will come up, and will set the "retrain link" bit after every 'timeout' until it does (I haven't examined the datasheet to find the exact bits, but this appears to be the purpose based on the uses and names). The issue is that this gets aborted (AE_AML_LOOP_TIMEOUT, from the log) if it takes too long, which is registered as a significant error.

I've had luck with a much simpler While (LNKS < 0x7) {Sleep (5)} (here, LNKS should be equivalent to P0LS), although I'm not certain what to make the "sleep" time. Alternatively, you could loop for a fixed number of "sleeps" and break if the link comes up.

If I recall correctly, if the link doesn't come up, the drivers just try again.

Regarding the second error: It appears to me that since _PS3 will only execute after Optimus sets flags, the named status variable is not updated. As a result, _PS0 skips execution, so the link is not brought up.

@jackpot51
Copy link
Copy Markdown
Member Author

Replaced by #98

@jackpot51 jackpot51 closed this May 13, 2022
@jackpot51 jackpot51 deleted the gc6-2 branch May 13, 2022 01:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants