Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 30 Apr 2013 15:35:20 +0000 (08:35 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 30 Apr 2013 15:35:20 +0000 (08:35 -0700)
Pull x86 debug update from Ingo Molnar:
 "Two small changes: a documentation update and a constification"

* 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86, early-printk: Update earlyprintk documentation (and kill x86 copy)
  x86: Constify a few items

Documentation/kernel-parameters.txt
Documentation/x86/x86_64/boot-options.txt
arch/x86/kernel/amd_nb.c
arch/x86/kernel/cpu/perf_event_knc.c
arch/x86/kernel/cpu/perf_event_p6.c

index de12397b60a9b1c64d5dec815beedcfedf8d8821..b801a332fb6f26a6a92da99328bbc84d27e36732 100644 (file)
@@ -789,19 +789,31 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
                        (mmio) or 32-bit (mmio32).
                        The options are the same as for ttyS, above.
 
-       earlyprintk=    [X86,SH,BLACKFIN]
+       earlyprintk=    [X86,SH,BLACKFIN,ARM]
                        earlyprintk=vga
                        earlyprintk=xen
                        earlyprintk=serial[,ttySn[,baudrate]]
+                       earlyprintk=serial[,0x...[,baudrate]]
                        earlyprintk=ttySn[,baudrate]
                        earlyprintk=dbgp[debugController#]
 
+                       earlyprintk is useful when the kernel crashes before
+                       the normal console is initialized. It is not enabled by
+                       default because it has some cosmetic problems.
+
                        Append ",keep" to not disable it when the real console
                        takes over.
 
                        Only vga or serial or usb debug port at a time.
 
-                       Currently only ttyS0 and ttyS1 are supported.
+                       Currently only ttyS0 and ttyS1 may be specified by
+                       name.  Other I/O ports may be explicitly specified
+                       on some architectures (x86 and arm at least) by
+                       replacing ttySn with an I/O port address, like this:
+                               earlyprintk=serial,0x1008,115200
+                       You can find the port for a given device in
+                       /proc/tty/driver/serial:
+                               2: uart:ST16650V2 port:00001008 irq:18 ...
 
                        Interaction with the standard serial driver is not
                        very good.
index e015a83c3996262a50e444c3b843e599cc327e1d..e9e8ddbbf376253bd093db46d1695dccd9e06f1e 100644 (file)
@@ -91,20 +91,6 @@ APICs
                 apicmaintimer. Useful when your PIT timer is totally
                 broken.
 
-Early Console
-
-   syntax: earlyprintk=vga
-           earlyprintk=serial[,ttySn[,baudrate]]
-
-   The early console is useful when the kernel crashes before the
-   normal console is initialized. It is not enabled by
-   default because it has some cosmetic problems.
-   Append ,keep to not disable it when the real console takes over.
-   Only vga or serial at a time, not both.
-   Currently only ttyS0 and ttyS1 are supported.
-   Interaction with the standard serial driver is not very good.
-   The VGA output is eventually overwritten by the real console.
-
 Timing
 
   notsc
index aadf3359e2a77660b5ee68ac549b5a82fcad8695..3684129be94795423e5bcd32622f820820b01ab3 100644 (file)
@@ -24,7 +24,7 @@ const struct pci_device_id amd_nb_misc_ids[] = {
 };
 EXPORT_SYMBOL(amd_nb_misc_ids);
 
-static struct pci_device_id amd_nb_link_ids[] = {
+static const struct pci_device_id amd_nb_link_ids[] = {
        { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_15H_NB_F4) },
        {}
 };
index 4b7731bf23a812a4631aa7c53196068924b52ee7..838fa8772c628822cd3bd26b6949af47886fbd4f 100644 (file)
@@ -17,7 +17,7 @@ static const u64 knc_perfmon_event_map[] =
   [PERF_COUNT_HW_BRANCH_MISSES]                = 0x002b,
 };
 
-static __initconst u64 knc_hw_cache_event_ids
+static const u64 __initconst knc_hw_cache_event_ids
                                [PERF_COUNT_HW_CACHE_MAX]
                                [PERF_COUNT_HW_CACHE_OP_MAX]
                                [PERF_COUNT_HW_CACHE_RESULT_MAX] =
@@ -284,7 +284,7 @@ static struct attribute *intel_knc_formats_attr[] = {
        NULL,
 };
 
-static __initconst struct x86_pmu knc_pmu = {
+static const struct x86_pmu knc_pmu __initconst = {
        .name                   = "knc",
        .handle_irq             = knc_pmu_handle_irq,
        .disable_all            = knc_pmu_disable_all,
index 4820c232a0b91421d1ee77b194a8881a13143753..b1e2fe11532329bb9828ac4407f6b10093073187 100644 (file)
@@ -19,7 +19,7 @@ static const u64 p6_perfmon_event_map[] =
 
 };
 
-static u64 p6_hw_cache_event_ids
+static const u64 __initconst p6_hw_cache_event_ids
                                [PERF_COUNT_HW_CACHE_MAX]
                                [PERF_COUNT_HW_CACHE_OP_MAX]
                                [PERF_COUNT_HW_CACHE_RESULT_MAX] =