Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 1 | chip northbridge/intel/sandybridge |
Vladimir Serbinenko | dd2bc3f | 2014-10-31 09:16:31 +0100 | [diff] [blame] | 2 | # IGD Displays |
Nico Huber | b0b25c8 | 2020-03-21 20:35:12 +0100 | [diff] [blame^] | 3 | register "gfx" = "GMA_STATIC_DISPLAYS(1)" |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 4 | |
| 5 | # Enable DisplayPort Hotplug with 6ms pulse |
| 6 | register "gpu_dp_d_hotplug" = "0x06" |
| 7 | |
| 8 | # Enable Panel as LVDS and configure power delays |
| 9 | register "gpu_panel_port_select" = "0" # LVDS |
Nicolas Reinecke | de72d43 | 2014-10-17 13:01:02 +0200 | [diff] [blame] | 10 | register "gpu_panel_power_cycle_delay" = "5" |
| 11 | register "gpu_panel_power_up_delay" = "300" # T1+T2: 30ms |
| 12 | register "gpu_panel_power_down_delay" = "300" # T5+T6: 30ms |
| 13 | register "gpu_panel_power_backlight_on_delay" = "2000" # T3: 200ms |
| 14 | register "gpu_panel_power_backlight_off_delay" = "2000" # T4: 200ms |
Nicolas Reinecke | de72d43 | 2014-10-17 13:01:02 +0200 | [diff] [blame] | 15 | register "gpu_cpu_backlight" = "0x1155" |
| 16 | register "gpu_pch_backlight" = "0x06100610" |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 17 | |
| 18 | device cpu_cluster 0 on |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 19 | chip cpu/intel/model_206ax |
| 20 | # Magic APIC ID to locate this chip |
Arthur Heymans | 7e6946a | 2019-01-21 17:55:02 +0100 | [diff] [blame] | 21 | device lapic 0x0 on end |
Arthur Heymans | b3f2323 | 2019-01-21 17:48:55 +0100 | [diff] [blame] | 22 | device lapic 0xacac off end |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 23 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 24 | register "c1_acpower" = "1" # ACPI(C1) = MWAIT(C1) |
| 25 | register "c2_acpower" = "3" # ACPI(C2) = MWAIT(C3) |
| 26 | register "c3_acpower" = "5" # ACPI(C3) = MWAIT(C7) |
| 27 | |
| 28 | register "c1_battery" = "1" # ACPI(C1) = MWAIT(C1) |
| 29 | register "c2_battery" = "3" # ACPI(C2) = MWAIT(C3) |
| 30 | register "c3_battery" = "5" # ACPI(C3) = MWAIT(C7) |
| 31 | end |
| 32 | end |
| 33 | |
Patrick Rudolph | 266a1f7 | 2016-06-09 18:13:34 +0200 | [diff] [blame] | 34 | register "pci_mmio_size" = "2048" |
| 35 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 36 | device domain 0 on |
Peter Lemenkov | a0c9759 | 2019-11-27 15:15:27 +0100 | [diff] [blame] | 37 | subsystemid 0x17aa 0x21cf inherit |
| 38 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 39 | device pci 00.0 on end # host bridge |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 40 | device pci 01.0 on end # NVIDIA Corporation GF119M [NVS 4200M] |
Peter Lemenkov | a0c9759 | 2019-11-27 15:15:27 +0100 | [diff] [blame] | 41 | device pci 02.0 on |
| 42 | subsystemid 0x17aa 0x21d1 |
| 43 | end # vga controller |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 44 | |
| 45 | chip southbridge/intel/bd82x6x # Intel Series 6 Cougar Point PCH |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 46 | # GPI routing |
| 47 | # 0 No effect (default) |
| 48 | # 1 SMI# (if corresponding ALT_GPI_SMI_EN bit is also set) |
| 49 | # 2 SCI (if corresponding GPIO_EN bit is also set) |
| 50 | register "alt_gp_smi_en" = "0x0000" |
| 51 | register "gpi1_routing" = "2" |
Nicolas Reinecke | b0922f0 | 2015-02-01 02:53:35 +0100 | [diff] [blame] | 52 | register "gpi13_routing" = "2" |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 53 | |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 54 | # Enable SATA ports 0 (HDD bay) & 1 (ODD bay) & 2 (mSATA) & 3 (eSATA) & 4 (dock) |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 55 | register "sata_port_map" = "0x1f" |
| 56 | # Set max SATA speed to 6.0 Gb/s |
| 57 | register "sata_interface_speed_support" = "0x3" |
| 58 | |
| 59 | register "gen1_dec" = "0x7c1601" |
| 60 | register "gen2_dec" = "0x0c15e1" |
| 61 | register "gen4_dec" = "0x0c06a1" |
| 62 | |
| 63 | # Enable zero-based linear PCIe root port functions |
| 64 | register "pcie_port_coalesce" = "1" |
| 65 | |
Vladimir Serbinenko | 5b044ae | 2014-10-25 15:20:55 +0200 | [diff] [blame] | 66 | register "c2_latency" = "101" # c2 not supported |
Vladimir Serbinenko | 5b044ae | 2014-10-25 15:20:55 +0200 | [diff] [blame] | 67 | |
Vladimir Serbinenko | 36fa5b8 | 2014-10-28 23:43:20 +0100 | [diff] [blame] | 68 | register "pcie_hotplug_map" = "{ 0, 0, 0, 1, 0, 0, 0, 0 }" |
| 69 | |
Patrick Rudolph | c670a41 | 2017-04-28 17:28:32 +0200 | [diff] [blame] | 70 | register "spi_uvscc" = "0x2005" |
| 71 | register "spi_lvscc" = "0x2005" |
| 72 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 73 | device pci 16.0 on end # Management Engine Interface 1 |
| 74 | device pci 16.1 off end |
| 75 | device pci 16.2 off end |
| 76 | device pci 16.3 off end |
Peter Lemenkov | a0c9759 | 2019-11-27 15:15:27 +0100 | [diff] [blame] | 77 | device pci 19.0 on # Intel Gigabit Ethernet |
| 78 | subsystemid 0x17aa 0x21ce |
| 79 | end |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 80 | device pci 1a.0 on end # USB2 EHCI #2 |
| 81 | device pci 1b.0 on end # High Definition Audio |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 82 | device pci 1c.0 off end # PCIe Port #1 |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 83 | device pci 1c.1 on end # PCIe Port #2 Integrated Wireless LAN |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 84 | device pci 1c.2 off end # PCIe Port #3 |
Patrick Rudolph | 0521632 | 2019-04-12 16:14:27 +0200 | [diff] [blame] | 85 | device pci 1c.3 on |
| 86 | smbios_slot_desc "7" "3" "ExpressCard Slot" "8" |
| 87 | end # PCIe Port #4 Express Card |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 88 | device pci 1c.4 on end # PCIe Port #5 MMC/SDXC + IEEE1394 |
| 89 | device pci 1c.5 off end # PCIe Port #6 Intel Ethernet PHY |
Peter Lemenkov | 02b29b9 | 2019-11-27 15:33:21 +0100 | [diff] [blame] | 90 | device pci 1c.6 off end # PCIe Port #7 |
Nicolas Reinecke | 6ccc346 | 2014-08-23 01:06:33 +0200 | [diff] [blame] | 91 | device pci 1c.7 off end # PCIe Port #8 |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 92 | device pci 1d.0 on end # USB2 EHCI #1 |
Peter Lemenkov | a0c9759 | 2019-11-27 15:15:27 +0100 | [diff] [blame] | 93 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 94 | device pci 1f.0 on #LPC bridge |
| 95 | chip ec/lenovo/pmh7 |
Peter Lemenkov | a0c9759 | 2019-11-27 15:15:27 +0100 | [diff] [blame] | 96 | device pnp ff.1 on end # dummy |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 97 | register "backlight_enable" = "0x01" |
| 98 | register "dock_event_enable" = "0x01" |
| 99 | end |
| 100 | |
Philipp Deppenwiese | 3d02b9c | 2015-06-03 23:09:36 +0200 | [diff] [blame] | 101 | chip drivers/pc80/tpm |
| 102 | device pnp 0c31.0 on end |
| 103 | end |
| 104 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 105 | chip ec/lenovo/h8 |
| 106 | device pnp ff.2 on # dummy |
| 107 | io 0x60 = 0x62 |
| 108 | io 0x62 = 0x66 |
| 109 | io 0x64 = 0x1600 |
| 110 | io 0x66 = 0x1604 |
| 111 | end |
| 112 | |
| 113 | register "config0" = "0xa7" |
| 114 | register "config1" = "0x09" |
| 115 | register "config2" = "0xa0" |
| 116 | register "config3" = "0xc2" |
| 117 | |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 118 | register "beepmask0" = "0x00" |
| 119 | register "beepmask1" = "0x86" |
| 120 | register "has_power_management_beeps" = "0" |
| 121 | register "event2_enable" = "0xff" |
| 122 | register "event3_enable" = "0xff" |
| 123 | register "event4_enable" = "0xd0" |
| 124 | register "event5_enable" = "0xfc" |
| 125 | register "event6_enable" = "0x00" |
| 126 | register "event7_enable" = "0x01" |
| 127 | register "event8_enable" = "0x7b" |
| 128 | register "event9_enable" = "0xff" |
| 129 | register "eventa_enable" = "0x01" |
| 130 | register "eventb_enable" = "0x00" |
| 131 | register "eventc_enable" = "0xff" |
| 132 | register "eventd_enable" = "0xff" |
| 133 | register "evente_enable" = "0x0d" |
Patrick Rudolph | b77eec8 | 2017-05-21 09:20:39 +0200 | [diff] [blame] | 134 | |
| 135 | register "has_bdc_detection" = "1" |
| 136 | register "bdc_gpio_num" = "54" |
| 137 | register "bdc_gpio_lvl" = "0" |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 138 | end |
Patrick Rudolph | db27e338 | 2017-07-27 18:00:59 +0200 | [diff] [blame] | 139 | chip drivers/lenovo/hybrid_graphics |
| 140 | device pnp ff.f on end # dummy |
| 141 | |
| 142 | register "detect_gpio" = "21" |
| 143 | |
| 144 | register "has_panel_hybrid_gpio" = "1" |
| 145 | register "panel_hybrid_gpio" = "52" |
| 146 | register "panel_integrated_lvl" = "1" |
| 147 | |
| 148 | register "has_backlight_gpio" = "0" |
| 149 | register "has_dgpu_power_gpio" = "0" |
| 150 | |
| 151 | register "has_thinker1" = "1" |
| 152 | end |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 153 | end # LPC bridge |
| 154 | device pci 1f.2 on end # SATA Controller 1 |
| 155 | device pci 1f.3 on # SMBUS controller |
Elyes HAOUAS | b0f1988 | 2018-06-09 11:59:00 +0200 | [diff] [blame] | 156 | # eeprom, 8 virtual devices, same chip |
Zaolin | a823f9b | 2014-05-06 21:31:45 +0200 | [diff] [blame] | 157 | chip drivers/i2c/at24rf08c |
| 158 | device i2c 54 on end |
| 159 | device i2c 55 on end |
| 160 | device i2c 56 on end |
| 161 | device i2c 57 on end |
| 162 | device i2c 5c on end |
| 163 | device i2c 5d on end |
| 164 | device i2c 5e on end |
| 165 | device i2c 5f on end |
| 166 | end |
| 167 | end # SMBus |
| 168 | end |
| 169 | end |
| 170 | end |