diff options
Diffstat (limited to 'Documentation')
44 files changed, 430 insertions, 107 deletions
diff --git a/Documentation/Changes b/Documentation/Changes index 2254db0f00a5..227bec88021e 100644 --- a/Documentation/Changes +++ b/Documentation/Changes | |||
@@ -280,12 +280,9 @@ that is possible. | |||
280 | mcelog | 280 | mcelog |
281 | ------ | 281 | ------ |
282 | 282 | ||
283 | In Linux 2.6.31+ the i386 kernel needs to run the mcelog utility | 283 | On x86 kernels the mcelog utility is needed to process and log machine check |
284 | as a regular cronjob similar to the x86-64 kernel to process and log | 284 | events when CONFIG_X86_MCE is enabled. Machine check events are errors reported |
285 | machine check events when CONFIG_X86_NEW_MCE is enabled. Machine check | 285 | by the CPU. Processing them is strongly encouraged. |
286 | events are errors reported by the CPU. Processing them is strongly encouraged. | ||
287 | All x86-64 kernels since 2.6.4 require the mcelog utility to | ||
288 | process machine checks. | ||
289 | 286 | ||
290 | Getting updated software | 287 | Getting updated software |
291 | ======================== | 288 | ======================== |
diff --git a/Documentation/DocBook/gadget.tmpl b/Documentation/DocBook/gadget.tmpl index 4017f147ba2f..2c425d70f7e2 100644 --- a/Documentation/DocBook/gadget.tmpl +++ b/Documentation/DocBook/gadget.tmpl | |||
@@ -708,7 +708,7 @@ hardware level details could be very different. | |||
708 | 708 | ||
709 | <para>Systems need specialized hardware support to implement OTG, | 709 | <para>Systems need specialized hardware support to implement OTG, |
710 | notably including a special <emphasis>Mini-AB</emphasis> jack | 710 | notably including a special <emphasis>Mini-AB</emphasis> jack |
711 | and associated transciever to support <emphasis>Dual-Role</emphasis> | 711 | and associated transceiver to support <emphasis>Dual-Role</emphasis> |
712 | operation: | 712 | operation: |
713 | they can act either as a host, using the standard | 713 | they can act either as a host, using the standard |
714 | Linux-USB host side driver stack, | 714 | Linux-USB host side driver stack, |
diff --git a/Documentation/DocBook/genericirq.tmpl b/Documentation/DocBook/genericirq.tmpl index 46347f603353..59fb5c077541 100644 --- a/Documentation/DocBook/genericirq.tmpl +++ b/Documentation/DocBook/genericirq.tmpl | |||
@@ -182,7 +182,7 @@ | |||
182 | <para> | 182 | <para> |
183 | Each interrupt is described by an interrupt descriptor structure | 183 | Each interrupt is described by an interrupt descriptor structure |
184 | irq_desc. The interrupt is referenced by an 'unsigned int' numeric | 184 | irq_desc. The interrupt is referenced by an 'unsigned int' numeric |
185 | value which selects the corresponding interrupt decription structure | 185 | value which selects the corresponding interrupt description structure |
186 | in the descriptor structures array. | 186 | in the descriptor structures array. |
187 | The descriptor structure contains status information and pointers | 187 | The descriptor structure contains status information and pointers |
188 | to the interrupt flow method and the interrupt chip structure | 188 | to the interrupt flow method and the interrupt chip structure |
@@ -470,7 +470,7 @@ if (desc->irq_data.chip->irq_eoi) | |||
470 | <para> | 470 | <para> |
471 | To avoid copies of identical implementations of IRQ chips the | 471 | To avoid copies of identical implementations of IRQ chips the |
472 | core provides a configurable generic interrupt chip | 472 | core provides a configurable generic interrupt chip |
473 | implementation. Developers should check carefuly whether the | 473 | implementation. Developers should check carefully whether the |
474 | generic chip fits their needs before implementing the same | 474 | generic chip fits their needs before implementing the same |
475 | functionality slightly differently themselves. | 475 | functionality slightly differently themselves. |
476 | </para> | 476 | </para> |
diff --git a/Documentation/DocBook/kernel-locking.tmpl b/Documentation/DocBook/kernel-locking.tmpl index 19f2a5a5a5b4..e584ee12a1e7 100644 --- a/Documentation/DocBook/kernel-locking.tmpl +++ b/Documentation/DocBook/kernel-locking.tmpl | |||
@@ -1760,7 +1760,7 @@ as it would be on UP. | |||
1760 | </para> | 1760 | </para> |
1761 | 1761 | ||
1762 | <para> | 1762 | <para> |
1763 | There is a furthur optimization possible here: remember our original | 1763 | There is a further optimization possible here: remember our original |
1764 | cache code, where there were no reference counts and the caller simply | 1764 | cache code, where there were no reference counts and the caller simply |
1765 | held the lock whenever using the object? This is still possible: if | 1765 | held the lock whenever using the object? This is still possible: if |
1766 | you hold the lock, no one can delete the object, so you don't need to | 1766 | you hold the lock, no one can delete the object, so you don't need to |
diff --git a/Documentation/DocBook/libata.tmpl b/Documentation/DocBook/libata.tmpl index deb71baed328..d7fcdc5a4379 100644 --- a/Documentation/DocBook/libata.tmpl +++ b/Documentation/DocBook/libata.tmpl | |||
@@ -677,7 +677,7 @@ and other resources, etc. | |||
677 | 677 | ||
678 | <listitem> | 678 | <listitem> |
679 | <para> | 679 | <para> |
680 | ATA_QCFLAG_ACTIVE is clared from qc->flags. | 680 | ATA_QCFLAG_ACTIVE is cleared from qc->flags. |
681 | </para> | 681 | </para> |
682 | </listitem> | 682 | </listitem> |
683 | 683 | ||
@@ -708,7 +708,7 @@ and other resources, etc. | |||
708 | 708 | ||
709 | <listitem> | 709 | <listitem> |
710 | <para> | 710 | <para> |
711 | qc->waiting is claread & completed (in that order). | 711 | qc->waiting is cleared & completed (in that order). |
712 | </para> | 712 | </para> |
713 | </listitem> | 713 | </listitem> |
714 | 714 | ||
@@ -1163,7 +1163,7 @@ and other resources, etc. | |||
1163 | 1163 | ||
1164 | <para> | 1164 | <para> |
1165 | Once sense data is acquired, this type of errors can be | 1165 | Once sense data is acquired, this type of errors can be |
1166 | handled similary to other SCSI errors. Note that sense data | 1166 | handled similarly to other SCSI errors. Note that sense data |
1167 | may indicate ATA bus error (e.g. Sense Key 04h HARDWARE ERROR | 1167 | may indicate ATA bus error (e.g. Sense Key 04h HARDWARE ERROR |
1168 | && ASC/ASCQ 47h/00h SCSI PARITY ERROR). In such | 1168 | && ASC/ASCQ 47h/00h SCSI PARITY ERROR). In such |
1169 | cases, the error should be considered as an ATA bus error and | 1169 | cases, the error should be considered as an ATA bus error and |
diff --git a/Documentation/DocBook/media/Makefile b/Documentation/DocBook/media/Makefile index 1d27f0a1abd1..639e74857968 100644 --- a/Documentation/DocBook/media/Makefile +++ b/Documentation/DocBook/media/Makefile | |||
@@ -202,8 +202,8 @@ $(MEDIA_OBJ_DIR)/%: $(MEDIA_SRC_DIR)/%.b64 | |||
202 | 202 | ||
203 | $(MEDIA_OBJ_DIR)/v4l2.xml: $(OBJIMGFILES) | 203 | $(MEDIA_OBJ_DIR)/v4l2.xml: $(OBJIMGFILES) |
204 | @$($(quiet)gen_xml) | 204 | @$($(quiet)gen_xml) |
205 | @(ln -sf $(MEDIA_SRC_DIR)/v4l/*xml $(MEDIA_OBJ_DIR)/) | 205 | @(ln -sf `cd $(MEDIA_SRC_DIR) && /bin/pwd`/v4l/*xml $(MEDIA_OBJ_DIR)/) |
206 | @(ln -sf $(MEDIA_SRC_DIR)/dvb/*xml $(MEDIA_OBJ_DIR)/) | 206 | @(ln -sf `cd $(MEDIA_SRC_DIR) && /bin/pwd`/dvb/*xml $(MEDIA_OBJ_DIR)/) |
207 | 207 | ||
208 | $(MEDIA_OBJ_DIR)/videodev2.h.xml: $(srctree)/include/uapi/linux/videodev2.h $(MEDIA_OBJ_DIR)/v4l2.xml | 208 | $(MEDIA_OBJ_DIR)/videodev2.h.xml: $(srctree)/include/uapi/linux/videodev2.h $(MEDIA_OBJ_DIR)/v4l2.xml |
209 | @$($(quiet)gen_xml) | 209 | @$($(quiet)gen_xml) |
diff --git a/Documentation/DocBook/media_api.tmpl b/Documentation/DocBook/media_api.tmpl index 4decb46bfa76..03f9a1f8d413 100644 --- a/Documentation/DocBook/media_api.tmpl +++ b/Documentation/DocBook/media_api.tmpl | |||
@@ -68,7 +68,7 @@ | |||
68 | several digital tv standards. While it is called as DVB API, | 68 | several digital tv standards. While it is called as DVB API, |
69 | in fact it covers several different video standards including | 69 | in fact it covers several different video standards including |
70 | DVB-T, DVB-S, DVB-C and ATSC. The API is currently being updated | 70 | DVB-T, DVB-S, DVB-C and ATSC. The API is currently being updated |
71 | to documment support also for DVB-S2, ISDB-T and ISDB-S.</para> | 71 | to document support also for DVB-S2, ISDB-T and ISDB-S.</para> |
72 | <para>The third part covers the Remote Controller API.</para> | 72 | <para>The third part covers the Remote Controller API.</para> |
73 | <para>The fourth part covers the Media Controller API.</para> | 73 | <para>The fourth part covers the Media Controller API.</para> |
74 | <para>For additional information and for the latest development code, | 74 | <para>For additional information and for the latest development code, |
diff --git a/Documentation/DocBook/mtdnand.tmpl b/Documentation/DocBook/mtdnand.tmpl index cd11926e07c7..7da8f0402af5 100644 --- a/Documentation/DocBook/mtdnand.tmpl +++ b/Documentation/DocBook/mtdnand.tmpl | |||
@@ -91,7 +91,7 @@ | |||
91 | <listitem><para> | 91 | <listitem><para> |
92 | [MTD Interface]</para><para> | 92 | [MTD Interface]</para><para> |
93 | These functions provide the interface to the MTD kernel API. | 93 | These functions provide the interface to the MTD kernel API. |
94 | They are not replacable and provide functionality | 94 | They are not replaceable and provide functionality |
95 | which is complete hardware independent. | 95 | which is complete hardware independent. |
96 | </para></listitem> | 96 | </para></listitem> |
97 | <listitem><para> | 97 | <listitem><para> |
@@ -100,14 +100,14 @@ | |||
100 | </para></listitem> | 100 | </para></listitem> |
101 | <listitem><para> | 101 | <listitem><para> |
102 | [GENERIC]</para><para> | 102 | [GENERIC]</para><para> |
103 | Generic functions are not replacable and provide functionality | 103 | Generic functions are not replaceable and provide functionality |
104 | which is complete hardware independent. | 104 | which is complete hardware independent. |
105 | </para></listitem> | 105 | </para></listitem> |
106 | <listitem><para> | 106 | <listitem><para> |
107 | [DEFAULT]</para><para> | 107 | [DEFAULT]</para><para> |
108 | Default functions provide hardware related functionality which is suitable | 108 | Default functions provide hardware related functionality which is suitable |
109 | for most of the implementations. These functions can be replaced by the | 109 | for most of the implementations. These functions can be replaced by the |
110 | board driver if neccecary. Those functions are called via pointers in the | 110 | board driver if necessary. Those functions are called via pointers in the |
111 | NAND chip description structure. The board driver can set the functions which | 111 | NAND chip description structure. The board driver can set the functions which |
112 | should be replaced by board dependent functions before calling nand_scan(). | 112 | should be replaced by board dependent functions before calling nand_scan(). |
113 | If the function pointer is NULL on entry to nand_scan() then the pointer | 113 | If the function pointer is NULL on entry to nand_scan() then the pointer |
@@ -264,7 +264,7 @@ static void board_hwcontrol(struct mtd_info *mtd, int cmd) | |||
264 | is set up nand_scan() is called. This function tries to | 264 | is set up nand_scan() is called. This function tries to |
265 | detect and identify then chip. If a chip is found all the | 265 | detect and identify then chip. If a chip is found all the |
266 | internal data fields are initialized accordingly. | 266 | internal data fields are initialized accordingly. |
267 | The structure(s) have to be zeroed out first and then filled with the neccecary | 267 | The structure(s) have to be zeroed out first and then filled with the necessary |
268 | information about the device. | 268 | information about the device. |
269 | </para> | 269 | </para> |
270 | <programlisting> | 270 | <programlisting> |
@@ -327,7 +327,7 @@ module_init(board_init); | |||
327 | <sect1 id="Exit_function"> | 327 | <sect1 id="Exit_function"> |
328 | <title>Exit function</title> | 328 | <title>Exit function</title> |
329 | <para> | 329 | <para> |
330 | The exit function is only neccecary if the driver is | 330 | The exit function is only necessary if the driver is |
331 | compiled as a module. It releases all resources which | 331 | compiled as a module. It releases all resources which |
332 | are held by the chip driver and unregisters the partitions | 332 | are held by the chip driver and unregisters the partitions |
333 | in the MTD layer. | 333 | in the MTD layer. |
@@ -494,7 +494,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
494 | in this case. See rts_from4.c and diskonchip.c for | 494 | in this case. See rts_from4.c and diskonchip.c for |
495 | implementation reference. In those cases we must also | 495 | implementation reference. In those cases we must also |
496 | use bad block tables on FLASH, because the ECC layout is | 496 | use bad block tables on FLASH, because the ECC layout is |
497 | interferring with the bad block marker positions. | 497 | interfering with the bad block marker positions. |
498 | See bad block table support for details. | 498 | See bad block table support for details. |
499 | </para> | 499 | </para> |
500 | </sect2> | 500 | </sect2> |
@@ -542,7 +542,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
542 | <para> | 542 | <para> |
543 | nand_scan() calls the function nand_default_bbt(). | 543 | nand_scan() calls the function nand_default_bbt(). |
544 | nand_default_bbt() selects appropriate default | 544 | nand_default_bbt() selects appropriate default |
545 | bad block table desriptors depending on the chip information | 545 | bad block table descriptors depending on the chip information |
546 | which was retrieved by nand_scan(). | 546 | which was retrieved by nand_scan(). |
547 | </para> | 547 | </para> |
548 | <para> | 548 | <para> |
@@ -554,7 +554,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
554 | <sect2 id="Flash_based_tables"> | 554 | <sect2 id="Flash_based_tables"> |
555 | <title>Flash based tables</title> | 555 | <title>Flash based tables</title> |
556 | <para> | 556 | <para> |
557 | It may be desired or neccecary to keep a bad block table in FLASH. | 557 | It may be desired or necessary to keep a bad block table in FLASH. |
558 | For AG-AND chips this is mandatory, as they have no factory marked | 558 | For AG-AND chips this is mandatory, as they have no factory marked |
559 | bad blocks. They have factory marked good blocks. The marker pattern | 559 | bad blocks. They have factory marked good blocks. The marker pattern |
560 | is erased when the block is erased to be reused. So in case of | 560 | is erased when the block is erased to be reused. So in case of |
@@ -565,10 +565,10 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
565 | of the blocks. | 565 | of the blocks. |
566 | </para> | 566 | </para> |
567 | <para> | 567 | <para> |
568 | The blocks in which the tables are stored are procteted against | 568 | The blocks in which the tables are stored are protected against |
569 | accidental access by marking them bad in the memory bad block | 569 | accidental access by marking them bad in the memory bad block |
570 | table. The bad block table management functions are allowed | 570 | table. The bad block table management functions are allowed |
571 | to circumvernt this protection. | 571 | to circumvent this protection. |
572 | </para> | 572 | </para> |
573 | <para> | 573 | <para> |
574 | The simplest way to activate the FLASH based bad block table support | 574 | The simplest way to activate the FLASH based bad block table support |
@@ -592,7 +592,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
592 | User defined tables are created by filling out a | 592 | User defined tables are created by filling out a |
593 | nand_bbt_descr structure and storing the pointer in the | 593 | nand_bbt_descr structure and storing the pointer in the |
594 | nand_chip structure member bbt_td before calling nand_scan(). | 594 | nand_chip structure member bbt_td before calling nand_scan(). |
595 | If a mirror table is neccecary a second structure must be | 595 | If a mirror table is necessary a second structure must be |
596 | created and a pointer to this structure must be stored | 596 | created and a pointer to this structure must be stored |
597 | in bbt_md inside the nand_chip structure. If the bbt_md | 597 | in bbt_md inside the nand_chip structure. If the bbt_md |
598 | member is set to NULL then only the main table is used | 598 | member is set to NULL then only the main table is used |
@@ -666,7 +666,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip) | |||
666 | <para> | 666 | <para> |
667 | For automatic placement some blocks must be reserved for | 667 | For automatic placement some blocks must be reserved for |
668 | bad block table storage. The number of reserved blocks is defined | 668 | bad block table storage. The number of reserved blocks is defined |
669 | in the maxblocks member of the babd block table description structure. | 669 | in the maxblocks member of the bad block table description structure. |
670 | Reserving 4 blocks for mirrored tables should be a reasonable number. | 670 | Reserving 4 blocks for mirrored tables should be a reasonable number. |
671 | This also limits the number of blocks which are scanned for the bad | 671 | This also limits the number of blocks which are scanned for the bad |
672 | block table ident pattern. | 672 | block table ident pattern. |
@@ -1068,11 +1068,11 @@ in this page</entry> | |||
1068 | <chapter id="filesystems"> | 1068 | <chapter id="filesystems"> |
1069 | <title>Filesystem support</title> | 1069 | <title>Filesystem support</title> |
1070 | <para> | 1070 | <para> |
1071 | The NAND driver provides all neccecary functions for a | 1071 | The NAND driver provides all necessary functions for a |
1072 | filesystem via the MTD interface. | 1072 | filesystem via the MTD interface. |
1073 | </para> | 1073 | </para> |
1074 | <para> | 1074 | <para> |
1075 | Filesystems must be aware of the NAND pecularities and | 1075 | Filesystems must be aware of the NAND peculiarities and |
1076 | restrictions. One major restrictions of NAND Flash is, that you cannot | 1076 | restrictions. One major restrictions of NAND Flash is, that you cannot |
1077 | write as often as you want to a page. The consecutive writes to a page, | 1077 | write as often as you want to a page. The consecutive writes to a page, |
1078 | before erasing it again, are restricted to 1-3 writes, depending on the | 1078 | before erasing it again, are restricted to 1-3 writes, depending on the |
@@ -1222,7 +1222,7 @@ in this page</entry> | |||
1222 | #define NAND_BBT_VERSION 0x00000100 | 1222 | #define NAND_BBT_VERSION 0x00000100 |
1223 | /* Create a bbt if none axists */ | 1223 | /* Create a bbt if none axists */ |
1224 | #define NAND_BBT_CREATE 0x00000200 | 1224 | #define NAND_BBT_CREATE 0x00000200 |
1225 | /* Write bbt if neccecary */ | 1225 | /* Write bbt if necessary */ |
1226 | #define NAND_BBT_WRITE 0x00001000 | 1226 | #define NAND_BBT_WRITE 0x00001000 |
1227 | /* Read and write back block contents when writing bbt */ | 1227 | /* Read and write back block contents when writing bbt */ |
1228 | #define NAND_BBT_SAVECONTENT 0x00002000 | 1228 | #define NAND_BBT_SAVECONTENT 0x00002000 |
diff --git a/Documentation/DocBook/regulator.tmpl b/Documentation/DocBook/regulator.tmpl index 346e552fa2cc..3b08a085d2c7 100644 --- a/Documentation/DocBook/regulator.tmpl +++ b/Documentation/DocBook/regulator.tmpl | |||
@@ -155,7 +155,7 @@ | |||
155 | release regulators. Functions are | 155 | release regulators. Functions are |
156 | provided to <link linkend='API-regulator-enable'>enable</link> | 156 | provided to <link linkend='API-regulator-enable'>enable</link> |
157 | and <link linkend='API-regulator-disable'>disable</link> the | 157 | and <link linkend='API-regulator-disable'>disable</link> the |
158 | reguator and to get and set the runtime parameters of the | 158 | regulator and to get and set the runtime parameters of the |
159 | regulator. | 159 | regulator. |
160 | </para> | 160 | </para> |
161 | <para> | 161 | <para> |
diff --git a/Documentation/DocBook/uio-howto.tmpl b/Documentation/DocBook/uio-howto.tmpl index 95618159e29b..bbe9c1fd5cef 100644 --- a/Documentation/DocBook/uio-howto.tmpl +++ b/Documentation/DocBook/uio-howto.tmpl | |||
@@ -766,10 +766,10 @@ framework to set up sysfs files for this region. Simply leave it alone. | |||
766 | <para> | 766 | <para> |
767 | The dynamic memory regions will be allocated when the UIO device file, | 767 | The dynamic memory regions will be allocated when the UIO device file, |
768 | <varname>/dev/uioX</varname> is opened. | 768 | <varname>/dev/uioX</varname> is opened. |
769 | Simiar to static memory resources, the memory region information for | 769 | Similar to static memory resources, the memory region information for |
770 | dynamic regions is then visible via sysfs at | 770 | dynamic regions is then visible via sysfs at |
771 | <varname>/sys/class/uio/uioX/maps/mapY/*</varname>. | 771 | <varname>/sys/class/uio/uioX/maps/mapY/*</varname>. |
772 | The dynmaic memory regions will be freed when the UIO device file is | 772 | The dynamic memory regions will be freed when the UIO device file is |
773 | closed. When no processes are holding the device file open, the address | 773 | closed. When no processes are holding the device file open, the address |
774 | returned to userspace is ~0. | 774 | returned to userspace is ~0. |
775 | </para> | 775 | </para> |
diff --git a/Documentation/DocBook/usb.tmpl b/Documentation/DocBook/usb.tmpl index 8d57c1888dca..85fc0e28576f 100644 --- a/Documentation/DocBook/usb.tmpl +++ b/Documentation/DocBook/usb.tmpl | |||
@@ -153,7 +153,7 @@ | |||
153 | 153 | ||
154 | <listitem><para>The Linux USB API supports synchronous calls for | 154 | <listitem><para>The Linux USB API supports synchronous calls for |
155 | control and bulk messages. | 155 | control and bulk messages. |
156 | It also supports asynchnous calls for all kinds of data transfer, | 156 | It also supports asynchronous calls for all kinds of data transfer, |
157 | using request structures called "URBs" (USB Request Blocks). | 157 | using request structures called "URBs" (USB Request Blocks). |
158 | </para></listitem> | 158 | </para></listitem> |
159 | 159 | ||
diff --git a/Documentation/DocBook/writing-an-alsa-driver.tmpl b/Documentation/DocBook/writing-an-alsa-driver.tmpl index d0056a4e9c53..6f639d9530b5 100644 --- a/Documentation/DocBook/writing-an-alsa-driver.tmpl +++ b/Documentation/DocBook/writing-an-alsa-driver.tmpl | |||
@@ -5696,7 +5696,7 @@ struct _snd_pcm_runtime { | |||
5696 | suspending the PCM operations via | 5696 | suspending the PCM operations via |
5697 | <function>snd_pcm_suspend_all()</function> or | 5697 | <function>snd_pcm_suspend_all()</function> or |
5698 | <function>snd_pcm_suspend()</function>. It means that the PCM | 5698 | <function>snd_pcm_suspend()</function>. It means that the PCM |
5699 | streams are already stoppped when the register snapshot is | 5699 | streams are already stopped when the register snapshot is |
5700 | taken. But, remember that you don't have to restart the PCM | 5700 | taken. But, remember that you don't have to restart the PCM |
5701 | stream in the resume callback. It'll be restarted via | 5701 | stream in the resume callback. It'll be restarted via |
5702 | trigger call with <constant>SNDRV_PCM_TRIGGER_RESUME</constant> | 5702 | trigger call with <constant>SNDRV_PCM_TRIGGER_RESUME</constant> |
diff --git a/Documentation/accounting/getdelays.c b/Documentation/accounting/getdelays.c index c6a06b71594d..f40578026a04 100644 --- a/Documentation/accounting/getdelays.c +++ b/Documentation/accounting/getdelays.c | |||
@@ -314,6 +314,7 @@ int main(int argc, char *argv[]) | |||
314 | break; | 314 | break; |
315 | case 'm': | 315 | case 'm': |
316 | strncpy(cpumask, optarg, sizeof(cpumask)); | 316 | strncpy(cpumask, optarg, sizeof(cpumask)); |
317 | cpumask[sizeof(cpumask) - 1] = '\0'; | ||
317 | maskset = 1; | 318 | maskset = 1; |
318 | printf("cpumask %s maskset %d\n", cpumask, maskset); | 319 | printf("cpumask %s maskset %d\n", cpumask, maskset); |
319 | break; | 320 | break; |
diff --git a/Documentation/acpi/enumeration.txt b/Documentation/acpi/enumeration.txt index fd786ea13a1f..e182be5e3c83 100644 --- a/Documentation/acpi/enumeration.txt +++ b/Documentation/acpi/enumeration.txt | |||
@@ -60,12 +60,6 @@ If the driver needs to perform more complex initialization like getting and | |||
60 | configuring GPIOs it can get its ACPI handle and extract this information | 60 | configuring GPIOs it can get its ACPI handle and extract this information |
61 | from ACPI tables. | 61 | from ACPI tables. |
62 | 62 | ||
63 | Currently the kernel is not able to automatically determine from which ACPI | ||
64 | device it should make the corresponding platform device so we need to add | ||
65 | the ACPI device explicitly to acpi_platform_device_ids list defined in | ||
66 | drivers/acpi/acpi_platform.c. This limitation is only for the platform | ||
67 | devices, SPI and I2C devices are created automatically as described below. | ||
68 | |||
69 | DMA support | 63 | DMA support |
70 | ~~~~~~~~~~~ | 64 | ~~~~~~~~~~~ |
71 | DMA controllers enumerated via ACPI should be registered in the system to | 65 | DMA controllers enumerated via ACPI should be registered in the system to |
diff --git a/Documentation/cpu-freq/intel-pstate.txt b/Documentation/cpu-freq/intel-pstate.txt index e742d21dbd96..a69ffe1d54d5 100644 --- a/Documentation/cpu-freq/intel-pstate.txt +++ b/Documentation/cpu-freq/intel-pstate.txt | |||
@@ -15,10 +15,13 @@ New sysfs files for controlling P state selection have been added to | |||
15 | /sys/devices/system/cpu/intel_pstate/ | 15 | /sys/devices/system/cpu/intel_pstate/ |
16 | 16 | ||
17 | max_perf_pct: limits the maximum P state that will be requested by | 17 | max_perf_pct: limits the maximum P state that will be requested by |
18 | the driver stated as a percentage of the available performance. | 18 | the driver stated as a percentage of the available performance. The |
19 | available (P states) performance may be reduced by the no_turbo | ||
20 | setting described below. | ||
19 | 21 | ||
20 | min_perf_pct: limits the minimum P state that will be requested by | 22 | min_perf_pct: limits the minimum P state that will be requested by |
21 | the driver stated as a percentage of the available performance. | 23 | the driver stated as a percentage of the max (non-turbo) |
24 | performance level. | ||
22 | 25 | ||
23 | no_turbo: limits the driver to selecting P states below the turbo | 26 | no_turbo: limits the driver to selecting P states below the turbo |
24 | frequency range. | 27 | frequency range. |
diff --git a/Documentation/devicetree/bindings/arm/armada-38x.txt b/Documentation/devicetree/bindings/arm/armada-38x.txt index 11f2330a6554..ad9f8ed4d9bd 100644 --- a/Documentation/devicetree/bindings/arm/armada-38x.txt +++ b/Documentation/devicetree/bindings/arm/armada-38x.txt | |||
@@ -6,5 +6,15 @@ following property: | |||
6 | 6 | ||
7 | Required root node property: | 7 | Required root node property: |
8 | 8 | ||
9 | - compatible: must contain either "marvell,armada380" or | 9 | - compatible: must contain "marvell,armada380" |
10 | "marvell,armada385" depending on the variant of the SoC being used. | 10 | |
11 | In addition, boards using the Marvell Armada 385 SoC shall have the | ||
12 | following property before the previous one: | ||
13 | |||
14 | Required root node property: | ||
15 | |||
16 | compatible: must contain "marvell,armada385" | ||
17 | |||
18 | Example: | ||
19 | |||
20 | compatible = "marvell,a385-rd", "marvell,armada385", "marvell,armada380"; | ||
diff --git a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt index 5216b419016a..8b4f7b7fe88b 100644 --- a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt +++ b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt | |||
@@ -9,6 +9,18 @@ Required Properties: | |||
9 | - reg: physical base address of the controller and length of memory mapped | 9 | - reg: physical base address of the controller and length of memory mapped |
10 | region. | 10 | region. |
11 | 11 | ||
12 | Optional Properties: | ||
13 | - clocks: List of clock handles. The parent clocks of the input clocks to the | ||
14 | devices in this power domain are set to oscclk before power gating | ||
15 | and restored back after powering on a domain. This is required for | ||
16 | all domains which are powered on and off and not required for unused | ||
17 | domains. | ||
18 | - clock-names: The following clocks can be specified: | ||
19 | - oscclk: Oscillator clock. | ||
20 | - pclkN, clkN: Pairs of parent of input clock and input clock to the | ||
21 | devices in this power domain. Maximum of 4 pairs (N = 0 to 3) | ||
22 | are supported currently. | ||
23 | |||
12 | Node of a device using power domains must have a samsung,power-domain property | 24 | Node of a device using power domains must have a samsung,power-domain property |
13 | defined with a phandle to respective power domain. | 25 | defined with a phandle to respective power domain. |
14 | 26 | ||
@@ -19,6 +31,14 @@ Example: | |||
19 | reg = <0x10023C00 0x10>; | 31 | reg = <0x10023C00 0x10>; |
20 | }; | 32 | }; |
21 | 33 | ||
34 | mfc_pd: power-domain@10044060 { | ||
35 | compatible = "samsung,exynos4210-pd"; | ||
36 | reg = <0x10044060 0x20>; | ||
37 | clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MOUT_SW_ACLK333>, | ||
38 | <&clock CLK_MOUT_USER_ACLK333>; | ||
39 | clock-names = "oscclk", "pclk0", "clk0"; | ||
40 | }; | ||
41 | |||
22 | Example of the node using power domain: | 42 | Example of the node using power domain: |
23 | 43 | ||
24 | node { | 44 | node { |
diff --git a/Documentation/devicetree/bindings/arm/l2cc.txt b/Documentation/devicetree/bindings/arm/l2cc.txt index b513cb8196fe..af527ee111c2 100644 --- a/Documentation/devicetree/bindings/arm/l2cc.txt +++ b/Documentation/devicetree/bindings/arm/l2cc.txt | |||
@@ -40,6 +40,9 @@ Optional properties: | |||
40 | - arm,filter-ranges : <start length> Starting address and length of window to | 40 | - arm,filter-ranges : <start length> Starting address and length of window to |
41 | filter. Addresses in the filter window are directed to the M1 port. Other | 41 | filter. Addresses in the filter window are directed to the M1 port. Other |
42 | addresses will go to the M0 port. | 42 | addresses will go to the M0 port. |
43 | - arm,io-coherent : indicates that the system is operating in an hardware | ||
44 | I/O coherent mode. Valid only when the arm,pl310-cache compatible | ||
45 | string is used. | ||
43 | - interrupts : 1 combined interrupt. | 46 | - interrupts : 1 combined interrupt. |
44 | - cache-id-part: cache id part number to be used if it is not present | 47 | - cache-id-part: cache id part number to be used if it is not present |
45 | on hardware | 48 | on hardware |
diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt b/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt index 5d49f2b37f68..832fe8cc24d7 100644 --- a/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt +++ b/Documentation/devicetree/bindings/arm/samsung/exynos-adc.txt | |||
@@ -48,7 +48,7 @@ adc@12D10000 { | |||
48 | 48 | ||
49 | /* NTC thermistor is a hwmon device */ | 49 | /* NTC thermistor is a hwmon device */ |
50 | ncp15wb473@0 { | 50 | ncp15wb473@0 { |
51 | compatible = "ntc,ncp15wb473"; | 51 | compatible = "murata,ncp15wb473"; |
52 | pullup-uv = <1800000>; | 52 | pullup-uv = <1800000>; |
53 | pullup-ohm = <47000>; | 53 | pullup-ohm = <47000>; |
54 | pulldown-ohm = <0>; | 54 | pulldown-ohm = <0>; |
diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt b/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt index f055515d2b62..366690cb86a3 100644 --- a/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt +++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt | |||
@@ -8,10 +8,12 @@ Both required and optional properties listed below must be defined | |||
8 | under node /cpus/cpu@0. | 8 | under node /cpus/cpu@0. |
9 | 9 | ||
10 | Required properties: | 10 | Required properties: |
11 | - operating-points: Refer to Documentation/devicetree/bindings/power/opp.txt | 11 | - None |
12 | for details | ||
13 | 12 | ||
14 | Optional properties: | 13 | Optional properties: |
14 | - operating-points: Refer to Documentation/devicetree/bindings/power/opp.txt for | ||
15 | details. OPPs *must* be supplied either via DT, i.e. this property, or | ||
16 | populated at runtime. | ||
15 | - clock-latency: Specify the possible maximum transition latency for clock, | 17 | - clock-latency: Specify the possible maximum transition latency for clock, |
16 | in unit of nanoseconds. | 18 | in unit of nanoseconds. |
17 | - voltage-tolerance: Specify the CPU voltage tolerance in percentage. | 19 | - voltage-tolerance: Specify the CPU voltage tolerance in percentage. |
diff --git a/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt b/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt index c6f66674f19c..b117b2e9e1a7 100644 --- a/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt +++ b/Documentation/devicetree/bindings/hwmon/ntc_thermistor.txt | |||
@@ -3,11 +3,19 @@ NTC Thermistor hwmon sensors | |||
3 | 3 | ||
4 | Requires node properties: | 4 | Requires node properties: |
5 | - "compatible" value : one of | 5 | - "compatible" value : one of |
6 | "ntc,ncp15wb473" | 6 | "murata,ncp15wb473" |
7 | "ntc,ncp18wb473" | 7 | "murata,ncp18wb473" |
8 | "ntc,ncp21wb473" | 8 | "murata,ncp21wb473" |
9 | "ntc,ncp03wb473" | 9 | "murata,ncp03wb473" |
10 | "ntc,ncp15wl333" | 10 | "murata,ncp15wl333" |
11 | |||
12 | /* Usage of vendor name "ntc" is deprecated */ | ||
13 | <DEPRECATED> "ntc,ncp15wb473" | ||
14 | <DEPRECATED> "ntc,ncp18wb473" | ||
15 | <DEPRECATED> "ntc,ncp21wb473" | ||
16 | <DEPRECATED> "ntc,ncp03wb473" | ||
17 | <DEPRECATED> "ntc,ncp15wl333" | ||
18 | |||
11 | - "pullup-uv" Pull up voltage in micro volts | 19 | - "pullup-uv" Pull up voltage in micro volts |
12 | - "pullup-ohm" Pull up resistor value in ohms | 20 | - "pullup-ohm" Pull up resistor value in ohms |
13 | - "pulldown-ohm" Pull down resistor value in ohms | 21 | - "pulldown-ohm" Pull down resistor value in ohms |
@@ -21,7 +29,7 @@ Read more about iio bindings at | |||
21 | 29 | ||
22 | Example: | 30 | Example: |
23 | ncp15wb473@0 { | 31 | ncp15wb473@0 { |
24 | compatible = "ntc,ncp15wb473"; | 32 | compatible = "murata,ncp15wb473"; |
25 | pullup-uv = <1800000>; | 33 | pullup-uv = <1800000>; |
26 | pullup-ohm = <47000>; | 34 | pullup-ohm = <47000>; |
27 | pulldown-ohm = <0>; | 35 | pulldown-ohm = <0>; |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt new file mode 100644 index 000000000000..dde6c22ce91a --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-rk3x.txt | |||
@@ -0,0 +1,42 @@ | |||
1 | * Rockchip RK3xxx I2C controller | ||
2 | |||
3 | This driver interfaces with the native I2C controller present in Rockchip | ||
4 | RK3xxx SoCs. | ||
5 | |||
6 | Required properties : | ||
7 | |||
8 | - reg : Offset and length of the register set for the device | ||
9 | - compatible : should be "rockchip,rk3066-i2c", "rockchip,rk3188-i2c" or | ||
10 | "rockchip,rk3288-i2c". | ||
11 | - interrupts : interrupt number | ||
12 | - clocks : parent clock | ||
13 | |||
14 | Required on RK3066, RK3188 : | ||
15 | |||
16 | - rockchip,grf : the phandle of the syscon node for the general register | ||
17 | file (GRF) | ||
18 | - on those SoCs an alias with the correct I2C bus ID (bit offset in the GRF) | ||
19 | is also required. | ||
20 | |||
21 | Optional properties : | ||
22 | |||
23 | - clock-frequency : SCL frequency to use (in Hz). If omitted, 100kHz is used. | ||
24 | |||
25 | Example: | ||
26 | |||
27 | aliases { | ||
28 | i2c0 = &i2c0; | ||
29 | } | ||
30 | |||
31 | i2c0: i2c@2002d000 { | ||
32 | compatible = "rockchip,rk3188-i2c"; | ||
33 | reg = <0x2002d000 0x1000>; | ||
34 | interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; | ||
35 | #address-cells = <1>; | ||
36 | #size-cells = <0>; | ||
37 | |||
38 | rockchip,grf = <&grf>; | ||
39 | |||
40 | clock-names = "i2c"; | ||
41 | clocks = <&cru PCLK_I2C0>; | ||
42 | }; | ||
diff --git a/Documentation/devicetree/bindings/i2c/i2c-sunxi-p2wi.txt b/Documentation/devicetree/bindings/i2c/i2c-sunxi-p2wi.txt new file mode 100644 index 000000000000..6b765485af7d --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-sunxi-p2wi.txt | |||
@@ -0,0 +1,41 @@ | |||
1 | |||
2 | * Allwinner P2WI (Push/Pull 2 Wire Interface) controller | ||
3 | |||
4 | Required properties : | ||
5 | |||
6 | - reg : Offset and length of the register set for the device. | ||
7 | - compatible : Should one of the following: | ||
8 | - "allwinner,sun6i-a31-p2wi" | ||
9 | - interrupts : The interrupt line connected to the P2WI peripheral. | ||
10 | - clocks : The gate clk connected to the P2WI peripheral. | ||
11 | - resets : The reset line connected to the P2WI peripheral. | ||
12 | |||
13 | Optional properties : | ||
14 | |||
15 | - clock-frequency : Desired P2WI bus clock frequency in Hz. If not set the | ||
16 | default frequency is 100kHz | ||
17 | |||
18 | A P2WI may contain one child node encoding a P2WI slave device. | ||
19 | |||
20 | Slave device properties: | ||
21 | Required properties: | ||
22 | - reg : the I2C slave address used during the initialization | ||
23 | process to switch from I2C to P2WI mode | ||
24 | |||
25 | Example: | ||
26 | |||
27 | p2wi@01f03400 { | ||
28 | compatible = "allwinner,sun6i-a31-p2wi"; | ||
29 | reg = <0x01f03400 0x400>; | ||
30 | interrupts = <0 39 4>; | ||
31 | clocks = <&apb0_gates 3>; | ||
32 | clock-frequency = <6000000>; | ||
33 | resets = <&apb0_rst 3>; | ||
34 | |||
35 | axp221: pmic@68 { | ||
36 | compatible = "x-powers,axp221"; | ||
37 | reg = <0x68>; | ||
38 | |||
39 | /* ... */ | ||
40 | }; | ||
41 | }; | ||
diff --git a/Documentation/devicetree/bindings/serial/renesas,sci-serial.txt b/Documentation/devicetree/bindings/serial/renesas,sci-serial.txt index 64fd7dec1bbc..b3556609a06f 100644 --- a/Documentation/devicetree/bindings/serial/renesas,sci-serial.txt +++ b/Documentation/devicetree/bindings/serial/renesas,sci-serial.txt | |||
@@ -4,6 +4,13 @@ Required properties: | |||
4 | 4 | ||
5 | - compatible: Must contain one of the following: | 5 | - compatible: Must contain one of the following: |
6 | 6 | ||
7 | - "renesas,scifa-sh73a0" for SH73A0 (SH-Mobile AG5) SCIFA compatible UART. | ||
8 | - "renesas,scifb-sh73a0" for SH73A0 (SH-Mobile AG5) SCIFB compatible UART. | ||
9 | - "renesas,scifa-r8a73a4" for R8A73A4 (R-Mobile APE6) SCIFA compatible UART. | ||
10 | - "renesas,scifb-r8a73a4" for R8A73A4 (R-Mobile APE6) SCIFB compatible UART. | ||
11 | - "renesas,scifa-r8a7740" for R8A7740 (R-Mobile A1) SCIFA compatible UART. | ||
12 | - "renesas,scifb-r8a7740" for R8A7740 (R-Mobile A1) SCIFB compatible UART. | ||
13 | - "renesas,scif-r8a7778" for R8A7778 (R-Car M1) SCIF compatible UART. | ||
7 | - "renesas,scif-r8a7779" for R8A7779 (R-Car H1) SCIF compatible UART. | 14 | - "renesas,scif-r8a7779" for R8A7779 (R-Car H1) SCIF compatible UART. |
8 | - "renesas,scif-r8a7790" for R8A7790 (R-Car H2) SCIF compatible UART. | 15 | - "renesas,scif-r8a7790" for R8A7790 (R-Car H2) SCIF compatible UART. |
9 | - "renesas,scifa-r8a7790" for R8A7790 (R-Car H2) SCIFA compatible UART. | 16 | - "renesas,scifa-r8a7790" for R8A7790 (R-Car H2) SCIFA compatible UART. |
diff --git a/Documentation/devicetree/bindings/sound/ak5386.txt b/Documentation/devicetree/bindings/sound/ak5386.txt index dc3914fe6ce8..ec3df3abba0c 100644 --- a/Documentation/devicetree/bindings/sound/ak5386.txt +++ b/Documentation/devicetree/bindings/sound/ak5386.txt | |||
@@ -10,10 +10,14 @@ Optional properties: | |||
10 | 10 | ||
11 | - reset-gpio : a GPIO spec for the reset/power down pin. | 11 | - reset-gpio : a GPIO spec for the reset/power down pin. |
12 | If specified, it will be deasserted at probe time. | 12 | If specified, it will be deasserted at probe time. |
13 | - va-supply : a regulator spec, providing 5.0V | ||
14 | - vd-supply : a regulator spec, providing 3.3V | ||
13 | 15 | ||
14 | Example: | 16 | Example: |
15 | 17 | ||
16 | spdif: ak5386@0 { | 18 | spdif: ak5386@0 { |
17 | compatible = "asahi-kasei,ak5386"; | 19 | compatible = "asahi-kasei,ak5386"; |
18 | reset-gpio = <&gpio0 23>; | 20 | reset-gpio = <&gpio0 23>; |
21 | va-supply = <&vdd_5v0_reg>; | ||
22 | vd-supply = <&vdd_3v3_reg>; | ||
19 | }; | 23 | }; |
diff --git a/Documentation/devicetree/bindings/sound/cs4265.txt b/Documentation/devicetree/bindings/sound/cs4265.txt new file mode 100644 index 000000000000..380fff8e4e83 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/cs4265.txt | |||
@@ -0,0 +1,29 @@ | |||
1 | CS4265 audio CODEC | ||
2 | |||
3 | This device supports I2C only. | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible : "cirrus,cs4265" | ||
8 | |||
9 | - reg : the I2C address of the device for I2C. The I2C address depends on | ||
10 | the state of the AD0 pin. If AD0 is high, the i2c address is 0x4f. | ||
11 | If it is low, the i2c address is 0x4e. | ||
12 | |||
13 | Optional properties: | ||
14 | |||
15 | - reset-gpios : a GPIO spec for the reset pin. If specified, it will be | ||
16 | deasserted before communication to the codec starts. | ||
17 | |||
18 | Examples: | ||
19 | |||
20 | codec_ad0_high: cs4265@4f { /* AD0 Pin is high */ | ||
21 | compatible = "cirrus,cs4265"; | ||
22 | reg = <0x4f>; | ||
23 | }; | ||
24 | |||
25 | |||
26 | codec_ad0_low: cs4265@4e { /* AD0 Pin is low */ | ||
27 | compatible = "cirrus,cs4265"; | ||
28 | reg = <0x4e>; | ||
29 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/fsl,asrc.txt b/Documentation/devicetree/bindings/sound/fsl,asrc.txt new file mode 100644 index 000000000000..b93362a570be --- /dev/null +++ b/Documentation/devicetree/bindings/sound/fsl,asrc.txt | |||
@@ -0,0 +1,60 @@ | |||
1 | Freescale Asynchronous Sample Rate Converter (ASRC) Controller | ||
2 | |||
3 | The Asynchronous Sample Rate Converter (ASRC) converts the sampling rate of a | ||
4 | signal associated with an input clock into a signal associated with a different | ||
5 | output clock. The driver currently works as a Front End of DPCM with other Back | ||
6 | Ends Audio controller such as ESAI, SSI and SAI. It has three pairs to support | ||
7 | three substreams within totally 10 channels. | ||
8 | |||
9 | Required properties: | ||
10 | |||
11 | - compatible : Contains "fsl,imx35-asrc" or "fsl,imx53-asrc". | ||
12 | |||
13 | - reg : Offset and length of the register set for the device. | ||
14 | |||
15 | - interrupts : Contains the spdif interrupt. | ||
16 | |||
17 | - dmas : Generic dma devicetree binding as described in | ||
18 | Documentation/devicetree/bindings/dma/dma.txt. | ||
19 | |||
20 | - dma-names : Contains "rxa", "rxb", "rxc", "txa", "txb" and "txc". | ||
21 | |||
22 | - clocks : Contains an entry for each entry in clock-names. | ||
23 | |||
24 | - clock-names : Contains the following entries | ||
25 | "mem" Peripheral access clock to access registers. | ||
26 | "ipg" Peripheral clock to driver module. | ||
27 | "asrck_<0-f>" Clock sources for input and output clock. | ||
28 | |||
29 | - big-endian : If this property is absent, the little endian mode | ||
30 | will be in use as default. Otherwise, the big endian | ||
31 | mode will be in use for all the device registers. | ||
32 | |||
33 | - fsl,asrc-rate : Defines a mutual sample rate used by DPCM Back Ends. | ||
34 | |||
35 | - fsl,asrc-width : Defines a mutual sample width used by DPCM Back Ends. | ||
36 | |||
37 | Example: | ||
38 | |||
39 | asrc: asrc@02034000 { | ||
40 | compatible = "fsl,imx53-asrc"; | ||
41 | reg = <0x02034000 0x4000>; | ||
42 | interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>; | ||
43 | clocks = <&clks 107>, <&clks 107>, <&clks 0>, | ||
44 | <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, | ||
45 | <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, | ||
46 | <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>, | ||
47 | <&clks 107>, <&clks 0>, <&clks 0>; | ||
48 | clock-names = "mem", "ipg", "asrck0", | ||
49 | "asrck_1", "asrck_2", "asrck_3", "asrck_4", | ||
50 | "asrck_5", "asrck_6", "asrck_7", "asrck_8", | ||
51 | "asrck_9", "asrck_a", "asrck_b", "asrck_c", | ||
52 | "asrck_d", "asrck_e", "asrck_f"; | ||
53 | dmas = <&sdma 17 23 1>, <&sdma 18 23 1>, <&sdma 19 23 1>, | ||
54 | <&sdma 20 23 1>, <&sdma 21 23 1>, <&sdma 22 23 1>; | ||
55 | dma-names = "rxa", "rxb", "rxc", | ||
56 | "txa", "txb", "txc"; | ||
57 | fsl,asrc-rate = <48000>; | ||
58 | fsl,asrc-width = <16>; | ||
59 | status = "okay"; | ||
60 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.txt b/Documentation/devicetree/bindings/sound/renesas,rsnd.txt index 8346cab046cd..aa697abf337e 100644 --- a/Documentation/devicetree/bindings/sound/renesas,rsnd.txt +++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.txt | |||
@@ -13,6 +13,9 @@ Required properties: | |||
13 | - rcar_sound,src : Should contain SRC feature. | 13 | - rcar_sound,src : Should contain SRC feature. |
14 | The number of SRC subnode should be same as HW. | 14 | The number of SRC subnode should be same as HW. |
15 | see below for detail. | 15 | see below for detail. |
16 | - rcar_sound,dvc : Should contain DVC feature. | ||
17 | The number of DVC subnode should be same as HW. | ||
18 | see below for detail. | ||
16 | - rcar_sound,dai : DAI contents. | 19 | - rcar_sound,dai : DAI contents. |
17 | The number of DAI subnode should be same as HW. | 20 | The number of DAI subnode should be same as HW. |
18 | see below for detail. | 21 | see below for detail. |
@@ -21,6 +24,7 @@ SSI subnode properties: | |||
21 | - interrupts : Should contain SSI interrupt for PIO transfer | 24 | - interrupts : Should contain SSI interrupt for PIO transfer |
22 | - shared-pin : if shared clock pin | 25 | - shared-pin : if shared clock pin |
23 | - pio-transfer : use PIO transfer mode | 26 | - pio-transfer : use PIO transfer mode |
27 | - no-busif : BUSIF is not ussed when [mem -> SSI] via DMA case | ||
24 | 28 | ||
25 | SRC subnode properties: | 29 | SRC subnode properties: |
26 | no properties at this point | 30 | no properties at this point |
@@ -39,6 +43,11 @@ rcar_sound: rcar_sound@0xffd90000 { | |||
39 | <0 0xec540000 0 0x1000>, /* SSIU */ | 43 | <0 0xec540000 0 0x1000>, /* SSIU */ |
40 | <0 0xec541000 0 0x1280>; /* SSI */ | 44 | <0 0xec541000 0 0x1280>; /* SSI */ |
41 | 45 | ||
46 | rcar_sound,dvc { | ||
47 | dvc0: dvc@0 { }; | ||
48 | dvc1: dvc@1 { }; | ||
49 | }; | ||
50 | |||
42 | rcar_sound,src { | 51 | rcar_sound,src { |
43 | src0: src@0 { }; | 52 | src0: src@0 { }; |
44 | src1: src@1 { }; | 53 | src1: src@1 { }; |
diff --git a/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt index b82a268f1bd4..bee6ff204baf 100644 --- a/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt +++ b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt | |||
@@ -23,6 +23,12 @@ Optional properties: | |||
23 | - spi-max-frequency: Specifies maximum SPI clock frequency, | 23 | - spi-max-frequency: Specifies maximum SPI clock frequency, |
24 | Units - Hz. Definition as per | 24 | Units - Hz. Definition as per |
25 | Documentation/devicetree/bindings/spi/spi-bus.txt | 25 | Documentation/devicetree/bindings/spi/spi-bus.txt |
26 | - num-cs: total number of chipselects | ||
27 | - cs-gpios: should specify GPIOs used for chipselects. | ||
28 | The gpios will be referred to as reg = <index> in the SPI child | ||
29 | nodes. If unspecified, a single SPI device without a chip | ||
30 | select can be used. | ||
31 | |||
26 | 32 | ||
27 | SPI slave nodes must be children of the SPI master node and can contain | 33 | SPI slave nodes must be children of the SPI master node and can contain |
28 | properties described in Documentation/devicetree/bindings/spi/spi-bus.txt | 34 | properties described in Documentation/devicetree/bindings/spi/spi-bus.txt |
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 4d7f3758d1b4..46a311e728a8 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt | |||
@@ -83,6 +83,7 @@ mosaixtech Mosaix Technologies, Inc. | |||
83 | moxa Moxa | 83 | moxa Moxa |
84 | mpl MPL AG | 84 | mpl MPL AG |
85 | mundoreader Mundo Reader S.L. | 85 | mundoreader Mundo Reader S.L. |
86 | murata Murata Manufacturing Co., Ltd. | ||
86 | mxicy Macronix International Co., Ltd. | 87 | mxicy Macronix International Co., Ltd. |
87 | national National Semiconductor | 88 | national National Semiconductor |
88 | neonode Neonode Inc. | 89 | neonode Neonode Inc. |
diff --git a/Documentation/email-clients.txt b/Documentation/email-clients.txt index 4e30ebaa9e5b..9af538be3751 100644 --- a/Documentation/email-clients.txt +++ b/Documentation/email-clients.txt | |||
@@ -1,6 +1,17 @@ | |||
1 | Email clients info for Linux | 1 | Email clients info for Linux |
2 | ====================================================================== | 2 | ====================================================================== |
3 | 3 | ||
4 | Git | ||
5 | ---------------------------------------------------------------------- | ||
6 | These days most developers use `git send-email` instead of regular | ||
7 | email clients. The man page for this is quite good. On the receiving | ||
8 | end, maintainers use `git am` to apply the patches. | ||
9 | |||
10 | If you are new to git then send your first patch to yourself. Save it | ||
11 | as raw text including all the headers. Run `git am raw_email.txt` and | ||
12 | then review the changelog with `git log`. When that works then send | ||
13 | the patch to the appropriate mailing list(s). | ||
14 | |||
4 | General Preferences | 15 | General Preferences |
5 | ---------------------------------------------------------------------- | 16 | ---------------------------------------------------------------------- |
6 | Patches for the Linux kernel are submitted via email, preferably as | 17 | Patches for the Linux kernel are submitted via email, preferably as |
diff --git a/Documentation/hwmon/ntc_thermistor b/Documentation/hwmon/ntc_thermistor index 3bfda94096fd..057b77029f26 100644 --- a/Documentation/hwmon/ntc_thermistor +++ b/Documentation/hwmon/ntc_thermistor | |||
@@ -1,7 +1,7 @@ | |||
1 | Kernel driver ntc_thermistor | 1 | Kernel driver ntc_thermistor |
2 | ================= | 2 | ================= |
3 | 3 | ||
4 | Supported thermistors: | 4 | Supported thermistors from Murata: |
5 | * Murata NTC Thermistors NCP15WB473, NCP18WB473, NCP21WB473, NCP03WB473, NCP15WL333 | 5 | * Murata NTC Thermistors NCP15WB473, NCP18WB473, NCP21WB473, NCP03WB473, NCP15WL333 |
6 | Prefixes: 'ncp15wb473', 'ncp18wb473', 'ncp21wb473', 'ncp03wb473', 'ncp15wl333' | 6 | Prefixes: 'ncp15wb473', 'ncp18wb473', 'ncp21wb473', 'ncp03wb473', 'ncp15wl333' |
7 | Datasheet: Publicly available at Murata | 7 | Datasheet: Publicly available at Murata |
@@ -15,9 +15,9 @@ Authors: | |||
15 | Description | 15 | Description |
16 | ----------- | 16 | ----------- |
17 | 17 | ||
18 | The NTC thermistor is a simple thermistor that requires users to provide the | 18 | The NTC (Negative Temperature Coefficient) thermistor is a simple thermistor |
19 | resistance and lookup the corresponding compensation table to get the | 19 | that requires users to provide the resistance and lookup the corresponding |
20 | temperature input. | 20 | compensation table to get the temperature input. |
21 | 21 | ||
22 | The NTC driver provides lookup tables with a linear approximation function | 22 | The NTC driver provides lookup tables with a linear approximation function |
23 | and four circuit models with an option not to use any of the four models. | 23 | and four circuit models with an option not to use any of the four models. |
diff --git a/Documentation/input/event-codes.txt b/Documentation/input/event-codes.txt index f1ea2c69648d..c587a966413e 100644 --- a/Documentation/input/event-codes.txt +++ b/Documentation/input/event-codes.txt | |||
@@ -281,6 +281,19 @@ gestures can normally be extracted from it. | |||
281 | If INPUT_PROP_SEMI_MT is not set, the device is assumed to be a true MT | 281 | If INPUT_PROP_SEMI_MT is not set, the device is assumed to be a true MT |
282 | device. | 282 | device. |
283 | 283 | ||
284 | INPUT_PROP_TOPBUTTONPAD: | ||
285 | ----------------------- | ||
286 | Some laptops, most notably the Lenovo *40 series provide a trackstick | ||
287 | device but do not have physical buttons associated with the trackstick | ||
288 | device. Instead, the top area of the touchpad is marked to show | ||
289 | visual/haptic areas for left, middle, right buttons intended to be used | ||
290 | with the trackstick. | ||
291 | |||
292 | If INPUT_PROP_TOPBUTTONPAD is set, userspace should emulate buttons | ||
293 | accordingly. This property does not affect kernel behavior. | ||
294 | The kernel does not provide button emulation for such devices but treats | ||
295 | them as any other INPUT_PROP_BUTTONPAD device. | ||
296 | |||
284 | Guidelines: | 297 | Guidelines: |
285 | ========== | 298 | ========== |
286 | The guidelines below ensure proper single-touch and multi-finger functionality. | 299 | The guidelines below ensure proper single-touch and multi-finger functionality. |
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt index d567a7cc552b..c600e2f44a62 100644 --- a/Documentation/kbuild/makefiles.txt +++ b/Documentation/kbuild/makefiles.txt | |||
@@ -1171,7 +1171,7 @@ When kbuild executes, the following steps are followed (roughly): | |||
1171 | obvious reason. | 1171 | obvious reason. |
1172 | 1172 | ||
1173 | dtc | 1173 | dtc |
1174 | Create flattend device tree blob object suitable for linking | 1174 | Create flattened device tree blob object suitable for linking |
1175 | into vmlinux. Device tree blobs linked into vmlinux are placed | 1175 | into vmlinux. Device tree blobs linked into vmlinux are placed |
1176 | in an init section in the image. Platform code *must* copy the | 1176 | in an init section in the image. Platform code *must* copy the |
1177 | blob to non-init memory prior to calling unflatten_device_tree(). | 1177 | blob to non-init memory prior to calling unflatten_device_tree(). |
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 6eaa9cdb7094..b7fa2f599459 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
@@ -1474,6 +1474,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
1474 | js= [HW,JOY] Analog joystick | 1474 | js= [HW,JOY] Analog joystick |
1475 | See Documentation/input/joystick.txt. | 1475 | See Documentation/input/joystick.txt. |
1476 | 1476 | ||
1477 | kaslr/nokaslr [X86] | ||
1478 | Enable/disable kernel and module base offset ASLR | ||
1479 | (Address Space Layout Randomization) if built into | ||
1480 | the kernel. When CONFIG_HIBERNATION is selected, | ||
1481 | kASLR is disabled by default. When kASLR is enabled, | ||
1482 | hibernation will be disabled. | ||
1483 | |||
1477 | keepinitrd [HW,ARM] | 1484 | keepinitrd [HW,ARM] |
1478 | 1485 | ||
1479 | kernelcore=nn[KMG] [KNL,X86,IA-64,PPC] This parameter | 1486 | kernelcore=nn[KMG] [KNL,X86,IA-64,PPC] This parameter |
@@ -2110,10 +2117,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
2110 | noapic [SMP,APIC] Tells the kernel to not make use of any | 2117 | noapic [SMP,APIC] Tells the kernel to not make use of any |
2111 | IOAPICs that may be present in the system. | 2118 | IOAPICs that may be present in the system. |
2112 | 2119 | ||
2113 | nokaslr [X86] | ||
2114 | Disable kernel and module base offset ASLR (Address | ||
2115 | Space Layout Randomization) if built into the kernel. | ||
2116 | |||
2117 | noautogroup Disable scheduler automatic task group creation. | 2120 | noautogroup Disable scheduler automatic task group creation. |
2118 | 2121 | ||
2119 | nobats [PPC] Do not use BATs for mapping kernel lowmem | 2122 | nobats [PPC] Do not use BATs for mapping kernel lowmem |
@@ -2184,6 +2187,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
2184 | in certain environments such as networked servers or | 2187 | in certain environments such as networked servers or |
2185 | real-time systems. | 2188 | real-time systems. |
2186 | 2189 | ||
2190 | nohibernate [HIBERNATION] Disable hibernation and resume. | ||
2191 | |||
2187 | nohz= [KNL] Boottime enable/disable dynamic ticks | 2192 | nohz= [KNL] Boottime enable/disable dynamic ticks |
2188 | Valid arguments: on, off | 2193 | Valid arguments: on, off |
2189 | Default: on | 2194 | Default: on |
@@ -2785,6 +2790,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
2785 | leaf rcu_node structure. Useful for very large | 2790 | leaf rcu_node structure. Useful for very large |
2786 | systems. | 2791 | systems. |
2787 | 2792 | ||
2793 | rcutree.jiffies_till_sched_qs= [KNL] | ||
2794 | Set required age in jiffies for a | ||
2795 | given grace period before RCU starts | ||
2796 | soliciting quiescent-state help from | ||
2797 | rcu_note_context_switch(). | ||
2798 | |||
2788 | rcutree.jiffies_till_first_fqs= [KNL] | 2799 | rcutree.jiffies_till_first_fqs= [KNL] |
2789 | Set delay from grace-period initialization to | 2800 | Set delay from grace-period initialization to |
2790 | first attempt to force quiescent states. | 2801 | first attempt to force quiescent states. |
@@ -2980,6 +2991,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
2980 | noresume Don't check if there's a hibernation image | 2991 | noresume Don't check if there's a hibernation image |
2981 | present during boot. | 2992 | present during boot. |
2982 | nocompress Don't compress/decompress hibernation images. | 2993 | nocompress Don't compress/decompress hibernation images. |
2994 | no Disable hibernation and resume. | ||
2983 | 2995 | ||
2984 | retain_initrd [RAM] Keep initrd memory after extraction | 2996 | retain_initrd [RAM] Keep initrd memory after extraction |
2985 | 2997 | ||
@@ -3124,6 +3136,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
3124 | [KNL] Should the soft-lockup detector generate panics. | 3136 | [KNL] Should the soft-lockup detector generate panics. |
3125 | Format: <integer> | 3137 | Format: <integer> |
3126 | 3138 | ||
3139 | softlockup_all_cpu_backtrace= | ||
3140 | [KNL] Should the soft-lockup detector generate | ||
3141 | backtraces on all cpus. | ||
3142 | Format: <integer> | ||
3143 | |||
3127 | sonypi.*= [HW] Sony Programmable I/O Control Device driver | 3144 | sonypi.*= [HW] Sony Programmable I/O Control Device driver |
3128 | See Documentation/laptops/sonypi.txt | 3145 | See Documentation/laptops/sonypi.txt |
3129 | 3146 | ||
@@ -3515,7 +3532,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
3515 | the allocated input device; If set to 0, video driver | 3532 | the allocated input device; If set to 0, video driver |
3516 | will only send out the event without touching backlight | 3533 | will only send out the event without touching backlight |
3517 | brightness level. | 3534 | brightness level. |
3518 | default: 0 | 3535 | default: 1 |
3519 | 3536 | ||
3520 | virtio_mmio.device= | 3537 | virtio_mmio.device= |
3521 | [VMMIO] Memory mapped virtio (platform) device. | 3538 | [VMMIO] Memory mapped virtio (platform) device. |
diff --git a/Documentation/laptops/00-INDEX b/Documentation/laptops/00-INDEX index d13b9a9a9e00..d399ae1fc724 100644 --- a/Documentation/laptops/00-INDEX +++ b/Documentation/laptops/00-INDEX | |||
@@ -8,8 +8,8 @@ disk-shock-protection.txt | |||
8 | - information on hard disk shock protection. | 8 | - information on hard disk shock protection. |
9 | dslm.c | 9 | dslm.c |
10 | - Simple Disk Sleep Monitor program | 10 | - Simple Disk Sleep Monitor program |
11 | hpfall.c | 11 | freefall.c |
12 | - (HP) laptop accelerometer program for disk protection. | 12 | - (HP/DELL) laptop accelerometer program for disk protection. |
13 | laptop-mode.txt | 13 | laptop-mode.txt |
14 | - how to conserve battery power using laptop-mode. | 14 | - how to conserve battery power using laptop-mode. |
15 | sony-laptop.txt | 15 | sony-laptop.txt |
diff --git a/Documentation/laptops/hpfall.c b/Documentation/laptops/freefall.c index b85dbbac0499..aab2ff09e868 100644 --- a/Documentation/laptops/hpfall.c +++ b/Documentation/laptops/freefall.c | |||
@@ -1,7 +1,9 @@ | |||
1 | /* Disk protection for HP machines. | 1 | /* Disk protection for HP/DELL machines. |
2 | * | 2 | * |
3 | * Copyright 2008 Eric Piel | 3 | * Copyright 2008 Eric Piel |
4 | * Copyright 2009 Pavel Machek <pavel@ucw.cz> | 4 | * Copyright 2009 Pavel Machek <pavel@ucw.cz> |
5 | * Copyright 2012 Sonal Santan | ||
6 | * Copyright 2014 Pali Rohár <pali.rohar@gmail.com> | ||
5 | * | 7 | * |
6 | * GPLv2. | 8 | * GPLv2. |
7 | */ | 9 | */ |
@@ -18,24 +20,31 @@ | |||
18 | #include <signal.h> | 20 | #include <signal.h> |
19 | #include <sys/mman.h> | 21 | #include <sys/mman.h> |
20 | #include <sched.h> | 22 | #include <sched.h> |
23 | #include <syslog.h> | ||
21 | 24 | ||
22 | char unload_heads_path[64]; | 25 | static int noled; |
26 | static char unload_heads_path[64]; | ||
27 | static char device_path[32]; | ||
28 | static const char app_name[] = "FREE FALL"; | ||
23 | 29 | ||
24 | int set_unload_heads_path(char *device) | 30 | static int set_unload_heads_path(char *device) |
25 | { | 31 | { |
26 | char devname[64]; | 32 | char devname[64]; |
27 | 33 | ||
28 | if (strlen(device) <= 5 || strncmp(device, "/dev/", 5) != 0) | 34 | if (strlen(device) <= 5 || strncmp(device, "/dev/", 5) != 0) |
29 | return -EINVAL; | 35 | return -EINVAL; |
30 | strncpy(devname, device + 5, sizeof(devname)); | 36 | strncpy(devname, device + 5, sizeof(devname) - 1); |
37 | strncpy(device_path, device, sizeof(device_path) - 1); | ||
31 | 38 | ||
32 | snprintf(unload_heads_path, sizeof(unload_heads_path) - 1, | 39 | snprintf(unload_heads_path, sizeof(unload_heads_path) - 1, |
33 | "/sys/block/%s/device/unload_heads", devname); | 40 | "/sys/block/%s/device/unload_heads", devname); |
34 | return 0; | 41 | return 0; |
35 | } | 42 | } |
36 | int valid_disk(void) | 43 | |
44 | static int valid_disk(void) | ||
37 | { | 45 | { |
38 | int fd = open(unload_heads_path, O_RDONLY); | 46 | int fd = open(unload_heads_path, O_RDONLY); |
47 | |||
39 | if (fd < 0) { | 48 | if (fd < 0) { |
40 | perror(unload_heads_path); | 49 | perror(unload_heads_path); |
41 | return 0; | 50 | return 0; |
@@ -45,43 +54,54 @@ int valid_disk(void) | |||
45 | return 1; | 54 | return 1; |
46 | } | 55 | } |
47 | 56 | ||
48 | void write_int(char *path, int i) | 57 | static void write_int(char *path, int i) |
49 | { | 58 | { |
50 | char buf[1024]; | 59 | char buf[1024]; |
51 | int fd = open(path, O_RDWR); | 60 | int fd = open(path, O_RDWR); |
61 | |||
52 | if (fd < 0) { | 62 | if (fd < 0) { |
53 | perror("open"); | 63 | perror("open"); |
54 | exit(1); | 64 | exit(1); |
55 | } | 65 | } |
66 | |||
56 | sprintf(buf, "%d", i); | 67 | sprintf(buf, "%d", i); |
68 | |||
57 | if (write(fd, buf, strlen(buf)) != strlen(buf)) { | 69 | if (write(fd, buf, strlen(buf)) != strlen(buf)) { |
58 | perror("write"); | 70 | perror("write"); |
59 | exit(1); | 71 | exit(1); |
60 | } | 72 | } |
73 | |||
61 | close(fd); | 74 | close(fd); |
62 | } | 75 | } |
63 | 76 | ||
64 | void set_led(int on) | 77 | static void set_led(int on) |
65 | { | 78 | { |
79 | if (noled) | ||
80 | return; | ||
66 | write_int("/sys/class/leds/hp::hddprotect/brightness", on); | 81 | write_int("/sys/class/leds/hp::hddprotect/brightness", on); |
67 | } | 82 | } |
68 | 83 | ||
69 | void protect(int seconds) | 84 | static void protect(int seconds) |
70 | { | 85 | { |
86 | const char *str = (seconds == 0) ? "Unparked" : "Parked"; | ||
87 | |||
71 | write_int(unload_heads_path, seconds*1000); | 88 | write_int(unload_heads_path, seconds*1000); |
89 | syslog(LOG_INFO, "%s %s disk head\n", str, device_path); | ||
72 | } | 90 | } |
73 | 91 | ||
74 | int on_ac(void) | 92 | static int on_ac(void) |
75 | { | 93 | { |
76 | // /sys/class/power_supply/AC0/online | 94 | /* /sys/class/power_supply/AC0/online */ |
95 | return 1; | ||
77 | } | 96 | } |
78 | 97 | ||
79 | int lid_open(void) | 98 | static int lid_open(void) |
80 | { | 99 | { |
81 | // /proc/acpi/button/lid/LID/state | 100 | /* /proc/acpi/button/lid/LID/state */ |
101 | return 1; | ||
82 | } | 102 | } |
83 | 103 | ||
84 | void ignore_me(void) | 104 | static void ignore_me(int signum) |
85 | { | 105 | { |
86 | protect(0); | 106 | protect(0); |
87 | set_led(0); | 107 | set_led(0); |
@@ -90,6 +110,7 @@ void ignore_me(void) | |||
90 | int main(int argc, char **argv) | 110 | int main(int argc, char **argv) |
91 | { | 111 | { |
92 | int fd, ret; | 112 | int fd, ret; |
113 | struct stat st; | ||
93 | struct sched_param param; | 114 | struct sched_param param; |
94 | 115 | ||
95 | if (argc == 1) | 116 | if (argc == 1) |
@@ -111,7 +132,16 @@ int main(int argc, char **argv) | |||
111 | return EXIT_FAILURE; | 132 | return EXIT_FAILURE; |
112 | } | 133 | } |
113 | 134 | ||
114 | daemon(0, 0); | 135 | if (stat("/sys/class/leds/hp::hddprotect/brightness", &st)) |
136 | noled = 1; | ||
137 | |||
138 | if (daemon(0, 0) != 0) { | ||
139 | perror("daemon"); | ||
140 | return EXIT_FAILURE; | ||
141 | } | ||
142 | |||
143 | openlog(app_name, LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL1); | ||
144 | |||
115 | param.sched_priority = sched_get_priority_max(SCHED_FIFO); | 145 | param.sched_priority = sched_get_priority_max(SCHED_FIFO); |
116 | sched_setscheduler(0, SCHED_FIFO, ¶m); | 146 | sched_setscheduler(0, SCHED_FIFO, ¶m); |
117 | mlockall(MCL_CURRENT|MCL_FUTURE); | 147 | mlockall(MCL_CURRENT|MCL_FUTURE); |
@@ -141,6 +171,7 @@ int main(int argc, char **argv) | |||
141 | alarm(20); | 171 | alarm(20); |
142 | } | 172 | } |
143 | 173 | ||
174 | closelog(); | ||
144 | close(fd); | 175 | close(fd); |
145 | return EXIT_SUCCESS; | 176 | return EXIT_SUCCESS; |
146 | } | 177 | } |
diff --git a/Documentation/memory-hotplug.txt b/Documentation/memory-hotplug.txt index f304edb8fbe7..45134dc23854 100644 --- a/Documentation/memory-hotplug.txt +++ b/Documentation/memory-hotplug.txt | |||
@@ -209,15 +209,12 @@ If memory device is found, memory hotplug code will be called. | |||
209 | 209 | ||
210 | 4.2 Notify memory hot-add event by hand | 210 | 4.2 Notify memory hot-add event by hand |
211 | ------------ | 211 | ------------ |
212 | On powerpc, the firmware does not notify a memory hotplug event to the kernel. | 212 | On some architectures, the firmware may not notify the kernel of a memory |
213 | Therefore, "probe" interface is supported to notify the event to the kernel. | 213 | hotplug event. Therefore, the memory "probe" interface is supported to |
214 | This interface depends on CONFIG_ARCH_MEMORY_PROBE. | 214 | explicitly notify the kernel. This interface depends on |
215 | 215 | CONFIG_ARCH_MEMORY_PROBE and can be configured on powerpc, sh, and x86 | |
216 | CONFIG_ARCH_MEMORY_PROBE is supported on powerpc only. On x86, this config | 216 | if hotplug is supported, although for x86 this should be handled by ACPI |
217 | option is disabled by default since ACPI notifies a memory hotplug event to | 217 | notification. |
218 | the kernel, which performs its hotplug operation as the result. Please | ||
219 | enable this option if you need the "probe" interface for testing purposes | ||
220 | on x86. | ||
221 | 218 | ||
222 | Probe interface is located at | 219 | Probe interface is located at |
223 | /sys/devices/system/memory/probe | 220 | /sys/devices/system/memory/probe |
diff --git a/Documentation/ptp/testptp.c b/Documentation/ptp/testptp.c index f1ac2dae999e..ba1d50200c46 100644 --- a/Documentation/ptp/testptp.c +++ b/Documentation/ptp/testptp.c | |||
@@ -17,6 +17,7 @@ | |||
17 | * along with this program; if not, write to the Free Software | 17 | * along with this program; if not, write to the Free Software |
18 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 18 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
19 | */ | 19 | */ |
20 | #define _GNU_SOURCE | ||
20 | #include <errno.h> | 21 | #include <errno.h> |
21 | #include <fcntl.h> | 22 | #include <fcntl.h> |
22 | #include <inttypes.h> | 23 | #include <inttypes.h> |
@@ -46,12 +47,14 @@ | |||
46 | #define CLOCK_INVALID -1 | 47 | #define CLOCK_INVALID -1 |
47 | #endif | 48 | #endif |
48 | 49 | ||
49 | /* When glibc offers the syscall, this will go away. */ | 50 | /* clock_adjtime is not available in GLIBC < 2.14 */ |
51 | #if !__GLIBC_PREREQ(2, 14) | ||
50 | #include <sys/syscall.h> | 52 | #include <sys/syscall.h> |
51 | static int clock_adjtime(clockid_t id, struct timex *tx) | 53 | static int clock_adjtime(clockid_t id, struct timex *tx) |
52 | { | 54 | { |
53 | return syscall(__NR_clock_adjtime, id, tx); | 55 | return syscall(__NR_clock_adjtime, id, tx); |
54 | } | 56 | } |
57 | #endif | ||
55 | 58 | ||
56 | static clockid_t get_clockid(int fd) | 59 | static clockid_t get_clockid(int fd) |
57 | { | 60 | { |
diff --git a/Documentation/sound/alsa/HD-Audio-Models.txt b/Documentation/sound/alsa/HD-Audio-Models.txt index 85c362d8ea34..d1ab5e17eb13 100644 --- a/Documentation/sound/alsa/HD-Audio-Models.txt +++ b/Documentation/sound/alsa/HD-Audio-Models.txt | |||
@@ -286,6 +286,11 @@ STAC92HD83* | |||
286 | hp-inv-led HP with broken BIOS for inverted mute LED | 286 | hp-inv-led HP with broken BIOS for inverted mute LED |
287 | auto BIOS setup (default) | 287 | auto BIOS setup (default) |
288 | 288 | ||
289 | STAC92HD95 | ||
290 | ========== | ||
291 | hp-led LED support for HP laptops | ||
292 | hp-bass Bass HPF setup for HP Spectre 13 | ||
293 | |||
289 | STAC9872 | 294 | STAC9872 |
290 | ======== | 295 | ======== |
291 | vaio VAIO laptop without SPDIF | 296 | vaio VAIO laptop without SPDIF |
diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt index 708bb7f1b7e0..c14374e71775 100644 --- a/Documentation/sysctl/kernel.txt +++ b/Documentation/sysctl/kernel.txt | |||
@@ -75,6 +75,7 @@ show up in /proc/sys/kernel: | |||
75 | - shmall | 75 | - shmall |
76 | - shmmax [ sysv ipc ] | 76 | - shmmax [ sysv ipc ] |
77 | - shmmni | 77 | - shmmni |
78 | - softlockup_all_cpu_backtrace | ||
78 | - stop-a [ SPARC only ] | 79 | - stop-a [ SPARC only ] |
79 | - sysrq ==> Documentation/sysrq.txt | 80 | - sysrq ==> Documentation/sysrq.txt |
80 | - sysctl_writes_strict | 81 | - sysctl_writes_strict |
@@ -783,6 +784,22 @@ via the /proc/sys interface: | |||
783 | 784 | ||
784 | ============================================================== | 785 | ============================================================== |
785 | 786 | ||
787 | softlockup_all_cpu_backtrace: | ||
788 | |||
789 | This value controls the soft lockup detector thread's behavior | ||
790 | when a soft lockup condition is detected as to whether or not | ||
791 | to gather further debug information. If enabled, each cpu will | ||
792 | be issued an NMI and instructed to capture stack trace. | ||
793 | |||
794 | This feature is only applicable for architectures which support | ||
795 | NMI. | ||
796 | |||
797 | 0: do nothing. This is the default behavior. | ||
798 | |||
799 | 1: on detection capture more debug information. | ||
800 | |||
801 | ============================================================== | ||
802 | |||
786 | tainted: | 803 | tainted: |
787 | 804 | ||
788 | Non-zero if the kernel has been tainted. Numeric values, which | 805 | Non-zero if the kernel has been tainted. Numeric values, which |
diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt index bd4b34c03738..4415aa915681 100644 --- a/Documentation/sysctl/vm.txt +++ b/Documentation/sysctl/vm.txt | |||
@@ -702,7 +702,8 @@ The batch value of each per cpu pagelist is also updated as a result. It is | |||
702 | set to pcp->high/4. The upper limit of batch is (PAGE_SHIFT * 8) | 702 | set to pcp->high/4. The upper limit of batch is (PAGE_SHIFT * 8) |
703 | 703 | ||
704 | The initial value is zero. Kernel does not use this value at boot time to set | 704 | The initial value is zero. Kernel does not use this value at boot time to set |
705 | the high water marks for each per cpu page list. | 705 | the high water marks for each per cpu page list. If the user writes '0' to this |
706 | sysctl, it will revert to this default behavior. | ||
706 | 707 | ||
707 | ============================================================== | 708 | ============================================================== |
708 | 709 | ||
diff --git a/Documentation/thermal/nouveau_thermal b/Documentation/thermal/nouveau_thermal index efceb7828f54..60bc29357ac3 100644 --- a/Documentation/thermal/nouveau_thermal +++ b/Documentation/thermal/nouveau_thermal | |||
@@ -4,7 +4,7 @@ Kernel driver nouveau | |||
4 | Supported chips: | 4 | Supported chips: |
5 | * NV43+ | 5 | * NV43+ |
6 | 6 | ||
7 | Authors: Martin Peres (mupuf) <martin.peres@labri.fr> | 7 | Authors: Martin Peres (mupuf) <martin.peres@free.fr> |
8 | 8 | ||
9 | Description | 9 | Description |
10 | --------- | 10 | --------- |
@@ -68,8 +68,9 @@ Your fan can be driven in different modes: | |||
68 | 68 | ||
69 | NOTE: Be sure to use the manual mode if you want to drive the fan speed manually | 69 | NOTE: Be sure to use the manual mode if you want to drive the fan speed manually |
70 | 70 | ||
71 | NOTE2: Not all fan management modes may be supported on all chipsets. We are | 71 | NOTE2: When operating in manual mode outside the vbios-defined |
72 | working on it. | 72 | [PWM_min, PWM_max] range, the reported fan speed (RPM) may not be accurate |
73 | depending on your hardware. | ||
73 | 74 | ||
74 | Bug reports | 75 | Bug reports |
75 | --------- | 76 | --------- |
diff --git a/Documentation/trace/postprocess/trace-vmscan-postprocess.pl b/Documentation/trace/postprocess/trace-vmscan-postprocess.pl index 00e425faa2fd..78c9a7b2b58f 100644 --- a/Documentation/trace/postprocess/trace-vmscan-postprocess.pl +++ b/Documentation/trace/postprocess/trace-vmscan-postprocess.pl | |||
@@ -47,7 +47,6 @@ use constant HIGH_KSWAPD_REWAKEUP => 21; | |||
47 | use constant HIGH_NR_SCANNED => 22; | 47 | use constant HIGH_NR_SCANNED => 22; |
48 | use constant HIGH_NR_TAKEN => 23; | 48 | use constant HIGH_NR_TAKEN => 23; |
49 | use constant HIGH_NR_RECLAIMED => 24; | 49 | use constant HIGH_NR_RECLAIMED => 24; |
50 | use constant HIGH_NR_CONTIG_DIRTY => 25; | ||
51 | 50 | ||
52 | my %perprocesspid; | 51 | my %perprocesspid; |
53 | my %perprocess; | 52 | my %perprocess; |
@@ -105,7 +104,7 @@ my $regex_direct_end_default = 'nr_reclaimed=([0-9]*)'; | |||
105 | my $regex_kswapd_wake_default = 'nid=([0-9]*) order=([0-9]*)'; | 104 | my $regex_kswapd_wake_default = 'nid=([0-9]*) order=([0-9]*)'; |
106 | my $regex_kswapd_sleep_default = 'nid=([0-9]*)'; | 105 | my $regex_kswapd_sleep_default = 'nid=([0-9]*)'; |
107 | my $regex_wakeup_kswapd_default = 'nid=([0-9]*) zid=([0-9]*) order=([0-9]*)'; | 106 | my $regex_wakeup_kswapd_default = 'nid=([0-9]*) zid=([0-9]*) order=([0-9]*)'; |
108 | my $regex_lru_isolate_default = 'isolate_mode=([0-9]*) order=([0-9]*) nr_requested=([0-9]*) nr_scanned=([0-9]*) nr_taken=([0-9]*) contig_taken=([0-9]*) contig_dirty=([0-9]*) contig_failed=([0-9]*)'; | 107 | my $regex_lru_isolate_default = 'isolate_mode=([0-9]*) order=([0-9]*) nr_requested=([0-9]*) nr_scanned=([0-9]*) nr_taken=([0-9]*) file=([0-9]*)'; |
109 | my $regex_lru_shrink_inactive_default = 'nid=([0-9]*) zid=([0-9]*) nr_scanned=([0-9]*) nr_reclaimed=([0-9]*) priority=([0-9]*) flags=([A-Z_|]*)'; | 108 | my $regex_lru_shrink_inactive_default = 'nid=([0-9]*) zid=([0-9]*) nr_scanned=([0-9]*) nr_reclaimed=([0-9]*) priority=([0-9]*) flags=([A-Z_|]*)'; |
110 | my $regex_lru_shrink_active_default = 'lru=([A-Z_]*) nr_scanned=([0-9]*) nr_rotated=([0-9]*) priority=([0-9]*)'; | 109 | my $regex_lru_shrink_active_default = 'lru=([A-Z_]*) nr_scanned=([0-9]*) nr_rotated=([0-9]*) priority=([0-9]*)'; |
111 | my $regex_writepage_default = 'page=([0-9a-f]*) pfn=([0-9]*) flags=([A-Z_|]*)'; | 110 | my $regex_writepage_default = 'page=([0-9a-f]*) pfn=([0-9]*) flags=([A-Z_|]*)'; |
@@ -200,7 +199,7 @@ $regex_lru_isolate = generate_traceevent_regex( | |||
200 | $regex_lru_isolate_default, | 199 | $regex_lru_isolate_default, |
201 | "isolate_mode", "order", | 200 | "isolate_mode", "order", |
202 | "nr_requested", "nr_scanned", "nr_taken", | 201 | "nr_requested", "nr_scanned", "nr_taken", |
203 | "contig_taken", "contig_dirty", "contig_failed"); | 202 | "file"); |
204 | $regex_lru_shrink_inactive = generate_traceevent_regex( | 203 | $regex_lru_shrink_inactive = generate_traceevent_regex( |
205 | "vmscan/mm_vmscan_lru_shrink_inactive", | 204 | "vmscan/mm_vmscan_lru_shrink_inactive", |
206 | $regex_lru_shrink_inactive_default, | 205 | $regex_lru_shrink_inactive_default, |
@@ -375,7 +374,6 @@ EVENT_PROCESS: | |||
375 | } | 374 | } |
376 | my $isolate_mode = $1; | 375 | my $isolate_mode = $1; |
377 | my $nr_scanned = $4; | 376 | my $nr_scanned = $4; |
378 | my $nr_contig_dirty = $7; | ||
379 | 377 | ||
380 | # To closer match vmstat scanning statistics, only count isolate_both | 378 | # To closer match vmstat scanning statistics, only count isolate_both |
381 | # and isolate_inactive as scanning. isolate_active is rotation | 379 | # and isolate_inactive as scanning. isolate_active is rotation |
@@ -385,7 +383,6 @@ EVENT_PROCESS: | |||
385 | if ($isolate_mode != 2) { | 383 | if ($isolate_mode != 2) { |
386 | $perprocesspid{$process_pid}->{HIGH_NR_SCANNED} += $nr_scanned; | 384 | $perprocesspid{$process_pid}->{HIGH_NR_SCANNED} += $nr_scanned; |
387 | } | 385 | } |
388 | $perprocesspid{$process_pid}->{HIGH_NR_CONTIG_DIRTY} += $nr_contig_dirty; | ||
389 | } elsif ($tracepoint eq "mm_vmscan_lru_shrink_inactive") { | 386 | } elsif ($tracepoint eq "mm_vmscan_lru_shrink_inactive") { |
390 | $details = $6; | 387 | $details = $6; |
391 | if ($details !~ /$regex_lru_shrink_inactive/o) { | 388 | if ($details !~ /$regex_lru_shrink_inactive/o) { |
@@ -539,13 +536,6 @@ sub dump_stats { | |||
539 | } | 536 | } |
540 | } | 537 | } |
541 | } | 538 | } |
542 | if ($stats{$process_pid}->{HIGH_NR_CONTIG_DIRTY}) { | ||
543 | print " "; | ||
544 | my $count = $stats{$process_pid}->{HIGH_NR_CONTIG_DIRTY}; | ||
545 | if ($count != 0) { | ||
546 | print "contig-dirty=$count "; | ||
547 | } | ||
548 | } | ||
549 | 539 | ||
550 | print "\n"; | 540 | print "\n"; |
551 | } | 541 | } |