Commit Graph

1819 Commits

Author SHA1 Message Date
msaitoh
3b894df12f - Change the Upper limit of Tjmax from 100 to 110 because some new
CPUs have 105. This change is the same as FreeBSD.
 - Print Tjmax with aprint_verbose().
 - Reduce the diff against FreeBSD.
2015-05-27 00:16:46 +00:00
msaitoh
c92fa10299 Add new bus clock for Airmont. 2015-05-27 00:08:50 +00:00
msaitoh
ec32285b12 Remove obsolete comment. 2015-05-26 16:08:01 +00:00
msaitoh
27a2a4f94a OOOOPS. Revert previous. 2015-05-18 13:09:55 +00:00
msaitoh
f626fea877 Workaround for "lapic_set_lvt: bad pin value %d" panic on some (broken?) BIOS
system. Don't panic when a local APIC's interrput input pin number (LINTx) > 1.
Instead, print warning message and continue. The default is pin 1.
Same as Linux (and perhaps FreeBSD). Tested with Shuttle DS57U.
2015-05-18 13:04:21 +00:00
msaitoh
8d7cf22ed0 Add Core 5G (mobile) LPC support. 2015-05-17 04:59:43 +00:00
knakahara
117a6cdd67 pci_msi_string() must be used by MD code only. 2015-05-15 08:36:41 +00:00
knakahara
6d12998d34 refactor: change function names and move them. 2015-05-15 08:29:33 +00:00
knakahara
f945a2f765 unify INTx, MSI and MSI-X APIs without alloc. (alloc API is under discussion) 2015-05-15 08:26:44 +00:00
msaitoh
24497ad5c7 Use roundup2() and uintptr_t. Adviced by riastradh@. 2015-05-12 00:00:35 +00:00
msaitoh
b7e9b85478 Re-allocale buffer if a buffer for microcode is not 16byte aligned. 2015-05-11 08:24:50 +00:00
mlelstv
dfeac6dbe6 Don't report EINVAL errors when searching the bootwedge, this error
is most likely the result of reading beyond the end of the wrong disk.
2015-05-10 22:21:38 +00:00
mlelstv
ef0ab974cd If BTINFO_ROOTDEVICE is set but isn't a device name, then treat it
as a root specification. This allows strings like wedge:wedgename.
2015-05-10 22:18:58 +00:00
christos
a711b8a7ae CID 1297228: Use strlcpy 2015-05-09 13:05:51 +00:00
msaitoh
7bd0ea0d0a From Intel SDM:
- Add the Silicon Debug bit in CPUID Fn00000001 %ecx
- Add CPUID Fn0000_0007 %ecx bits
- Add comments.
2015-05-08 07:23:56 +00:00
knakahara
f9deecc437 add a const qualifier to struct pci_attach_args *pa argument 2015-05-08 04:27:48 +00:00
martin
c08c6a5017 Make it compilable without PCI 2015-05-07 12:52:46 +00:00
pgoyette
ed77961ac5 Separate the watchdog code from the pcib code, and make the watchdog
a loadable module.
2015-05-03 02:50:59 +00:00
roy
eb8ede6a66 Fix compile on clang. 2015-05-02 14:30:27 +00:00
martin
92e379c74a Make this compilable in non-DIAGNOSTIC kernels. 2015-04-28 06:23:57 +00:00
knakahara
7f02247480 fix debug message. 2015-04-28 02:38:53 +00:00
knakahara
8ec1d9400a add x86 MD MSI/MSI-X support code. 2015-04-27 07:03:57 +00:00
knakahara
83fd2fa11c add intr_handle_t and let pci_intr_handle_t use it. 2015-04-27 06:51:40 +00:00
knakahara
c65d622dea add pci_intr_distribute(9) for x86. 2015-04-27 06:42:52 +00:00
pgoyette
76a2f91a0e Update module dependencies for all the existing modules that depend on sysmon components. 2015-04-23 23:23:00 +00:00
njoly
9a4e2573e9 Always output 2 digits for the cpu frequency decimal part. 2015-04-16 15:17:17 +00:00
riastradh
4151ea6652 Convert arch/x86 to use <sys/rnd*.h>. Omit needless includes. 2015-04-13 16:03:51 +00:00
knakahara
30c3330477 add prototype declarations 2015-04-08 05:52:41 +00:00
riastradh
92df5caba4 Implement pmap_pv(9) for x86 for P->V tracking of unmanaged pages.
Proposed on tech-kern with no objections:

https://mail-index.netbsd.org/tech-kern/2015/03/26/msg018561.html
2015-04-03 01:04:23 +00:00
msaitoh
e1434c250b Update from Intel SDM:
- Add busclock values for Airmont.
2015-03-27 05:32:38 +00:00
msaitoh
d58067dc04 Add Intel C61x and X99 devices. 2015-03-20 12:01:32 +00:00
msaitoh
521394bf01 Add 9 Series support. 2015-03-18 05:54:14 +00:00
knakahara
4118695e73 add a comment for pci_intr_handle_t. 2015-03-04 05:35:50 +00:00
msaitoh
453034ecde As I wrote in the last commit, The PMBASE and GPIOBASE registers are not
compltible with the PCI spec and the map sizes are fixed to 128bytes. The
pci_mapreg_submap() function has a code to check the range of the BAR. The
PCI_MAPREG_IO_SIZE() macro returns lower than 128bytes on some machines.
It makes impossible to use pci_mapreg_submap(). Use pci_conf_read() and
bus_space_map() directly. Observed and tested with my Thinkpad X61.
2015-01-13 08:57:02 +00:00
christos
1bbf03e8f8 PR/49104: Jarle Greipsland: Don't touch cr4 in cpus that don't have it.
XXX: pullup-7
2015-01-12 16:34:39 +00:00
is
f15c72f671 Add support for the (cobalt) nullcons to amd64 and i386. 2015-01-11 19:54:23 +00:00
ozaki-r
3cde4cbc35 Pass a correct firmware size (instead of 0) to firmware_free
firmware_free now uses kmem_free(9) instead of free(9),
so we need to pass a correct size to it.
2015-01-07 07:05:48 +00:00
mlelstv
8b2f156e46 Avoid NULL pointer dereference if SMBIOS key "system-product" does not
exist.
2014-12-29 14:00:26 +00:00
msaitoh
83c4f0e13c Fix a bug that ichlpcib(4) maps I/O area incorrectly and then fails to attach
gpio. It might also fix ACPI related problem described in PR#48960:
 - The LPCIB_PCI_PMBASE and LPCIB_PCI_GPIO register are alike PCI BAR but not
   completely compatible with it. It's ok because the registers' addresses are
   out of BAR0-BAR5(0x10-0x24) and are located in the device-dependent header.
   The PMBASE and GPIO registers define the base address and the type but not
   describe the size. The size is fixed to 128bytes. So use
   pci_mapreg_submap().
 - Make pci_mapreg_submap() extern again.
 - Fix the calculation of the map size in pci_mapreg_submap().
2014-12-26 05:09:03 +00:00
msaitoh
95c5c3200c - Round off some bus clock values.
- Add 333.33MHz for Pentium 4.
2014-12-17 03:39:02 +00:00
msaitoh
1f3e38b73f Add DH89xxC[CL] LPC devices. 2014-12-15 13:29:42 +00:00
msaitoh
502f3f4787 Use specialreg.h's definitions. 2014-12-12 02:25:55 +00:00
msaitoh
2fb8c49793 Modify around cpu_identify() to not to break the dmesg of cpus with AB_VERBOSE
or AB_DEBUG.
2014-12-08 15:22:47 +00:00
bouyer
4ae5e12ef4 Revert sys/arch/x86/x86/pmap.c 1.185; a CPU needs to get pmap updates,
especially for pmap_kernel(), as soon as it is up.
Instead move all pmap-related cpu_info initialisations, including
initializing ci_kpm_mtx, in cpu_attach_common() from cpu_init()
(ci_pmap and ci_tlbstate as already initialized in cpu_attach_common()).
2014-11-27 16:29:44 +00:00
uebayasi
1049d7be12 Consistently use kpreempt_*() outside scheduler path. 2014-11-27 14:22:09 +00:00
cherry
57125a688b Wait until all cpus are online, before using the codepath
which syncs all per-cpu cached copies of L4 tables.
(On both x86_64 and i386/pae)

This avoids an early bootup mutex use before mutex init situation.

Reported by manu@
2014-11-22 06:45:08 +00:00
ozaki-r
433c9fcdef Replace callout_stop with callout_halt
In order to call callout_destroy for a callout safely, we have to ensure
the function of the callout is not running and pending. To do so, we should
use callout_halt, not callout_stop.

Discussed with martin@ and riastradh@.
2014-11-16 16:20:00 +00:00
christos
c53aa199c7 add an agp dependency so that the agp drivers get loaded. 2014-11-11 02:31:55 +00:00
christos
4d99909a7f print the bad values in panic messages 2014-11-07 12:48:21 +00:00
christos
102e38800e we don't need to keep track of curmode if not vga_post. 2014-11-05 05:07:43 +00:00