Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 1 | chip northbridge/intel/gm45 |
| 2 | # IGD Displays |
Nico Huber | b0b25c8 | 2020-03-21 20:35:12 +0100 | [diff] [blame] | 3 | register "gfx" = "GMA_STATIC_DISPLAYS(1)" |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 4 | |
Nico Huber | 089790c | 2020-01-25 20:24:20 +0100 | [diff] [blame] | 5 | register "gpu_panel_power_up_delay" = "250" # T1+T2: 25ms |
| 6 | register "gpu_panel_power_down_delay" = "250" # T3: 25ms |
| 7 | register "gpu_panel_power_backlight_on_delay" = "2500" # T5: 250ms |
| 8 | register "gpu_panel_power_backlight_off_delay" = "2500" # Tx: 250ms |
| 9 | register "gpu_panel_power_cycle_delay" = "3" # T4: 200ms |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 10 | |
| 11 | device cpu_cluster 0 on |
Arthur Heymans | 2fb6f68 | 2022-11-07 09:45:19 +0100 | [diff] [blame] | 12 | ops gm45_cpu_bus_ops |
Nico Huber | c570a0e | 2019-02-27 14:32:23 +0100 | [diff] [blame] | 13 | chip cpu/intel/socket_p |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 14 | device lapic 0 on end |
| 15 | end |
| 16 | chip cpu/intel/model_1067x |
| 17 | # Magic APIC ID to locate this chip |
| 18 | device lapic 0xACAC off end |
| 19 | |
| 20 | # Enable Super LFM |
| 21 | register "slfm" = "1" |
| 22 | |
| 23 | # Enable C5, C6 |
| 24 | register "c5" = "1" |
| 25 | register "c6" = "1" |
| 26 | end |
| 27 | end |
| 28 | |
Patrick Rudolph | 266a1f7 | 2016-06-09 18:13:34 +0200 | [diff] [blame] | 29 | register "pci_mmio_size" = "2048" |
| 30 | |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 31 | device domain 0 on |
Arthur Heymans | 2fb6f68 | 2022-11-07 09:45:19 +0100 | [diff] [blame] | 32 | ops gm45_pci_domain_ops |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 33 | device pci 00.0 on |
| 34 | subsystemid 0x17aa 0x20e0 |
| 35 | end # host bridge |
Patrick Rudolph | 830fdc7 | 2016-04-21 07:15:14 +0200 | [diff] [blame] | 36 | device pci 01.0 on end # PCIe Bridge for discrete graphics |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 37 | device pci 02.0 on # VGA |
| 38 | subsystemid 0x17aa 0x20e4 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 39 | end |
| 40 | device pci 02.1 on |
| 41 | subsystemid 0x17aa 0x20e4 |
| 42 | end # Display |
| 43 | device pci 03.0 on |
| 44 | subsystemid 0x17aa 0x20e6 |
| 45 | end # ME |
| 46 | device pci 03.1 off end # ME |
| 47 | device pci 03.2 off end # ME |
| 48 | device pci 03.3 off end # ME |
| 49 | chip southbridge/intel/i82801ix |
| 50 | register "pirqa_routing" = "0x0b" |
| 51 | register "pirqb_routing" = "0x0b" |
| 52 | register "pirqc_routing" = "0x0b" |
| 53 | register "pirqd_routing" = "0x0b" |
| 54 | register "pirqe_routing" = "0x80" |
| 55 | register "pirqf_routing" = "0x80" |
| 56 | register "pirqg_routing" = "0x80" |
| 57 | register "pirqh_routing" = "0x80" |
| 58 | |
| 59 | register "gpi8_routing" = "2" |
| 60 | register "gpe0_en" = "0x01000000" |
| 61 | register "gpi1_routing" = "2" |
| 62 | |
| 63 | # Set AHCI mode, enable ports 1 and 2. |
| 64 | register "sata_port_map" = "0x03" |
| 65 | register "sata_clock_request" = "0" |
| 66 | register "sata_traffic_monitor" = "0" |
| 67 | |
| 68 | # Set c-state support |
Arthur Heymans | 2a1847e | 2016-06-17 19:06:25 +0200 | [diff] [blame] | 69 | register "c4onc3_enable" = "1" |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 70 | register "c5_enable" = "1" |
| 71 | register "c6_enable" = "1" |
| 72 | |
| 73 | # Set thermal throttling to 75%. |
| 74 | register "throttle_duty" = "THTL_75_0" |
| 75 | |
| 76 | # Enable PCIe ports 1,2,4 as slots (Mini * PCIe). |
| 77 | register "pcie_slot_implemented" = "0xb" |
| 78 | # Set power limits to 10 * 10^0 watts. |
| 79 | # Maybe we should set less for Mini PCIe. |
| 80 | register "pcie_power_limits" = "{ { 10, 0 }, { 10, 0 }, { 0, 0 }, { 10, 0 }, { 0, 0 }, { 0, 0 } }" |
| 81 | register "pcie_hotplug_map" = "{ 0, 0, 0, 1, 0, 0, 0, 0 }" |
Arthur Heymans | 9ed0df4 | 2019-10-12 14:18:18 +0200 | [diff] [blame] | 82 | register "gen1_dec" = "0x007c1601" |
| 83 | register "gen2_dec" = "0x000c15e1" |
| 84 | register "gen3_dec" = "0x001c1681" |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 85 | |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 86 | device pci 19.0 on end # LAN |
| 87 | device pci 1a.0 on # UHCI |
| 88 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 89 | end |
| 90 | device pci 1a.1 on # UHCI |
| 91 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 92 | end |
| 93 | device pci 1a.2 on # UHCI |
| 94 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 95 | end |
| 96 | device pci 1a.7 on # EHCI |
| 97 | subsystemid 0x17aa 0x20f1 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 98 | end |
| 99 | device pci 1b.0 on # HD Audio |
| 100 | subsystemid 0x17aa 0x20f2 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 101 | end |
| 102 | device pci 1c.0 on # PCIe Port #1 |
| 103 | subsystemid 0x17aa 0x20f3 # WWAN |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 104 | end |
| 105 | device pci 1c.1 on |
| 106 | subsystemid 0x17aa 0x20f3 # WLAN |
| 107 | end # PCIe Port #2 |
| 108 | device pci 1c.2 on |
| 109 | subsystemid 0x17aa 0x20f3 # UWB |
| 110 | end # PCIe Port #3 |
| 111 | device pci 1c.3 on |
| 112 | subsystemid 0x17aa 0x20f3 # Expresscard |
Patrick Rudolph | 0521632 | 2019-04-12 16:14:27 +0200 | [diff] [blame] | 113 | smbios_slot_desc "7" "3" "ExpressCard Slot" "8" |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 114 | end # PCIe Port #4 |
| 115 | device pci 1c.4 off end # PCIe Port #5 |
| 116 | device pci 1c.5 off end # PCIe Port #6 |
| 117 | device pci 1d.0 on # UHCI |
| 118 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 119 | end |
| 120 | device pci 1d.1 on # UHCI |
| 121 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 122 | end |
| 123 | device pci 1d.2 on # UHCI |
| 124 | subsystemid 0x17aa 0x20f0 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 125 | end |
| 126 | device pci 1d.7 on # EHCI |
| 127 | subsystemid 0x17aa 0x20f1 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 128 | end |
| 129 | device pci 1e.0 on # PCI |
| 130 | subsystemid 0x17aa 0x20f4 |
| 131 | end |
| 132 | device pci 1f.0 on # LPC bridge |
| 133 | subsystemid 0x17aa 0x20f5 |
Arthur Heymans | 2bbffc0 | 2019-01-22 21:22:52 +0100 | [diff] [blame] | 134 | |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 135 | chip ec/lenovo/pmh7 |
Peter Lemenkov | 4ed2598 | 2020-02-06 14:51:27 +0100 | [diff] [blame] | 136 | device pnp ff.1 on end # dummy |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 137 | register "backlight_enable" = "0x01" |
| 138 | register "dock_event_enable" = "0x01" |
| 139 | end |
| 140 | |
| 141 | chip ec/lenovo/h8 |
| 142 | device pnp ff.2 on # dummy |
| 143 | io 0x60 = 0x62 |
| 144 | io 0x62 = 0x66 |
| 145 | io 0x64 = 0x1600 |
| 146 | io 0x66 = 0x1604 |
| 147 | end |
| 148 | |
| 149 | register "config0" = "0xa6" |
| 150 | register "config1" = "0x04" |
| 151 | register "config2" = "0xa0" |
| 152 | register "config3" = "0x01" |
| 153 | |
| 154 | register "beepmask0" = "0xfe" |
| 155 | register "beepmask1" = "0x96" |
| 156 | register "has_power_management_beeps" = "1" |
| 157 | register "has_uwb" = "1" |
| 158 | |
| 159 | register "event2_enable" = "0xff" |
| 160 | register "event3_enable" = "0xff" |
| 161 | register "event4_enable" = "0xf4" |
| 162 | register "event5_enable" = "0x3c" |
| 163 | register "event6_enable" = "0x80" |
| 164 | register "event7_enable" = "0x01" |
| 165 | register "event8_enable" = "0x01" |
| 166 | register "event9_enable" = "0xff" |
| 167 | register "eventa_enable" = "0xff" |
| 168 | register "eventb_enable" = "0xff" |
| 169 | register "eventc_enable" = "0xff" |
| 170 | register "eventd_enable" = "0xff" |
Patrick Rudolph | b77eec8 | 2017-05-21 09:20:39 +0200 | [diff] [blame] | 171 | |
| 172 | register "has_bdc_detection" = "1" |
| 173 | register "bdc_gpio_num" = "48" |
| 174 | register "bdc_gpio_lvl" = "0" |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 175 | end |
| 176 | |
| 177 | chip superio/nsc/pc87382 |
Kyösti Mälkki | 9ab5adb | 2017-01-08 09:07:14 +0200 | [diff] [blame] | 178 | device pnp 164e.2 off end # IR |
| 179 | device pnp 164e.3 off end # Serial Port |
| 180 | device pnp 164e.7 on # GPIO |
| 181 | io 0x60 = 0x1680 |
| 182 | end |
| 183 | device pnp 164e.19 on # DLPC |
| 184 | io 0x60 = 0x164c |
| 185 | end |
| 186 | end |
| 187 | |
| 188 | chip superio/nsc/pc87384 |
| 189 | device pnp 2e.1 on # Parallel Port |
| 190 | io 0x60 = 0x3bc |
| 191 | irq 0x70 = 7 |
| 192 | end |
| 193 | device pnp 2e.2 off end # Serial Port / IR |
| 194 | device pnp 2e.3 on # Serial Port |
| 195 | io 0x60 = 0x3f8 |
| 196 | irq 0x70 = 4 |
| 197 | end |
| 198 | device pnp 2e.7 on # GPIO |
| 199 | io 0x60 = 0x1620 |
| 200 | end |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 201 | end |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 202 | end |
| 203 | device pci 1f.2 on # SATA/IDE 1 |
| 204 | subsystemid 0x17aa 0x20f8 |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 205 | end |
Arthur Heymans | 0318021 | 2018-09-16 18:55:28 +0200 | [diff] [blame] | 206 | device pci 1f.3 on end # SMBus |
Timothy Pearson | 4b373c9 | 2015-04-05 17:54:08 -0500 | [diff] [blame] | 207 | device pci 1f.5 off end # SATA/IDE 2 |
| 208 | device pci 1f.6 off end # Thermal |
| 209 | end |
| 210 | end |
| 211 | end |