Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 26eafeaa authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

Merge branch 'linus' into timers/core

Pick up upstream changes to get the prerequisites for the timer changes.
parents 4c3711d7 d81fa669
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -39,8 +39,8 @@ up.
Although MT wq wasted a lot of resource, the level of concurrency
provided was unsatisfactory.  The limitation was common to both ST and
MT wq albeit less severe on MT.  Each wq maintained its own separate
worker pool.  A MT wq could provide only one execution context per CPU
while a ST wq one for the whole system.  Work items had to compete for
worker pool.  An MT wq could provide only one execution context per CPU
while an ST wq one for the whole system.  Work items had to compete for
those very limited execution contexts leading to various problems
including proneness to deadlocks around the single execution context.

@@ -151,7 +151,7 @@ Application Programming Interface (API)

``alloc_workqueue()`` allocates a wq.  The original
``create_*workqueue()`` functions are deprecated and scheduled for
removal.  ``alloc_workqueue()`` takes three arguments - @``name``,
removal.  ``alloc_workqueue()`` takes three arguments - ``@name``,
``@flags`` and ``@max_active``.  ``@name`` is the name of the wq and
also used as the name of the rescuer thread if there is one.

@@ -197,7 +197,7 @@ resources, scheduled and executed.
  served by worker threads with elevated nice level.

  Note that normal and highpri worker-pools don't interact with
  each other.  Each maintain its separate pool of workers and
  each other.  Each maintains its separate pool of workers and
  implements concurrency management among its workers.

``WQ_CPU_INTENSIVE``
@@ -249,8 +249,8 @@ unbound worker-pools and only one work item could be active at any given
time thus achieving the same ordering property as ST wq.

In the current implementation the above configuration only guarantees
ST behavior within a given NUMA node. Instead alloc_ordered_queue should
be used to achieve system wide ST behavior.
ST behavior within a given NUMA node. Instead ``alloc_ordered_queue()`` should
be used to achieve system-wide ST behavior.


Example Execution Scenarios
+0 −2
Original line number Diff line number Diff line
@@ -32,8 +32,6 @@ cpufreq-stats.txt - General description of sysfs cpufreq stats.

index.txt	-	File index, Mailing list and Links (this document)

intel-pstate.txt -	Intel pstate cpufreq driver specific file.

pcc-cpufreq.txt -	PCC cpufreq driver specific file.


+18 −10
Original line number Diff line number Diff line
@@ -15,11 +15,14 @@ Required properties

compatible	: Must be "ams,as3645a".
reg		: The I2C address of the device. Typically 0x30.
#address-cells	: 1
#size-cells	: 0


Required properties of the "flash" child node
=============================================
Required properties of the flash child node (0)
===============================================

reg: 0
flash-timeout-us: Flash timeout in microseconds. The value must be in
		  the range [100000, 850000] and divisible by 50000.
flash-max-microamp: Maximum flash current in microamperes. Has to be
@@ -33,20 +36,21 @@ ams,input-max-microamp: Maximum flash controller input current. The
			and divisible by 50000.


Optional properties of the "flash" child node
=============================================
Optional properties of the flash child node
===========================================

label		: The label of the flash LED.


Required properties of the "indicator" child node
=================================================
Required properties of the indicator child node (1)
===================================================

reg: 1
led-max-microamp: Maximum indicator current. The allowed values are
		  2500, 5000, 7500 and 10000.

Optional properties of the "indicator" child node
=================================================
Optional properties of the indicator child node
===============================================

label		: The label of the indicator LED.

@@ -55,16 +59,20 @@ Example
=======

	as3645a@30 {
		#address-cells: 1
		#size-cells: 0
		reg = <0x30>;
		compatible = "ams,as3645a";
		flash {
		flash@0 {
			reg = <0x0>;
			flash-timeout-us = <150000>;
			flash-max-microamp = <320000>;
			led-max-microamp = <60000>;
			ams,input-max-microamp = <1750000>;
			label = "as3645a:flash";
		};
		indicator {
		indicator@1 {
			reg = <0x1>;
			led-max-microamp = <10000>;
			label = "as3645a:indicator";
		};
+2 −0
Original line number Diff line number Diff line
@@ -41,6 +41,8 @@ Required properties:
    - "renesas,hscif-r8a7795" for R8A7795 (R-Car H3) HSCIF compatible UART.
    - "renesas,scif-r8a7796" for R8A7796 (R-Car M3-W) SCIF compatible UART.
    - "renesas,hscif-r8a7796" for R8A7796 (R-Car M3-W) HSCIF compatible UART.
    - "renesas,scif-r8a77970" for R8A77970 (R-Car V3M) SCIF compatible UART.
    - "renesas,hscif-r8a77970" for R8A77970 (R-Car V3M) HSCIF compatible UART.
    - "renesas,scif-r8a77995" for R8A77995 (R-Car D3) SCIF compatible UART.
    - "renesas,hscif-r8a77995" for R8A77995 (R-Car D3) HSCIF compatible UART.
    - "renesas,scifa-sh73a0" for SH73A0 (SH-Mobile AG5) SCIFA compatible UART.
+4 −3
Original line number Diff line number Diff line
@@ -196,12 +196,13 @@ struct driver_attribute {
};

Device drivers can export attributes via their sysfs directories. 
Drivers can declare attributes using a DRIVER_ATTR macro that works
identically to the DEVICE_ATTR macro. 
Drivers can declare attributes using a DRIVER_ATTR_RW and DRIVER_ATTR_RO
macro that works identically to the DEVICE_ATTR_RW and DEVICE_ATTR_RO
macros.

Example:

DRIVER_ATTR(debug,0644,show_debug,store_debug);
DRIVER_ATTR_RW(debug);

This is equivalent to declaring:

Loading