summaryrefslogtreecommitdiffstats
path: root/resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch
diff options
context:
space:
mode:
authorFrancis Rowe <info@gluglug.org.uk>2016-03-08 01:00:09 (EST)
committer Francis Rowe <info@gluglug.org.uk>2016-03-08 02:32:32 (EST)
commitdfa21bb8ee01eac21a2acee79011a634cb67e373 (patch)
tree21cd4f855aa03db13abba91400ad3be212b11602 /resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch
parent2e5e505da125f9d90dd63c1cbcb08bf5316b21ae (diff)
downloadlibreboot-dfa21bb8ee01eac21a2acee79011a634cb67e373.zip
libreboot-dfa21bb8ee01eac21a2acee79011a634cb67e373.tar.gz
libreboot-dfa21bb8ee01eac21a2acee79011a634cb67e373.tar.bz2
Update coreboot (kgpe-d16,kcma-d8,kfsn4-dre,d510mo,ga-g41m-es2l)
Update to the latest coreboot and vboot versions at the time of writing: coreboot 2a3434757ef425dbdfedf1fc69e1a033a6e7310d vboot d187cd3fc792f8bcefbee4587c83eafbd08441fc
Diffstat (limited to 'resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch')
-rw-r--r--resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch192
1 files changed, 0 insertions, 192 deletions
diff --git a/resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch b/resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch
deleted file mode 100644
index e11a27d..0000000
--- a/resources/libreboot/patch/coreboot/33fb4cf0ffb01be8bcb6b488872c87eb50e7d77f/grub/kgpe-d16/0107-cpu-amd-family_10h-family_15h-Set-up-Family-15h-Link.patch
+++ /dev/null
@@ -1,192 +0,0 @@
-From 9e1d2f70fb0e1d50c2314072b7fb019ed7cd283e Mon Sep 17 00:00:00 2001
-From: Timothy Pearson <tpearson@raptorengineeringinc.com>
-Date: Sat, 8 Aug 2015 20:30:36 -0500
-Subject: [PATCH 107/143] cpu/amd/family_10h-family_15h: Set up Family 15h
- Link Base Channel Buffer Count registers
-
-Change-Id: I8d616a64a5a9cf0b51288535f5050c6866d0996b
-Signed-off-by: Timothy Pearson <tpearson@raptorengineeringinc.com>
----
- src/cpu/amd/family_10h-family_15h/init_cpus.c | 159 ++++++++++++++++++++++++-
- 1 file changed, 155 insertions(+), 4 deletions(-)
-
-diff --git a/src/cpu/amd/family_10h-family_15h/init_cpus.c b/src/cpu/amd/family_10h-family_15h/init_cpus.c
-index e93c15b..59d745d 100644
---- a/src/cpu/amd/family_10h-family_15h/init_cpus.c
-+++ b/src/cpu/amd/family_10h-family_15h/init_cpus.c
-@@ -1204,6 +1204,161 @@ static void cpuSetAMDPCI(u8 node)
- dword |= (compute_unit_buffer_count << 4);
- pci_write_config32(NODE_PCI(node, 3), 0x1a0, dword);
-
-+ uint8_t link;
-+ uint8_t ganged;
-+ uint8_t iolink;
-+ uint8_t probe_filter_enabled = !!dual_node;
-+
-+ /* Set up the Link Base Channel Buffer Count */
-+ uint8_t isoc_rsp_data;
-+ uint8_t isoc_np_req_data;
-+ uint8_t isoc_rsp_cmd;
-+ uint8_t isoc_preq;
-+ uint8_t isoc_np_req_cmd;
-+ uint8_t free_data;
-+ uint8_t free_cmd;
-+ uint8_t rsp_data;
-+ uint8_t np_req_data;
-+ uint8_t probe_cmd;
-+ uint8_t rsp_cmd;
-+ uint8_t preq;
-+ uint8_t np_req_cmd;
-+
-+ for (link = 0; link < 4; link++) {
-+ if (AMD_CpuFindCapability(node, link, &offset)) {
-+ ganged = !!(pci_read_config32(NODE_PCI(node, 0), (link << 2) + 0x170) & 0x1);
-+ iolink = (AMD_checkLinkType(node, link, offset) & HTPHY_LINKTYPE_NONCOHERENT);
-+
-+ if (!iolink && ganged) {
-+ if (probe_filter_enabled) {
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 0;
-+ free_cmd = 8;
-+ rsp_data = 3;
-+ np_req_data = 3;
-+ probe_cmd = 4;
-+ rsp_cmd = 9;
-+ preq = 2;
-+ np_req_cmd = 8;
-+ } else {
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 0;
-+ free_cmd = 8;
-+ rsp_data = 3;
-+ np_req_data = 3;
-+ probe_cmd = 8;
-+ rsp_cmd = 9;
-+ preq = 2;
-+ np_req_cmd = 4;
-+ }
-+ } else if (!iolink && !ganged) {
-+ if (probe_filter_enabled) {
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 0;
-+ free_cmd = 8;
-+ rsp_data = 3;
-+ np_req_data = 3;
-+ probe_cmd = 4;
-+ rsp_cmd = 9;
-+ preq = 2;
-+ np_req_cmd = 8;
-+ } else {
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 0;
-+ free_cmd = 4;
-+ rsp_data = 3;
-+ np_req_data = 3;
-+ probe_cmd = 4;
-+ rsp_cmd = 9;
-+ preq = 2;
-+ np_req_cmd = 4;
-+ }
-+ } else if (iolink && ganged) {
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 0;
-+ free_cmd = 8;
-+ rsp_data = 1;
-+ np_req_data = 0;
-+ probe_cmd = 0;
-+ rsp_cmd = 2;
-+ preq = 7;
-+ np_req_cmd = 14;
-+ } else {
-+ /* FIXME
-+ * This is an educated guess as the BKDG does not specify
-+ * the appropriate buffer counts for this case!
-+ */
-+ isoc_rsp_data = 0;
-+ isoc_np_req_data = 0;
-+ isoc_rsp_cmd = 0;
-+ isoc_preq = 0;
-+ isoc_np_req_cmd = 1;
-+ free_data = 1;
-+ free_cmd = 8;
-+ rsp_data = 1;
-+ np_req_data = 1;
-+ probe_cmd = 0;
-+ rsp_cmd = 2;
-+ preq = 4;
-+ np_req_cmd = 12;
-+ }
-+
-+ dword = pci_read_config32(NODE_PCI(node, 0), (link * 0x20) + 0x94);
-+ dword &= ~(0x3 << 27); /* IsocRspData = isoc_rsp_data */
-+ dword |= ((isoc_rsp_data & 0x3) << 27);
-+ dword &= ~(0x3 << 25); /* IsocNpReqData = isoc_np_req_data */
-+ dword |= ((isoc_np_req_data & 0x3) << 25);
-+ dword &= ~(0x7 << 22); /* IsocRspCmd = isoc_rsp_cmd */
-+ dword |= ((isoc_rsp_cmd & 0x7) << 22);
-+ dword &= ~(0x7 << 19); /* IsocPReq = isoc_preq */
-+ dword |= ((isoc_preq & 0x7) << 19);
-+ dword &= ~(0x7 << 16); /* IsocNpReqCmd = isoc_np_req_cmd */
-+ dword |= ((isoc_np_req_cmd & 0x7) << 16);
-+ pci_write_config32(NODE_PCI(node, 0), (link * 0x20) + 0x94, dword);
-+
-+ dword = pci_read_config32(NODE_PCI(node, 0), (link * 0x20) + 0x90);
-+ dword &= ~(0x1 << 31); /* LockBc = 0x1 */
-+ dword |= ((0x1 & 0x1) << 31);
-+ dword &= ~(0x7 << 25); /* FreeData = free_data */
-+ dword |= ((free_data & 0x7) << 25);
-+ dword &= ~(0x1f << 20); /* FreeCmd = free_cmd */
-+ dword |= ((free_cmd & 0x1f) << 20);
-+ dword &= ~(0x3 << 18); /* RspData = rsp_data */
-+ dword |= ((rsp_data & 0x3) << 18);
-+ dword &= ~(0x3 << 16); /* NpReqData = np_req_data */
-+ dword |= ((np_req_data & 0x3) << 16);
-+ dword &= ~(0xf << 12); /* ProbeCmd = probe_cmd */
-+ dword |= ((probe_cmd & 0xf) << 12);
-+ dword &= ~(0xf << 8); /* RspCmd = rsp_cmd */
-+ dword |= ((rsp_cmd & 0xf) << 8);
-+ dword &= ~(0x7 << 5); /* PReq = preq */
-+ dword |= ((preq & 0x7) << 5);
-+ dword &= ~(0x1f << 0); /* NpReqCmd = np_req_cmd */
-+ dword |= ((np_req_cmd & 0x1f) << 0);
-+ pci_write_config32(NODE_PCI(node, 0), (link * 0x20) + 0x90, dword);
-+ }
-+ }
-+
- /* Set up the Link to XCS Token Counts */
- uint8_t isoc_rsp_tok_1;
- uint8_t isoc_preq_tok_1;
-@@ -1221,10 +1376,6 @@ static void cpuSetAMDPCI(u8 node)
- uint8_t preq_tok_0;
- uint8_t req_tok_0;
-
-- uint8_t link;
-- uint8_t ganged;
-- uint8_t iolink;
-- uint8_t probe_filter_enabled = !!dual_node;
- for (link = 0; link < 4; link++) {
- if (AMD_CpuFindCapability(node, link, &offset)) {
- ganged = !!(pci_read_config32(NODE_PCI(node, 0), (link << 2) + 0x170) & 0x1);
---
-1.7.9.5
-