Commit graph

691,473 commits

Author SHA1 Message Date
Paolo Valente
bcd5642607 block, bfq: preserve a low latency also with NCQ-capable drives
I/O schedulers typically allow NCQ-capable drives to prefetch I/O
requests, as NCQ boosts the throughput exactly by prefetching and
internally reordering requests.

Unfortunately, as discussed in detail and shown experimentally in [1],
this may cause fairness and latency guarantees to be violated. The
main problem is that the internal scheduler of an NCQ-capable drive
may postpone the service of some unlucky (prefetched) requests as long
as it deems serving other requests more appropriate to boost the
throughput.

This patch addresses this issue by not disabling device idling for
weight-raised queues, even if the device supports NCQ. This allows BFQ
to start serving a new queue, and therefore allows the drive to
prefetch new requests, only after the idling timeout expires. At that
time, all the outstanding requests of the expired queue have been most
certainly served.

[1] P. Valente and M. Andreolini, "Improving Application
    Responsiveness with the BFQ Disk I/O Scheduler", Proceedings of
    the 5th Annual International Systems and Storage Conference
    (SYSTOR '12), June 2012.
    Slightly extended version:
    http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite-
							results.pdf

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
77b7dcead3 block, bfq: reduce I/O latency for soft real-time applications
To guarantee a low latency also to the I/O requests issued by soft
real-time applications, this patch introduces a further heuristic,
which weight-raises (in the sense explained in the previous patch)
also the queues associated to applications deemed as soft real-time.

To be deemed as soft real-time, an application must meet two
requirements.  First, the application must not require an average
bandwidth higher than the approximate bandwidth required to playback
or record a compressed high-definition video. Second, the request
pattern of the application must be isochronous, i.e., after issuing a
request or a batch of requests, the application must stop issuing new
requests until all its pending requests have been completed. After
that, the application may issue a new batch, and so on.

As for the second requirement, it is critical to require also that,
after all the pending requests of the application have been completed,
an adequate minimum amount of time elapses before the application
starts issuing new requests. This prevents also greedy (i.e.,
I/O-bound) applications from being incorrectly deemed, occasionally,
as soft real-time. In fact, if *any amount of time* is fine, then even
a greedy application may, paradoxically, meet both the above
requirements, if: (1) the application performs random I/O and/or the
device is slow, and (2) the CPU load is high. The reason is the
following.  First, if condition (1) is true, then, during the service
of the application, the throughput may be low enough to let the
application meet the bandwidth requirement.  Second, if condition (2)
is true as well, then the application may occasionally behave in an
apparently isochronous way, because it may simply stop issuing
requests while the CPUs are busy serving other processes.

To address this issue, the heuristic leverages the simple fact that
greedy applications issue *all* their requests as quickly as they can,
whereas soft real-time applications spend some time processing data
after each batch of requests is completed. In particular, the
heuristic works as follows. First, according to the above isochrony
requirement, the heuristic checks whether an application may be soft
real-time, thereby giving to the application the opportunity to be
deemed as such, only when both the following two conditions happen to
hold: 1) the queue associated with the application has expired and is
empty, 2) there is no outstanding request of the application.

Suppose that both conditions hold at time, say, t_c and that the
application issues its next request at time, say, t_i. At time t_c the
heuristic computes the next time instant, called soft_rt_next_start in
the code, such that, only if t_i >= soft_rt_next_start, then both the
next conditions will hold when the application issues its next
request: 1) the application will meet the above bandwidth requirement,
2) a given minimum time interval, say Delta, will have elapsed from
time t_c (so as to filter out greedy application).

The current value of Delta is a little bit higher than the value that
we have found, experimentally, to be adequate on a real,
general-purpose machine. In particular we had to increase Delta to
make the filter quite precise also in slower, embedded systems, and in
KVM/QEMU virtual machines (details in the comments on the code).

If the application actually issues its next request after time
soft_rt_next_start, then its associated queue will be weight-raised
for a relatively short time interval. If, during this time interval,
the application proves again to meet the bandwidth and isochrony
requirements, then the end of the weight-raising period for the queue
is moved forward, and so on. Note that an application whose associated
queue never happens to be empty when it expires will never have the
opportunity to be deemed as soft real-time.

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
44e44a1b32 block, bfq: improve responsiveness
This patch introduces a simple heuristic to load applications quickly,
and to perform the I/O requested by interactive applications just as
quickly. To this purpose, both a newly-created queue and a queue
associated with an interactive application (we explain in a moment how
BFQ decides whether the associated application is interactive),
receive the following two special treatments:

1) The weight of the queue is raised.

2) The queue unconditionally enjoys device idling when it empties; in
fact, if the requests of a queue are sync, then performing device
idling for the queue is a necessary condition to guarantee that the
queue receives a fraction of the throughput proportional to its weight
(see [1] for details).

For brevity, we call just weight-raising the combination of these
two preferential treatments. For a newly-created queue,
weight-raising starts immediately and lasts for a time interval that:
1) depends on the device speed and type (rotational or
non-rotational), and 2) is equal to the time needed to load (start up)
a large-size application on that device, with cold caches and with no
additional workload.

Finally, as for guaranteeing a fast execution to interactive,
I/O-related tasks (such as opening a file), consider that any
interactive application blocks and waits for user input both after
starting up and after executing some task. After a while, the user may
trigger new operations, after which the application stops again, and
so on. Accordingly, the low-latency heuristic weight-raises again a
queue in case it becomes backlogged after being idle for a
sufficiently long (configurable) time. The weight-raising then lasts
for the same time as for a just-created queue.

According to our experiments, the combination of this low-latency
heuristic and of the improvements described in the previous patch
allows BFQ to guarantee a high application responsiveness.

[1] P. Valente, A. Avanzini, "Evolution of the BFQ Storage I/O
    Scheduler", Proceedings of the First Workshop on Mobile System
    Technologies (MST-2015), May 2015.
    http://algogroup.unimore.it/people/paolo/disk_sched/mst-2015.pdf

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
c074170e65 block, bfq: add more fairness with writes and slow processes
This patch deals with two sources of unfairness, which can also cause
high latencies and throughput loss. The first source is related to
write requests. Write requests tend to starve read requests, basically
because, on one side, writes are slower than reads, whereas, on the
other side, storage devices confuse schedulers by deceptively
signaling the completion of write requests immediately after receiving
them. This patch addresses this issue by just throttling writes. In
particular, after a write request is dispatched for a queue, the
budget of the queue is decremented by the number of sectors to write,
multiplied by an (over)charge coefficient. The value of the
coefficient is the result of our tuning with different devices.

The second source of unfairness has to do with slowness detection:
when the in-service queue is expired, BFQ also controls whether the
queue has been "too slow", i.e., has consumed its last-assigned budget
at such a low rate that it would have been impossible to consume all
of this budget within the maximum time slice T_max (Subsec. 3.5 in
[1]). In this case, the queue is always (over)charged the whole
budget, to reduce its utilization of the device. Both this overcharge
and the slowness-detection criterion may cause unfairness.

First, always charging a full budget to a slow queue is too coarse. It
is much more accurate, and this patch lets BFQ do so, to charge an
amount of service 'equivalent' to the amount of time during which the
queue has been in service. As explained in more detail in the comments
on the code, this enables BFQ to provide time fairness among slow
queues.

Secondly, because of ZBR, a queue may be deemed as slow when its
associated process is performing I/O on the slowest zones of a
disk. However, unless the process is truly too slow, not reducing the
disk utilization of the queue is more profitable in terms of disk
throughput than the opposite. A similar problem is caused by logical
block mapping on non-rotational devices. For this reason, this patch
lets a queue be charged time, and not budget, only if the queue has
consumed less than 2/3 of its assigned budget. As an additional,
important benefit, this tolerance allows BFQ to preserve enough
elasticity to still perform bandwidth, and not time, distribution with
little unlucky or quasi-sequential processes.

Finally, for the same reasons as above, this patch makes slowness
detection itself much less harsh: a queue is deemed slow only if it
has consumed its budget at less than half of the peak rate.

[1] P. Valente and M. Andreolini, "Improving Application
    Responsiveness with the BFQ Disk I/O Scheduler", Proceedings of
    the 5th Annual International Systems and Storage Conference
    (SYSTOR '12), June 2012.
    Slightly extended version:
    http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite-
							results.pdf

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
ab0e43e9ce block, bfq: modify the peak-rate estimator
Unless the maximum budget B_max that BFQ can assign to a queue is set
explicitly by the user, BFQ automatically updates B_max. In
particular, BFQ dynamically sets B_max to the number of sectors that
can be read, at the current estimated peak rate, during the maximum
time, T_max, allowed before a budget timeout occurs. In formulas, if
we denote as R_est the estimated peak rate, then B_max = T_max ∗
R_est. Hence, the higher R_est is with respect to the actual device
peak rate, the higher the probability that processes incur budget
timeouts unjustly is. Besides, a too high value of B_max unnecessarily
increases the deviation from an ideal, smooth service.

Unfortunately, it is not trivial to estimate the peak rate correctly:
because of the presence of sw and hw queues between the scheduler and
the device components that finally serve I/O requests, it is hard to
say exactly when a given dispatched request is served inside the
device, and for how long. As a consequence, it is hard to know
precisely at what rate a given set of requests is actually served by
the device.

On the opposite end, the dispatch time of any request is trivially
available, and, from this piece of information, the "dispatch rate"
of requests can be immediately computed. So, the idea in the next
function is to use what is known, namely request dispatch times
(plus, when useful, request completion times), to estimate what is
unknown, namely in-device request service rate.

The main issue is that, because of the above facts, the rate at
which a certain set of requests is dispatched over a certain time
interval can vary greatly with respect to the rate at which the
same requests are then served. But, since the size of any
intermediate queue is limited, and the service scheme is lossless
(no request is silently dropped), the following obvious convergence
property holds: the number of requests dispatched MUST become
closer and closer to the number of requests completed as the
observation interval grows. This is the key property used in
this new version of the peak-rate estimator.

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
54b604567f block, bfq: improve throughput boosting
The feedback-loop algorithm used by BFQ to compute queue (process)
budgets is basically a set of three update rules, one for each of the
main reasons why a queue may be expired. If many processes suddenly
switch from sporadic I/O to greedy and sequential I/O, then these
rules are quite slow to assign large budgets to these processes, and
hence to achieve a high throughput. On the opposite side, BFQ assigns
the maximum possible budget B_max to a just-created queue. This allows
a high throughput to be achieved immediately if the associated process
is I/O-bound and performs sequential I/O from the beginning. But it
also increases the worst-case latency experienced by the first
requests issued by the process, because the larger the budget of a
queue waiting for service is, the later the queue will be served by
B-WF2Q+ (Subsec 3.3 in [1]). This is detrimental for an interactive or
soft real-time application.

To tackle these throughput and latency problems, on one hand this
patch changes the initial budget value to B_max/2. On the other hand,
it re-tunes the three rules, adopting a more aggressive,
multiplicative increase/linear decrease scheme. This scheme trades
latency for throughput more than before, and tends to assign large
budgets quickly to processes that are or become I/O-bound. For two of
the expiration reasons, the new version of the rules also contains
some more little improvements, briefly described below.

*No more backlog.* In this case, the budget was larger than the number
of sectors actually read/written by the process before it stopped
doing I/O. Hence, to reduce latency for the possible future I/O
requests of the process, the old rule simply set the next budget to
the number of sectors actually consumed by the process. However, if
there are still outstanding requests, then the process may have not
yet issued its next request just because it is still waiting for the
completion of some of the still outstanding ones. If this sub-case
holds true, then the new rule, instead of decreasing the budget,
doubles it, proactively, in the hope that: 1) a larger budget will fit
the actual needs of the process, and 2) the process is sequential and
hence a higher throughput will be achieved by serving the process
longer after granting it access to the device.

*Budget timeout*. The original rule set the new budget to the maximum
value B_max, to maximize throughput and let all processes experiencing
budget timeouts receive the same share of the device time. In our
experiments we verified that this sudden jump to B_max did not provide
sensible benefits; rather it increased the latency of processes
performing sporadic and short I/O. The new rule only doubles the
budget.

[1] P. Valente and M. Andreolini, "Improving Application
    Responsiveness with the BFQ Disk I/O Scheduler", Proceedings of
    the 5th Annual International Systems and Storage Conference
    (SYSTOR '12), June 2012.
    Slightly extended version:
    http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite-
							results.pdf

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Arianna Avanzini
e21b7a0b98 block, bfq: add full hierarchical scheduling and cgroups support
Add complete support for full hierarchical scheduling, with a cgroups
interface. Full hierarchical scheduling is implemented through the
'entity' abstraction: both bfq_queues, i.e., the internal BFQ queues
associated with processes, and groups are represented in general by
entities. Given the bfq_queues associated with the processes belonging
to a given group, the entities representing these queues are sons of
the entity representing the group. At higher levels, if a group, say
G, contains other groups, then the entity representing G is the parent
entity of the entities representing the groups in G.

Hierarchical scheduling is performed as follows: if the timestamps of
a leaf entity (i.e., of a bfq_queue) change, and such a change lets
the entity become the next-to-serve entity for its parent entity, then
the timestamps of the parent entity are recomputed as a function of
the budget of its new next-to-serve leaf entity. If the parent entity
belongs, in its turn, to a group, and its new timestamps let it become
the next-to-serve for its parent entity, then the timestamps of the
latter parent entity are recomputed as well, and so on. When a new
bfq_queue must be set in service, the reverse path is followed: the
next-to-serve highest-level entity is chosen, then its next-to-serve
child entity, and so on, until the next-to-serve leaf entity is
reached, and the bfq_queue that this entity represents is set in
service.

Writeback is accounted for on a per-group basis, i.e., for each group,
the async I/O requests of the processes of the group are enqueued in a
distinct bfq_queue, and the entity associated with this queue is a
child of the entity associated with the group.

Weights can be assigned explicitly to groups and processes through the
cgroups interface, differently from what happens, for single
processes, if the cgroups interface is not used (as explained in the
description of the previous patch). In particular, since each node has
a full scheduler, each group can be assigned its own weight.

Signed-off-by: Fabio Checconi <fchecconi@gmail.com>
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:30:26 -06:00
Paolo Valente
aee69d78de block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler
We tag as v0 the version of BFQ containing only BFQ's engine plus
hierarchical support. BFQ's engine is introduced by this commit, while
hierarchical support is added by next commit. We use the v0 tag to
distinguish this minimal version of BFQ from the versions containing
also the features and the improvements added by next commits. BFQ-v0
coincides with the version of BFQ submitted a few years ago [1], apart
from the introduction of preemption, described below.

BFQ is a proportional-share I/O scheduler, whose general structure,
plus a lot of code, are borrowed from CFQ.

- Each process doing I/O on a device is associated with a weight and a
  (bfq_)queue.

- BFQ grants exclusive access to the device, for a while, to one queue
  (process) at a time, and implements this service model by
  associating every queue with a budget, measured in number of
  sectors.

  - After a queue is granted access to the device, the budget of the
    queue is decremented, on each request dispatch, by the size of the
    request.

  - The in-service queue is expired, i.e., its service is suspended,
    only if one of the following events occurs: 1) the queue finishes
    its budget, 2) the queue empties, 3) a "budget timeout" fires.

    - The budget timeout prevents processes doing random I/O from
      holding the device for too long and dramatically reducing
      throughput.

    - Actually, as in CFQ, a queue associated with a process issuing
      sync requests may not be expired immediately when it empties. In
      contrast, BFQ may idle the device for a short time interval,
      giving the process the chance to go on being served if it issues
      a new request in time. Device idling typically boosts the
      throughput on rotational devices, if processes do synchronous
      and sequential I/O. In addition, under BFQ, device idling is
      also instrumental in guaranteeing the desired throughput
      fraction to processes issuing sync requests (see [2] for
      details).

      - With respect to idling for service guarantees, if several
        processes are competing for the device at the same time, but
        all processes (and groups, after the following commit) have
        the same weight, then BFQ guarantees the expected throughput
        distribution without ever idling the device. Throughput is
        thus as high as possible in this common scenario.

  - Queues are scheduled according to a variant of WF2Q+, named
    B-WF2Q+, and implemented using an augmented rb-tree to preserve an
    O(log N) overall complexity.  See [2] for more details. B-WF2Q+ is
    also ready for hierarchical scheduling. However, for a cleaner
    logical breakdown, the code that enables and completes
    hierarchical support is provided in the next commit, which focuses
    exactly on this feature.

  - B-WF2Q+ guarantees a tight deviation with respect to an ideal,
    perfectly fair, and smooth service. In particular, B-WF2Q+
    guarantees that each queue receives a fraction of the device
    throughput proportional to its weight, even if the throughput
    fluctuates, and regardless of: the device parameters, the current
    workload and the budgets assigned to the queue.

  - The last, budget-independence, property (although probably
    counterintuitive in the first place) is definitely beneficial, for
    the following reasons:

    - First, with any proportional-share scheduler, the maximum
      deviation with respect to an ideal service is proportional to
      the maximum budget (slice) assigned to queues. As a consequence,
      BFQ can keep this deviation tight not only because of the
      accurate service of B-WF2Q+, but also because BFQ *does not*
      need to assign a larger budget to a queue to let the queue
      receive a higher fraction of the device throughput.

    - Second, BFQ is free to choose, for every process (queue), the
      budget that best fits the needs of the process, or best
      leverages the I/O pattern of the process. In particular, BFQ
      updates queue budgets with a simple feedback-loop algorithm that
      allows a high throughput to be achieved, while still providing
      tight latency guarantees to time-sensitive applications. When
      the in-service queue expires, this algorithm computes the next
      budget of the queue so as to:

      - Let large budgets be eventually assigned to the queues
        associated with I/O-bound applications performing sequential
        I/O: in fact, the longer these applications are served once
        got access to the device, the higher the throughput is.

      - Let small budgets be eventually assigned to the queues
        associated with time-sensitive applications (which typically
        perform sporadic and short I/O), because, the smaller the
        budget assigned to a queue waiting for service is, the sooner
        B-WF2Q+ will serve that queue (Subsec 3.3 in [2]).

- Weights can be assigned to processes only indirectly, through I/O
  priorities, and according to the relation:
  weight = 10 * (IOPRIO_BE_NR - ioprio).
  The next patch provides, instead, a cgroups interface through which
  weights can be assigned explicitly.

- If several processes are competing for the device at the same time,
  but all processes and groups have the same weight, then BFQ
  guarantees the expected throughput distribution without ever idling
  the device. It uses preemption instead. Throughput is then much
  higher in this common scenario.

- ioprio classes are served in strict priority order, i.e.,
  lower-priority queues are not served as long as there are
  higher-priority queues.  Among queues in the same class, the
  bandwidth is distributed in proportion to the weight of each
  queue. A very thin extra bandwidth is however guaranteed to the Idle
  class, to prevent it from starving.

- If the strict_guarantees parameter is set (default: unset), then BFQ
     - always performs idling when the in-service queue becomes empty;
     - forces the device to serve one I/O request at a time, by
       dispatching a new request only if there is no outstanding
       request.
  In the presence of differentiated weights or I/O-request sizes,
  both the above conditions are needed to guarantee that every
  queue receives its allotted share of the bandwidth (see
  Documentation/block/bfq-iosched.txt for more details). Setting
  strict_guarantees may evidently affect throughput.

[1] https://lkml.org/lkml/2008/4/1/234
    https://lkml.org/lkml/2008/11/11/148

[2] P. Valente and M. Andreolini, "Improving Application
    Responsiveness with the BFQ Disk I/O Scheduler", Proceedings of
    the 5th Annual International Systems and Storage Conference
    (SYSTOR '12), June 2012.
    Slightly extended version:
    http://algogroup.unimore.it/people/paolo/disk_sched/bfq-v1-suite-
							results.pdf

Signed-off-by: Fabio Checconi <fchecconi@gmail.com>
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Arianna Avanzini <avanzini.arianna@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:29:02 -06:00
Josef Bacik
ebb16d0d1b nbd: set the max segment size to UINT_MAX
NBD doesn't care about limiting the segment size, let the user push the
largest bio's they want.  This allows us to control the request size
solely through max_sectors_kb.

Signed-off-by: Josef Bacik <jbacik@fb.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-04-19 08:16:06 -06:00
Jens Axboe
6af3847329 Merge branch 'stable/for-jens-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-4.12/block
Konrad writes:

It has one fix - to emit an uevent whenever the size of the guest disk image
changes.
2017-04-19 08:14:34 -06:00
Mohammed Shafi Shajakhan
c0c345d4ca ath: Fix updating radar flags for coutry code India
As per latest regulatory update for India, channel 52, 56, 60, 64
is no longer restricted to DFS. Enabling DFS/no infra flags in driver
results in applying all DFS related restrictions (like doing CAC etc
before this channel moves to 'available state') for these channels
even though the country code is programmed as 'India' in he hardware,
fix this by relaxing the frequency range while applying RADAR flags
only if the country code is programmed to India. If the frequency range
needs to modified based on different country code, ath_is_radar_freq
can be extended/modified dynamically.

Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 17:09:26 +03:00
Simon Wunderlich
b90189759a ath9k: add noise floor override option
Introduce a debugfs option to manually override the noise floor,
ignoring the automatically tuned noise floor of the driver/hw.

In my tests with a AR9580 based module and a tx99 5 MHz interferer,
I could tune the noisefloor to -95 dBm or above to allow communication
again. The automatic noise floor calibration sometimes could adapt to
the situation as well, but not reliably and permanently.

I would consider this "feature" experimental and interesting for people
debugging the noise floor calibration or other effects of the hardware.

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Mathias Kretschmer <mathias.kretschmer@fit.fraunhofer.de>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 17:08:27 +03:00
Thomas Petazzoni
28a59b6166 arm: spear6xx: add DT description of the ADC on SPEAr600
The SPEAr600 has a built-in ADC, which already has a Device Tree binding
described in
Documentation/devicetree/bindings/staging/iio/adc/spear-adc.txt. This
commit adds the description in the SPEAr600 Device Tree of this ADC
device.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:22 -07:00
Thomas Petazzoni
8590b4e018 arm: spear6xx: remove unneeded pinctrl properties in spear600-evb
The spear6xx doesn't have a pinctrl driver, since the pinmux is globally
defined through a single register, generally configured by the
firmware/bootloader.

Therefore, the pinctrl related properties in spear600-evb.dts are not
necessary.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:19 -07:00
Thomas Petazzoni
4e7adc294e arm: spear6xx: switch spear600-evb to the new flash partition DT binding
This commit moves spear600-evb.dts to use the new flash partition Device
Tree binding documented in
Documentation/devicetree/bindings/mtd/partition.txt.

As this Device Tree binding document says: "For backwards compatibility
partitions as direct subnodes of the mtd device are supported. This use
is discouraged."

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:17 -07:00
Thomas Petazzoni
d37c74a570 arm: spear6xx: fix spaces in spear600-evb.dts
This commit fixes a minor coding style issue in spear600-evb.dts:
missing spaces around equal sign.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:14 -07:00
Thomas Petazzoni
1d72c2f27f arm: spear6xx: use node labels in spear600-evb.dts
Now that we have introduced node labels in spear600.dtsi, we can use
them for spear600-evb.dts.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:12 -07:00
Thomas Petazzoni
85a390b0e2 arm: spear6xx: add labels to various nodes in spear600.dtsi
Having labels allows to more easily reference nodes in .dts files
including spear600.dtsi.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:08:09 -07:00
Olof Johansson
98e53cfaf7 mvebu defconfig64 for 4.12 (part 2)
Select two new drivers  for ARM64 mvebu SoCs:
  - Xenon SDHCI controller on Armada 37xx and Armada 7K/8K
  - Safexcel crypto engine on Armada 7K/8K
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWO+j/yMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71SnoAJ9r0d9MIBvq
 3TWmgUDmImgaucJ5HACggm9+Jqh/GgXTBlxFnszhN9/BuCM=
 =Le5K
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-defconfig64-4.12-2' of git://git.infradead.org/linux-mvebu into next/arm64

mvebu defconfig64 for 4.12 (part 2)

Select two new drivers  for ARM64 mvebu SoCs:
 - Xenon SDHCI controller on Armada 37xx and Armada 7K/8K
 - Safexcel crypto engine on Armada 7K/8K

* tag 'mvebu-defconfig64-4.12-2' of git://git.infradead.org/linux-mvebu:
  arm64: defconfig: enable the Safexcel crypto engine as a module
  arm64: configs: enable SDHCI driver for Xenon

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:07:50 -07:00
Ryan Hsu
aad1fd7f76 ath10k: bump up FW API to 6
For QCA6174 hw3.0, since WLAN.RM.4.4-00022-QCARMSWPZ-2, it starts to
support the board ID information from otp, with some devices released on
the market that didn't calibrated with OTP, will have 0 for board ID
information, which cause the backward compatibility issue and was fixed
in commit 'd2e202c06c ("ath10k: ignore configuring the incorrect board_id")'

So bump the fw api version to differentiate the latest firmware support.

Signed-off-by: Ryan Hsu <ryanhsu@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 17:06:42 +03:00
Olof Johansson
ad8618cb9c Aspeed defconfig updates for 4.12
Add newly unstreamed drivers to the defconfigs for the Aspeed SoCs.
 The defconfigs are reworked to be useful for development and testing
 of OpenBMC on these systems.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY7ZF6AAoJEGt2WQeBR3CecWoQALP2+KoIBHKtvmV8yfKQlsEi
 zpOeaLyGD5jkc099KscfoSAF0qG+m+nHvoYc75MsW9n19CePmHZmqwnHDi680+dq
 NXaKHChTumhuJFvzGt9soRMQBqZU5xBhr550xkQ5t3r82AuofJ+4BzsCRdidN7Tn
 y6ocW7jMVlG0AG82qZtlbljeB95xkPOHhnu562AFAp0D85Anin+aVYQYlBxLrH4m
 lTE3sadX9kmTbDO6KjYlko5wfl6crzyeny94oxhqT2zDImI/4RLM7poJce0SPqKa
 tv2WknR7v1xtOXPTjJ9d7sb6mXoDy0zir9TjomVGTfSORt+ccBi2Tvybe/vJkHU0
 /Qp4mXAUQ2exI9Qm8w5F8PZz1utNpbttYhc1fHmqV8aN1BDgZgm00IgOn3DRnFzJ
 pxueCbV042zC0jAADW3+Eu+4Am/XyKmcwcjSAwqhAN4Yu2YDLKCMQGyT7WP3So/B
 W9T9UQvPcd2lRCfzkB4IF2DFDmla7quejZZr5A/ZW0uL+mW9Y/Ey8V6A+QaYlrm6
 VvWZrjSJvjc4/Rg1BrHnc4Nd5FhVlPsOg/wj9CR/ch2HLvEzTeFX2FwyFr3D2lWa
 TrnmeLcMorNU6ZDMvWlReY91qU4gETIxWDbDqykcgdx+eowS9HBPpS6mYmovfpVf
 gto8cYumc7pTXbHTXZTW
 =/Q63
 -----END PGP SIGNATURE-----

Merge tag 'aspeed-4.12-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed into next/defconfig

Aspeed defconfig updates for 4.12

Add newly unstreamed drivers to the defconfigs for the Aspeed SoCs.
The defconfigs are reworked to be useful for development and testing
of OpenBMC on these systems.

* tag 'aspeed-4.12-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed:
  ARM: configs: aspeed: Add new drivers
  ARM: configs: aspeed: Update configs for BMC systems
  ARM: aspeed: Add CONFIG_SPI_ASPEED_SMC

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:06:04 -07:00
Mohammed Shafi Shajakhan
a4aab099cc ath10k: fix spectral scan for QCA99X0 family of chipsets
spectral_bin length (number of bins per fft sample) is usually
a value where (2^n = value), n is an integer.  All of the QCA99X0
family of chipsets seems to report a spectral_bin length of
2^n + 'm' bytes, where m = 4, 12 based on the chipset. This 'm'
bytes seems to carry some radar related info which is currently
discarded only for 'bin_len = 68' bytes. Extend this discarding of
irrelevant 'bin_len' for QCA9984, QCA9888, IPQ4019 as well by
introducing a hardware parameter 'spectral_bin_discard'. Also
for QCA988X based family of chipsets which doesn't seem to have this
issue and also for some of the hardware which I have not tested
like QCA6174/QCA9377 the existing behaviour is retained as it is.

Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 17:05:26 +03:00
Olof Johansson
17e310b8ee Add clock for CPPI 4.1 DMA engine thats
part of USB OTG subsystem on DA830 and
 DA850.
 
 This builds on top of the pull request
 sent earlier:
 https://www.spinics.net/lists/arm-kernel/msg573985.html
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY7eaYAAoJEGFBu2jqvgRN6UAP/0DdWfDVUs4dr4eGpknSpuWI
 HOGnlqwZhCujNhavrAkxfYXsNezAgtPOskWJ/ssNHjQwJlkL1QQ49up/wYSFwouA
 6VoomcAcsRlcVkQ0ZImq5czGl+xlbNvF9+WU9JDSkoajdbFyaB/Ni2YCTVkeBI3a
 Hvh74tXgs0EmZT0spjW4jlMqmEmdDT739YEpopnIKNIwgnkUWkSNRv0XBNemE/Oh
 a0qLgff0YQtyObklicy3yMRyU81cdFgWRPQe/lsNJAO+HtQoLgDLpGg96yzZfCEM
 SAtnKBexc16l2wO7UPd41iu1JQjlqJWiukoaqw7YHnlKIj9U/ZgM32Ob9a6Qd60s
 EOukXRdrsqTGhAVG2c2sTda0TLB3MG69AHb65HdbE99Pn2l5b73nEPETgAp4DEMh
 oSnPpXY/joGxf7dR3+94Zj2VmZ4bC1OajejErLnv6tOmYJpWhJkCGWGTIEy4ZBNe
 5czidYr9n66GtzpVhsHbv2k3T0SVrLEcQFfLZVTeckxuykAZIXp4q0YHOFS5kl85
 T9tCL7KLDxUjdi4aArVPblcmDIwq3ZNygSc3IUr/UXC6A/ZdCcgZ5LjFaM3BB1O+
 9RFLjndF6XMre7geSa6Mm2hTUedQrt7unurHaYAkIfxBRc6XrDDblXm9f8fh/clz
 9VSwPRqXuoNO5OyY5BFk
 =gHAD
 -----END PGP SIGNATURE-----

Merge tag 'davinci-for-v4.12/soc-3' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/soc

Add clock for CPPI 4.1 DMA engine thats
part of USB OTG subsystem on DA830 and
DA850.

This builds on top of the pull request
sent earlier:
https://www.spinics.net/lists/arm-kernel/msg573985.html

* tag 'davinci-for-v4.12/soc-3' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: davinci: Add clock for CPPI 4.1 DMA engine

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:04:21 -07:00
Olof Johansson
1bbecc8cd0 SoC for 4.12:
- huge PM cleanup
  - Move SoC detection to its own driver
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEl0I5XWmUIrwBfFMm2KKDO9oT4sIFAljrtPEACgkQ2KKDO9oT
 4sKj5g/+OpnpOZWlnV7poaiFcRXKupKgfL913o0jmsc33h5e5OIt9G+woWcPSn+D
 F68ArSKCKo54SNq1ZGE8imwrkAkBLcl4afBs5rZ67JJI5fBG3Wguj/smUxS5tthX
 SfNGd2t7SAGc/9NlQR7W3gizS/ATCrDoCdSpHYIV5zzjf0zbnqgjmWbfkhhc+45b
 /7A/PGFqAL53CpXxTzjkYP5HejWZ5qV5grjc884sUdHNeScteqlCCXDX2VVDtKC+
 hWBV8afizdOOSRDfXSPfGIk/LP1VP7zswotJf0RojzxKWk+RJEkNYr6CHNqugNhe
 MRWdBWRat1HeQ9jK9rr4U6tJhNhnfJWTPtz7Nf+GeZIxrc2RDALBV9w9Z7ikl3rv
 Or7sCmV/49RWCHOzeBg1ldv/kIq0rlZb8/UKkB0buuymNf/gpiW4VfbT0xBoURee
 P8/1nY6mkQNhbesu0T2KYkwYTGLXcorS6gndx0eq8NooRbkl/BSd2rxSlyGDIKxc
 OrFo/aexOP0akmyN1SGRx2i9Pv5Ke+Lq1f4tYFtHFhqZEeVCHMMSPZdaBvclko5D
 1HSh8DCxWMMQXirwrYMQwJ2mdcCK/numQIywKKvYbLB1N1OahJkupXb3l+DftiTo
 2AU8gBLMs7Xj3e/oq5Sms/yhJxj5g3TQwyjLN4jPO0+4M/0zLfs=
 =rsRg
 -----END PGP SIGNATURE-----

Merge tag 'at91-ab-4.12-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/soc

SoC for 4.12:

 - huge PM cleanup
 - Move SoC detection to its own driver

* tag 'at91-ab-4.12-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  ARM: at91: move SoC detection to its own driver
  ARM: at91: pm: correct typo
  ARM: at91: pm: Remove at91_pm_set_standby
  ARM: at91: pm: Merge all at91sam9*_pm_init
  ARM: at91: pm: Tie the USB clock mask to the pmc
  ARM: at91: pm: Tie the memory controller type to the ramc id
  ARM: at91: pm: Workaround DDRSDRC self-refresh bug with LPDDR1 memories.
  ARM: at91: pm: Simplify at91rm9200_standby
  ARM: at91: pm: Use struct at91_pm_data in pm_suspend.S
  ARM: at91: pm: Move global variables into at91_pm_data
  ARM: at91: pm: Move at91_ramc_read/write to pm.c
  ARM: at91: pm: Cleanup headers
  MAINTAINERS: Add memory drivers to AT91 entry
  MAINTAINERS: Update AT91 entry
  ARM: at91: pm: cpu_idle: switch DDR to power-down mode
  Revert "ARM: at91/dt: sama5d2: Use new compatible for ohci node"

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:03:33 -07:00
Olof Johansson
d7718c147a ARM: mach-hisi: Hisilicon SoC updates for 4.12
- Fix the error return code in hip04_smp_init
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY6IFTAAoJEAvIV27ZiWZcR78P/3e9yd9dcZXzjfYD9UMzxW67
 h7CloL9U1c3xC8vvPvU8tbCdiZQAvhU6JWmfJlBap2gVUDcPLmFgl8zDOnUG8Ar+
 Qx4jruv7Kd5m0HrugZIdHxLeuK4DrdRy/gz6LG49V0J8eoMJPtcJAo/8i4gso12C
 mr98lYs8FUHoETYEgeSw2oU73I7oTJhLymvTSSAs5bCsYdST6Y9+KpF/tISi8Yqm
 ezSpUjp7b089QZD0K6zsET0EgNYWF2vejOYi1jKIrejF7K4pJWPKp7xduqCDCYjQ
 vV3n/JLDZyDSXD0JKgBEuYHYyiII3O8us2m5yPx6UWpCTXzH4z28nMy6hlY9uBJ3
 2zN9SOJGJutmXOBPoewPzy20wS9bFwTIsRTGPrTZia3SaHFoe/S4gaeWcnVWQzs+
 op9FpM7iLxpHO/ZWUqKwJoFUFeHJhzo/WUb3GRcVadHhTD3/lrONIvyGKsuBWIUq
 682IGb9S7il1RIB48383tFzgW9HUNeHXta9dnOsV3/EmlDI/2szDXd34Ncz9m2oP
 MRlDccc90I79g2nGKE0+1Axu5h5bkdsOKhkcc2PYCtq0Q290wnhaTd0Q23ie+hQX
 dZN9oSGffXThbUoJaVceHPA7t+HGIek21FYHyIYLFc+jcMgRIEXmgMft05b56kWX
 gvwHlW9jUukK7lvG39IV
 =HwMR
 -----END PGP SIGNATURE-----

Merge tag 'hisi-armv7-soc-for-4.12' of git://github.com/hisilicon/linux-hisi into next/soc

ARM: mach-hisi: Hisilicon SoC updates for 4.12

- Fix the error return code in hip04_smp_init

* tag 'hisi-armv7-soc-for-4.12' of git://github.com/hisilicon/linux-hisi:
  ARM: hisi: fix error return code in hip04_smp_init()

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:02:50 -07:00
Olof Johansson
ab57c2b494 i.MX SoC changes for 4.12:
- A correction on mmdc_pmu_write_accesses event definition.
  - Add new axi_id perf command to support MMDC filter memory usage
    profiling.
  - Set correct SPI chip_select in platform device registration, so that
    spi-imx driver code can be improved to use chip_select directly for
    harwdare setup instead of indirectly via the cs_gpio mapping array.
  - Disable APIS bus supervisor protect for i.MX25, since the default
    configuration doesn't work for a few peripherals accessed through
    SDMA.
  - Add compatible check for the secondary generation of I2SE i.MX28
    Duckbill board support.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJY64oDAAoJEFBXWFqHsHzO0OcH+wadr5A/YJBUnFqJeQKxaOPU
 rZBb0alc4+YLY5OAJ7kj/KFaO9YYDn+Y6N3bwcuHyQ93UZ5xmXWyFAmRJuknDBsj
 uH/9a/HwmWNt1XjD8dMw8jVH6/uU4EK02SDwve+GDjl46tS45JISYWLlCfzW1ORt
 WCD656/+mnvvWNMFk0l8A6u557PjCuy/z/Eq+CLXzPom72WpTmJMKSicooeWCjCN
 2JqvNE1B5ny8QRspgo+1QukoTE3LqbTtPjXdhW3+Xr4R93e46/eKEQ4bCCygcp3O
 0DcleV8TqwUXnKGnt/LDoD+fHUjmFFbEWKSYwmo/nlLH7ftRfDUyeZgeFaDzVsQ=
 =Ha8G
 -----END PGP SIGNATURE-----

Merge tag 'imx-soc-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc

i.MX SoC changes for 4.12:
 - A correction on mmdc_pmu_write_accesses event definition.
 - Add new axi_id perf command to support MMDC filter memory usage
   profiling.
 - Set correct SPI chip_select in platform device registration, so that
   spi-imx driver code can be improved to use chip_select directly for
   harwdare setup instead of indirectly via the cs_gpio mapping array.
 - Disable APIS bus supervisor protect for i.MX25, since the default
   configuration doesn't work for a few peripherals accessed through
   SDMA.
 - Add compatible check for the secondary generation of I2SE i.MX28
   Duckbill board support.

* tag 'imx-soc-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: mxs: add support for I2SE Duckbill 2 boards
  ARM: i.MX25: globally disable supervisor protect
  ARM: imx: set correct chip_select in platform setup
  ARM: imx: Add AXI address filter support for MMDC profiling
  ARM: imx: Fix mmdc_pmu_write_accesses event definition

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 07:01:18 -07:00
Matthias Kaehlcke
627871b71c ath9k: Add cast to u8 to FREQ2FBIN macro
The macro results are assigned to u8 variables/fields. Adding the cast
fixes plenty of clang warnings about "implicit conversion from 'int' to
'u8'".

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 17:00:48 +03:00
Olof Johansson
dd726fcb6b Samsung ARM64 update for v4.12:
1. Exynos power management drivers support now ARMv8 SoC - Exynos5433 - so
    select them in ARCH_EXYNOS.
 2. Enable few Exynos drivers for supported ARMv8 SoCs.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY6OrIAAoJEME3ZuaGi4PXqGEP/AketlP7sWJncRV8GU5ynsfL
 0hRfK1Nsiku9ngHn86PaRXKIEhxSo7zl3ruqNwWu8CIzfpVjZxsXe9qXxirEDtLq
 yoDb3TuNfhPJoLRhw+B1zPjl3MuI1OCX2lBE4xr4p5yMajEuzYoMDNob5z/Faxaa
 BQq/IOMtBxKhEe5LDU0Vzjl0cltgsx6issu5hVtdAgdPPC24WaNmV74rdDeUt6+y
 9gUwxcmIj08DjExvKXILBCNUmFIcvHPLcWzcAcquDPMwRP2u1sd4M/S2W+Zr3rad
 PpJ98VTbwvUOyzrLRXvgpq/DzQwdKAPnrucu5JjMY3GIzZaCffcC7MHrzTGGRePn
 W8LHkcpX/K2OYYBZZCRpUF9+PnNOdQp+SmS/bOe0kg6+Cv1NrOHi1hsverNcHCDs
 ZiS0Z6ag8SaRpbUW6xNPjWFexAvV4zecxh2N7ojy1AKxYnbEPojjsot/6moudiuF
 HahOG38/aiEmUUs3jBbgFfEtzrUTuAP1c2aeBNil5cwTQQ9v9ihZJ8jaDI9if6je
 iIk8A9VsB712bkFUfXm0lRB09keHOi662rSS0KvFANp4athxj6faFdLd4wsrkyWQ
 nA/jAB3nQ30mD+MJx3MSN+AZci+zx+pmh/Wo8ehXTQKkQS0DJaSW6OWqo/Gpv59G
 MuUj9PBf9IEArewadSWo
 =lXKo
 -----END PGP SIGNATURE-----

Merge tag 'samsung-soc64-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/arm64

Samsung ARM64 update for v4.12:
1. Exynos power management drivers support now ARMv8 SoC - Exynos5433 - so
   select them in ARCH_EXYNOS.
2. Enable few Exynos drivers for supported ARMv8 SoCs.

* tag 'samsung-soc64-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: defconfig: Enable video, DRM and LPASS drivers for Exynos5433 and Exynos7
  arm64: exynos: Enable Exynos PMU and PM domains drivers

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:59:38 -07:00
Damien Thébault
050fd820dc ath9k: Add Dell Wireless 1601 with wowlan capability
Add the Dell Wireless 1601 card as an AR9462 in the ath9k pci list.
Note that the wowlan feature is supported and has been tested
successfully.

Signed-off-by: Damien Thébault <damien@dtbo.net>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 16:58:46 +03:00
Olof Johansson
d12523f14e Samsung SoC drivers update for v4.12 - split building of the PMU driver between
ARMv7 and ARMv8.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY6Os5AAoJEME3ZuaGi4PXD9MP/2Yptk98gN/UCV9CnYjJns9+
 6DIyQS3nVKBd2kz5Vp6e4ClpRfNbC3TrX2zfIIW1yICy8Y3URuFhhoT/wrzqRdIw
 eYjQnuKzUnA6yacERdnBbPMyRnZIClfcWAQoo2gu8KC/LbDilfLk03pdtVk6gKH5
 4AD2bWHGcq5TWFGtB+Ynpt3PIHCJH7s6Lwvcsk2Bl8PTTCRUxPKbzwgw0t5FHTjB
 cg/G4mxVGATdwpMpcONnV2XTgm2/ckIL578Dq+qwVHj/lViJwegJnBlWd3zn8GEw
 xzFUz3SM4mnxbukOucWvCN+D9jLSBZ1eUMRp+JTp4G+SEnnJ7JZznnXkqaik2b3j
 CD4jC+l86RTZ04cBLdevx9JccMjrFxVTVYKeVIKjifJngM7sZ1v3cUc4zJJthadn
 eco47qS0YU2hIjDqiul4vBk6hSFgDUo/zzAYO8LyGTVLy2KqrgAxNhGLCF+/Hhzp
 XM8JF9b+DWdOC6mnUM85eiQNLHV6ZJAwxqJCW7Q6Rh/aEkJ82kfbSMe7t8Noi6df
 hwQK7SvyRqtHc7JiILk+u2JNYDh/EISOyxePIQvRHiZlHDXhVVBP9J05+/rgb6yt
 e7RMuoVYGaNYBIZx37AUVZwpZWKxlzwQjuKGRr1RSt7KUSmoiklvtPtQ1GIiSRb0
 EfRF3M9+47qPVKv1AVab
 =Wfmu
 -----END PGP SIGNATURE-----

Merge tag 'samsung-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/drivers

Samsung SoC drivers update for v4.12 - split building of the PMU driver between
ARMv7 and ARMv8.

* tag 'samsung-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  soc: samsung: Do not build ARMv7 PMU drivers on ARMv8

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:58:33 -07:00
Dan Carpenter
b7dcf68f38 ath9k: off by one in ath9k_hw_nvram_read_array()
The > should be >= or we read one space beyond the end of the array.

Fixes: ab5c4f71d8 ("ath9k: allow to load EEPROM content via firmware API")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2017-04-19 16:57:41 +03:00
Olof Johansson
32d8b52b90 Renesas ARM Based SoC Sysc Updates for v4.12
* Add support for R-Car H3 ES2.0
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY59ObAAoJENfPZGlqN0++mmAP/iLPRVjE0DoqVVQbNeIq4pOI
 0HaIU2MZH6cPN2868CBp+8/UsPQXUBtpBRdRsc7+B2gSQteFhEZ8b+tTJ007BohM
 YO4XSSfwEUedKoPB5N88hleGrXjvUbNBECOeD5XSOX3X9qQLDUkzpgDgfL0WPl6D
 gU3G7IitR2KnBTz5n8XbrdTVccZbafXutj3Sp8pTxd4Yc8ajL8MkxbwTjlGratfw
 sOUW1zxIv7c9eanfbYZQ3ZGNm++2w/WnqhPBTYfxcBVK95dslWjkxf7HawujeaP7
 CihAakoH9QoYsrnyEMbMn4xpCJEYB8U5zaIzyOFHhGCtF5AXUrKFcn1DMpU7sORJ
 mu4UDUHIugGsu/RdOcOdB/dZ5GcfFtVehDLKtAGdoAwyc6eY9URAwOlOV9abOCtf
 qWSGHv0dKCVg5fLcuCzXMYd7DxXN1X4A0wj94S6XF5S1/wcWJaOU2uJKPSguoUzW
 vQt4jIM7TUUK6YAVj0xec40lXf0AuJ4FcXI/9TEnYnmqzOEwZzKzrlMv3xnqp08k
 jQarhWJLvN23lDAtGOorLJKOZyveXy0E3I9IJT8PgZpGmOlijSRBzhXsN1NeGsYo
 663+3feI4Qe5vtu8Obv/vA0BcYHiA+AcEBwWYFAZOGGSM2IucORxX9UAu8XBmtRB
 FnS/AB2yrsoL9VjKgeYt
 =m+ef
 -----END PGP SIGNATURE-----

Merge tag 'renesas-sysc-for-v4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers

Renesas ARM Based SoC Sysc Updates for v4.12

* Add support for R-Car H3 ES2.0

* tag 'renesas-sysc-for-v4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  soc: renesas: rcar-sysc: Add support for R-Car H3 ES2.0
  soc: renesas: rcar-sysc: Add support for fixing up power area tables
  soc: renesas: Register SoC device early
  base: soc: Allow early registration of a single SoC device
  base: soc: Let soc_device_match() return no match when called too early

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:56:18 -07:00
Olof Johansson
214b8b8e0e Alpine DT changes for 4.12
A bunch of clean up for Alpine device trees, nothing fancy.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCgAGBQJY8R9iAAoJEFxNi8it27zYMTMP/1SE9M1Gy5nngeTxVTJeTvbf
 vTElGQ6FzV9HBkL88b3+fVcUWh0YTlffzUWE7cfPPOaaXkImYRF+7QrL8zht9nS8
 SIIjS1j/wVBm0Zl4/vuYiMZJR0CJOLypFV8ELb24Xj96Mt7idUHGZNL4T8ygCd8W
 HoKNDhpstg7rHPJFjjDM6OanQbhTJIpxfkKbBNfe+wg1e9O3Jj082ldOFU9jkS6D
 wTu8XFYo+YnbIrK+K4HuK2V0sawOPK9ga0/+6K9TChN20pO/dsphlMpkL1VPc7Vf
 lK3Mt3eeR9GOCQvIh4gzcPjcJGtlWbjlvCsLsb7oXP9s1CxxcbGfRgYevIj7S2Lw
 M/gG0oi2BcdRjx9oc+H0OZYGAcWHMUyCJH6JHYzDi9NKl6hfvbJc/eS6f1c6S4ie
 boDmBuaVp6N2k7jKtW3D49CEWX4XYgx2weuA/b/fjKyFzcPXCJ+Z/N+506KH9ByR
 D4um8m6IGeeubALSVh9URkKT/YQDpa8+szGMNDJwN5eyr50rTp1ETSmL4O+stFIX
 5qLMdDXMLtmiOQ5qbrKsz4ip3SJMTLvnknbfiCN7EHxs7Tmorth7q1PUoCgsAWHn
 zFaDlhuHvWmCGshRqFYf+iVpPXD+UZHiHztggXFZ3YafQjfG8iwJw7OlvTcMpWGB
 u5IlWBm1qM+ynQAhy6mK
 =aD3G
 -----END PGP SIGNATURE-----

Merge tag 'alpine-dt-for-4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/atenart/linux into next/dt

Alpine DT changes for 4.12

A bunch of clean up for Alpine device trees, nothing fancy.

* tag 'alpine-dt-for-4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/atenart/linux:
  ARM: dts: alpine: add valid clock-frequency values
  ARM: dts: alpine: add spaces before the uart node units.
  ARM: dts: alpine: remove 0x's from the uart1 node unit address
  ARM: dts: alpine: fix PCIe node name

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:50:30 -07:00
Olof Johansson
d6d9ac9e48 mvebu dt for 4.12 (part 3)
Use label for USB and SATA nodes on Armada 38x
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWO+kqSMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71V2vAJ47Vu37Pig3
 Quq7c68ByWMNhRv0IgCgpJOKmYRrcibw/AbrHIh6ZZUoN7g=
 =AtGR
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-4.12-3' of git://git.infradead.org/linux-mvebu into next/dt

mvebu dt for 4.12 (part 3)

Use label for USB and SATA nodes on Armada 38x

* tag 'mvebu-dt-4.12-3' of git://git.infradead.org/linux-mvebu:
  ARM: dts: armada-38x: label USB and SATA nodes

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:49:58 -07:00
Olof Johansson
5fadb51017 Aspeed devicetree updates for 4.12
Updates to the device tree to include upstreamed drivers:
 
  - SPI flash controller
  - Watchdog
  - ADC
 
 In addition we describe some of the clocks so that upstream kernels can
 boot on hardware.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY7ZDwAAoJEGt2WQeBR3CeYSkP/2l1HHYbBkIr7778RkHVbnMj
 LWVAqg9z/PpwMdv5PLER56FtkczxxVsR0zpKIgeX9aRY5VGZdtxSw4lDWvIj6XWu
 VQNxQtwT+BzybPKgrACaz5GIct8JxnE/7cdvpVTaFJB+wgNXcIUNwkoXMse+GE94
 vWuMNKwJhv5aLpoSfgMpcVIx83ZfAzEj1J1ZQ0IvRAnctypZRhvZKSwlIifJmDId
 UVAzQN9Vd53jJpwZaWtZcfBRRY/oY+KlxLFqrPO3MfxM6DMv7/88/zRbS47DkDsZ
 l+wfb5f+OvpUos6UbQWItrJv02a6tkgDZNHzLQ38QRCXn5k/FBDCsYj/v09dInqD
 NIo+0crqgZBf26vZps729H3HxlIBJgrDtkFiAaSUSbHgChm9eXMiZFJoqdLt/6hs
 kJsnqLTDHnqYX/cZKq6w9xlKBHoH9lI4lbhV1O8Mr2AFtLNbBkIOQMboQfvpjpgW
 Dm1KdHZm4tAS/mOBvPwu3lTT/WPPwby7Gno5dkNMtG4HTyf773Q//bC6PsVmO9hd
 VQjwrdvBVZYGqXJfMw03zhj6eAS23PkyuU99BsK2JETj3f2fxrqCFdc43aH04uMW
 371yLBI9l7Et2WC+JMsPm5UW5P6yKwlPdYLRr5xJPM3YjoV2zklf0ACi4rEL7Kxp
 XFQaJ0nRKyCGx0y6O5Zr
 =bGNK
 -----END PGP SIGNATURE-----

Merge tag 'aspeed-4.12-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed into next/dt

Aspeed devicetree updates for 4.12

Updates to the device tree to include upstreamed drivers:

 - SPI flash controller
 - Watchdog
 - ADC

In addition we describe some of the clocks so that upstream kernels can
boot on hardware.

* tag 'aspeed-4.12-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed:
  arm: dts: aspeed: Describe ADCs for AST2400/AST2500
  ARM: dts: aspeed: romulus: Add UART1
  ARM: dts: aspeed: Update watchdog compatible strings
  ARM: dts: aspeed: Add a fastread property
  ARM: dts: aspeed: Add SPI controller bindings to Romulus
  ARM: dts: aspeed: Make G4 clocks fixed
  ARM: dts: aspeed: Make G5 clocks fixed
  ARM: dts: aspeed: add SPI controller bindings

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:49:18 -07:00
Jason Gerecke
286f3f4787 HID: wacom: Treat HID_DG_TOOLSERIALNUMBER as unsigned
Because HID_DG_TOOLSERIALNUMBER doesn't first cast the value recieved from HID
to an unsigned type, sign-extension rules can cause the value of
wacom_wac->serial[0] to inadvertently wind up with all 32 of its highest bits
set if the highest bit of "value" was set.

This can cause problems for Tablet PC devices which use AES sensors and the
xf86-input-wacom userspace driver. It is not uncommon for AES sensors to send a
serial number of '0' while the pen is entering or leaving proximity. The
xf86-input-wacom driver ignores events with a serial number of '0' since it
cannot match them up to an in-use tool.  To ensure the xf86-input-wacom driver
does not ignore the final out-of-proximity event, the kernel does not send
MSC_SERIAL events when the value of wacom_wac->serial[0] is '0'. If the highest
bit of HID_DG_TOOLSERIALNUMBER is set by an in-prox pen which later leaves
proximity and sends a '0' for HID_DG_TOOLSERIALNUMBER, then only the lowest 32
bits of wacom_wac->serial[0] are actually cleared, causing the kernel to send
an MSC_SERIAL event. Since the 'input_event' function takes an 'int' as
argument, only those lowest (now-cleared) 32 bits of wacom_wac->serial[0] are
sent to userspace, causing xf86-input-wacom to ignore the event. If the event
was the final out-of-prox event, then xf86-input-wacom may remain in a state
where it believes the pen is in proximity and refuses to allow other devices
under its control (e.g. the touchscreen) to move the cursor.

It should be noted that EMR devices and devices which use both the
HID_DG_TOOLSERIALNUMBER and WACOM_HID_WD_SERIALHI usages (in that order) would
be immune to this issue. It appears only AES devices are affected.

Fixes: f85c9dc678 ("HID: wacom: generic: Support tool ID and additional tool types")
Cc: stable@vger.kernel.org
Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2017-04-19 15:49:11 +02:00
Olof Johansson
16101f0510 Second set of devicetree changes for omaps for v4.12 merge window
to configure various devices:
 
 - Enable DCAN on am57xx-idk
 
 - Enable CPSW ethernet0 and 1 on am335x-icev2
 
 - Non-critical fix for droid 4 PMIC interrupt triggering
 
 - Stop disabling SRAM and GPMC on droid 4
 
 - Configure CPCAP PMIC related devices on droid 4 for ADC, charger
   and USB PHY. The charger and USB PHY drivers are still being
   discussed, but the binding for them has been acked by Rob and
   Sebastian so they should be safe to merge together with the ADC
   driver in Linux next that they depend on
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAljruX4RHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXM16g/8DeQMUItFTVrUBfvlHYAakL3hCJKGJQoU
 8vL+4N6oGhPzFje65ifX90GuPidKJDffkExbzBZn5K1JapuuafQDZ75QyxkM2tx2
 fESMgKNpXe78K+0GQ3sLESB6DQMQCai6H3XUKjXKi/dcG3NG6J9BQJJXdM2jFLsT
 OxIDVtHmwAJwx/BclmjCPsAKZVW/3HiqMXoiovXb0aQQXNjBqlmhBQUL+YO8Kxwq
 VOlGhsxzHPubAEv98VQeTUpZR4G+1JljmDP4UW4H2HHdWMzNvZIyd7Tk/6Tr+ek1
 GPr89zm9QqpvzVXvLqwRG27EF9EpYbMbcrUn+02YV6Z0Wrbh6m6Hm0fg3nqGrkdC
 l4DG0SExzGzi/Vxgfw71JyXcyEabF4gOMMLGcVFcAA/83PaRFB5kFENOW0gMLQ5e
 9G6zesj/0ET7m/qMAVcExA+gREXOjCswc3twrYx9vYeS03Ma4Jzg7pzmS+Af+Wcn
 leNviCjVb4aArBAxvEEId0ajVicftc0by61HviRacm1TUL4Gh0mvyJtN3sjRD+8w
 dFSFVzGpBs9WQWuf82OVss1c4vLN/0I6sTa3RQT2PNUBAA+4GFFWJxrlDTXH8+tp
 oN2Ubc9JKt8hPJUY3AeXgC35kqloTUIPJARhIbmjeWKTJ1h/FXHBVEEyp3ut/vuE
 7/oCbfeW7k0=
 =Jna8
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.12/dt-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Second set of devicetree changes for omaps for v4.12 merge window
to configure various devices:

- Enable DCAN on am57xx-idk

- Enable CPSW ethernet0 and 1 on am335x-icev2

- Non-critical fix for droid 4 PMIC interrupt triggering

- Stop disabling SRAM and GPMC on droid 4

- Configure CPCAP PMIC related devices on droid 4 for ADC, charger
  and USB PHY. The charger and USB PHY drivers are still being
  discussed, but the binding for them has been acked by Rob and
  Sebastian so they should be safe to merge together with the ADC
  driver in Linux next that they depend on

* tag 'omap-for-v4.12/dt-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: omap4-droid4: Add CPCAP PMIC OTG PHY configuration
  ARM: dts: omap4-droid4: Add CPCAP PMIC battery charger configuration
  ARM: dts: omap4-droid4: Add CPCAP PMIC ADC configuration
  ARM: dts: omap4-droid4: Stop disabling SRAM and GPMC
  ARM: dts: omap4-droid4: Fix interrupt triggering for cpcap
  ARM: dts: am335x-icev2: Add CPSW ethernet0 and ethernet1
  ARM: dts: am57xx-idk: Add DCAN support

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:48:32 -07:00
Olof Johansson
77f2369789 DT for 4.12:
- Add SFRBU on sama5d2
  - DT improvements for sama5d2_xplained, sama5d3_xplained, at91sam9x5ek and
  Axentia TSE-850
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEl0I5XWmUIrwBfFMm2KKDO9oT4sIFAljwf8cACgkQ2KKDO9oT
 4sKN+w//WxdbKG6tOOIeIn/qFbbYDQ7mJhpX9h3ZuHntnp3TXCed8dog8ELIKcPP
 uQzkKvwOMq+MtGpjEFstCpO3YBD7lvjXD1MmhARSVI5B3mvSp3eeQdI7QgzHJHna
 0oQaKtQgNo1LxhkK2guo/C3CzTULaSRzLcofRzjdnAg+xeGZgcd8u3yRQ6phfTgZ
 XZ8QrzpnOAe9se9/oNzyWcIkXSYJkihDp0/0iOfDWUoERek/B4PFUxxKAemONL9o
 EencH4249RWLk4lZ/RCSWLiSceCV2YebcwL7GcYNINnt17xkS/MaqTmxEyPSp7cJ
 aGYQr9bD+BIK+YYRuNN6tUlbTXN27+0z74c19yXWQPjcY5sh1W64Yra9LSJKqaKj
 RTZQyEvKWYoHAcJ9SRFvEUGZmjnEoIr0SeghW2mcBSnBFUOvfWQkzypiYHDgmvlb
 UMWXRNwqHTpP0n9ogeUW1Hd6aEdsoU5DeMF2FTEC8UxgJt7QukyfmfnywCdSfzuT
 9EHAYo3yutb/lQZosRrV252Q3FS/2SpY+p0jaP01w2UFllQpcDil5DnLt9JaepeK
 bQeE+orOHfkBCNZFzSZjTA6/mQQzzuAYHKq6LPBdGOk0WphWvU17KPZUllJYu9T1
 iAnD/1Uh2yJFXQdDYmXtQIi/R037vaSVVtTxyXWKteTdotpALjc=
 =VO8s
 -----END PGP SIGNATURE-----

Merge tag 'at91-ab-4.12-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt

DT for 4.12:

 - Add SFRBU on sama5d2
 - DT improvements for sama5d2_xplained, sama5d3_xplained, at91sam9x5ek and
 Axentia TSE-850

* tag 'at91-ab-4.12-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  ARM: dts: at91: sama5d3_xplained: not all ADC channels are available
  ARM: dts: at91: sama5d3_xplained: fix ADC vref
  ARM: dts: at91: add envelope detector mux to the Axentia TSE-850
  ARM: dts: at91: Disable SPI on at91sam9x5ek to allow MCI1 to work.
  ARM: dts: at91: Fix matrix compatible
  ARM: dts: at91: sama5d2_xplained: enable RTC wakeup
  ARM: dts: at91: sama5d2: add sfrbu

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:47:46 -07:00
Olof Johansson
a43315e3dd i.MX device tree updates for 4.12:
- New board support: I2SE's i.MX28 Duckbill-2 boards, Gateworks Ventana
    i.MX6 GW5903/GW5904, Zodiac Inflight Innovations RDU2 board, Engicam
    i.CoreM6 Quad/Dual OpenFrame modules, Boundary Device i.MX6 Quad Plus
    SOM.
  - Improve compatible string for i.MX50 eSDHC, i.MX7S SRC devices and
    i.MX6SX UART device.
  - Add interrupts for switch and PHY devices on VF610 ZII Devel C board.
  - Add LVDS, LCD backlight, touchscreen and SAI2 support for i.MX6
    icore, geam, and isiot boards.
  - A series from Lucas Stach to improve i.MX6Q Plus device tree and add
    PRE/PRG devices.
  - A series from Stefan Agner to update imx7-colibri device tree
    regarding to display, PMIC/regulator support.
  - Fix PCI bus DTC warnings seen with the latest compiler.
  - Set default phy_type and dr_mode for i.MX25 USBOTG port.
  - A couple of small improvements on i.MX25 pin function DT header.
  - Add audio support for imx6q-cm-fx6 board using Wolfson wm8731 codec
    which is muxed to SSI2 device.
  - Other random updates, small fixes and trivial cleanups.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJY65XcAAoJEFBXWFqHsHzO0goH/jVVtrnkbfzjEZ+jSU30XY+L
 8kR/R+5+PgT3LXZ/U3ZHWqbLOrYtnsmqUjA4loaRwTfyMEPnkRx86XUE86U/xfVy
 FuWhFuQ/lLDyfon/CvrEXQ73+CTq8Q5PBqKefg9twi5fNkN2wRqVCD5i4cVgxMpi
 KF6DchLv0eW2Zn6fYySf4zNcOIvbkma/qn/Ju2kZEP6TKadIgYvX5Tcw47d2fKsv
 E5vypBXdWlNV4SzZyAm4CS9X3pjIQa8zIXHyJAeiqBY/2H7u6z/UvOqnRt0RFnX5
 eaVtHF2DwuC9DyjyNVBK1Fhi/7++nnmbLRvBK9G4LBZNmIbcWJEVMHsQcsDQ2h8=
 =hpdP
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

i.MX device tree updates for 4.12:
 - New board support: I2SE's i.MX28 Duckbill-2 boards, Gateworks Ventana
   i.MX6 GW5903/GW5904, Zodiac Inflight Innovations RDU2 board, Engicam
   i.CoreM6 Quad/Dual OpenFrame modules, Boundary Device i.MX6 Quad Plus
   SOM.
 - Improve compatible string for i.MX50 eSDHC, i.MX7S SRC devices and
   i.MX6SX UART device.
 - Add interrupts for switch and PHY devices on VF610 ZII Devel C board.
 - Add LVDS, LCD backlight, touchscreen and SAI2 support for i.MX6
   icore, geam, and isiot boards.
 - A series from Lucas Stach to improve i.MX6Q Plus device tree and add
   PRE/PRG devices.
 - A series from Stefan Agner to update imx7-colibri device tree
   regarding to display, PMIC/regulator support.
 - Fix PCI bus DTC warnings seen with the latest compiler.
 - Set default phy_type and dr_mode for i.MX25 USBOTG port.
 - A couple of small improvements on i.MX25 pin function DT header.
 - Add audio support for imx6q-cm-fx6 board using Wolfson wm8731 codec
   which is muxed to SSI2 device.
 - Other random updates, small fixes and trivial cleanups.

* tag 'imx-dt-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (56 commits)
  ARM: dts: imx6q-utilite-pro: add hpd gpio
  ARM: dts: imx6qp-sabresd: Set reg_arm regulator supply
  ARM: dts: imx6qdl-sabresd: Set LDO regulator supply
  ARM: dts: imx: add Gateworks Ventana GW5903 support
  ARM: dts: i.MX25: add AIPS control registers
  ARM: dts: imx7-colibri: add Carrier Board 3.3V/5V regulators
  ARM: dts: imx7-colibri: remove 1.8V fixed regulator
  ARM: dts: imx7-colibri: allow to disable Ethernet rail
  ARM: dts: imx7-colibri: fix PMIC voltages
  ARM: dts: imx7-colibri: use OF graph to describe the display
  ARM: dts: imx6qp-nitrogen6_som2: add Quad Plus variant of the SOM
  ARM: dts: imx6q-icore: Add touchscreen node
  ARM: dts: vf610-zii-dev-rev-b: change switch2 label
  ARM: dts: imx6ul-[geam|isiot]: Add sai2 node
  ARM: dts: imx6ul-isiot-common: Add touchscreen node
  ARM: dts: imx6ul-isiot: Add i2c nodes
  ARM: dts: imx6ul-isiot: Add imx6ul-isiot-common.dtsi
  ARM: dts: imx6ul-isiot: Add backlight support for lcdif
  ARM: dts: imx6ul-geam: Add backlight support for lcdif
  ARM: dts: imx6: add ZII RDU2 boards
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:45:59 -07:00
Olof Johansson
b633b31406 Support for the usb-sata controller on the rock2 and another new rk3288
board, the phyCORE som and its PCM-947 carrier board from Phytec.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAljpQsEQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgSw5CACTf+7cvykZ3aKvtfo76yacC84mSMdLFOQl
 IPkQBX6cV2CEes8xoKjsHXwvYgpgX6Jz58S86ATfi+h3uMu4l7dld+yMaipTcZp/
 ROCtf16r+sjq3kndDGoqSFyq5+YZ2En+mz+86YDdEYS3vZvASp+gSVRkn7NUPlrU
 +O2Wb8mdY+Hl8XYSZcsmQ7zNjxw/G9pyqVly0/3aSuHRVAbtn4KyunbfkhHdK4LJ
 NOFji0t+FIXEr8FNBpiRFnIQ19KILzWmrIr5c92Tz+t11R8+wSIwITYpsAomwVqO
 QWtI1alwusJHY2MwdLXlFtBAW3BwsTt72gasl6AigpvYIP0AxKna
 =R6eU
 -----END PGP SIGNATURE-----

Merge tag 'v4.12-rockchip-dts32-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Support for the usb-sata controller on the rock2 and another new rk3288
board, the phyCORE som and its PCM-947 carrier board from Phytec.

* tag 'v4.12-rockchip-dts32-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: Add support for PCM-947 carrier board
  dt-bindings: Document Phytec phyCORE-RK3288 RDK
  ARM: dts: rockchip: Add support for phyCORE-RK3288 SoM
  ARM: dts: rockchip: Enable sata support on rock2 square

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:45:10 -07:00
Olof Johansson
6daf2aab1c Samsung DeviceTree ARM update for v4.12:
1. Enhancements to PCIe nodes on Exynos5440.
 2. Fix thermal values on some of Exynos5420 boards like Odroid XU3.
 3. Add proper clock frequency properties to DSI nodes.
 4. Fix watchdog reset on Exynos4412.
 5. Fix watchdog infinite interrupt in soft mode on Exynos4210,
    Exynos5440, S3C64xx and S5Pv210.
 6. Enable watchdog on Exynos4 and S3C SoCs.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJY6Ow8AAoJEME3ZuaGi4PXC3oP/ixi10/3kHhv7T99hg+QCRtt
 DQ58Kbt5d0mIzpX3Dp+iMi4B9sTNOxEUR3S8Qh9olftvdV3QIhgfDZKNDKXmnMkm
 1saqHAqhF+dONtiXEyts0Xy8Ex4IfGPnaV8sZMW471Vmkz6zPWxhL44vE5JHVuPb
 Ef4/8+AOM1VO2xP5gQojZrN9JnFF7YaAKJB5M8pMIXJ5uZ2AR/f86+o58z7BsHY0
 1mwo1Hdv9IO3ebizlhr2Y9NT8ut2Ox0/f9yMe/VG8QPMsNcvwtHqLeCx6FoKEQxG
 MuxPFxp6QVW/QxfJiOtXxae8X3c//o++DKEuSeETz/3T23rGTNfDnI/iJJ7FvMzZ
 5pqtyL7pPbtKAnF1dh85+4FV6qM7+FC4PvhkbC41i6FZhqlGOkqtm5Oc+4Mra/vg
 ogLTKDqRxH86egzjmOtXDRnN3zKG3id0b/KUwEl5NLMO+ydsDoWVJffsjPZ8qtGL
 Ah/QE/zPXVmebdhvd3NC/Ph1eGWxaFe/P3EsUfZ85GYhrYCFFMgW6QdIzpJI8qS1
 1Ahp/8JOY/j05I1gKADqxKh1cX+VRuvAFwLJVgqD05dVVL5egnDbYQjFuWlu+Ygx
 vdm9wOKlRjWF4uP3RsR7RVERThxCVZ1KViIwwMsX5/bF2PM+rYOVtJVgwHDILdbr
 PpcWjKEdULekliIc+LkY
 =QHlh
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/dt

Samsung DeviceTree ARM update for v4.12:
1. Enhancements to PCIe nodes on Exynos5440.
2. Fix thermal values on some of Exynos5420 boards like Odroid XU3.
3. Add proper clock frequency properties to DSI nodes.
4. Fix watchdog reset on Exynos4412.
5. Fix watchdog infinite interrupt in soft mode on Exynos4210,
   Exynos5440, S3C64xx and S5Pv210.
6. Enable watchdog on Exynos4 and S3C SoCs.

* tag 'samsung-dt-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: exynos: add HDMI controller phandle to exynos4.dtsi
  ARM: dts: s5pv210: Fix infinite interrupt in soft mode
  ARM: dts: s3c64xx: Fix infinite interrupt in soft mode
  ARM: dts: exynos: Fix infinite interrupt in soft mode on Exynos4210 and Exynos5440
  ARM: dts: exynos: Enable watchdog on all Exynos4 boards
  ARM: dts: s3c64xx: Enable watchdog on all S3C64xx boards
  ARM: dts: exynos: Fix watchdog reset on Exynos4412
  ARM: dts: exynos: Add the burst and esc clock frequency properties to DSI node
  ARM: dts: exynos: Do not ignore real-world fuse values for thermal zone 0 on Exynos5420
  ARM: dts: exynos: Add phy-pcie node for pcie to Exynos5440

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:44:37 -07:00
Olof Johansson
107193765b mvebu dt for 4.12 (part 2)
Use disk-activity trigger for armada-385-linksys
 Keep dts alphabetically ordered for clearfog (Armada 388)
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWOgNoSMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71V3cAJ9gBnFQKIkt
 jDbi9jpxM7vxznt0VgCgnnYcZsFjE7jFAxs+w4KDVd3jYo8=
 =XQtw
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-4.12-2' of git://git.infradead.org/linux-mvebu into next/dt

mvebu dt for 4.12 (part 2)

Use disk-activity trigger for armada-385-linksys
Keep dts alphabetically ordered for clearfog (Armada 388)

* tag 'mvebu-dt-4.12-2' of git://git.infradead.org/linux-mvebu:
  ARM: dts: armada-385-linksys: disk-activity trigger for all
  ARM: dts: clearfog: keep dts alphabetically ordered

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:43:54 -07:00
Olof Johansson
a51ed6cfb2 Second Round of Renesas ARM Based SoC DT Updates for v4.12
Corrections:
 * Correct clock frequency of X2 DU clock input for r8a7791/koelsch board
 * Correct Z clock for r8a7792 SoC
 * Correct parent of SSI[0-9] clocks for r8a779[013] SoCs
 * Correct ethernet clock parent on r7s72100 SoC
 * Correct DU clock for r8a7794/silk board
 
 Cleanups:
 * Drop _clk suffix from external CAN clock node name on r8a779[01] SoCs
 
 Enhancements:
 * Enable rtc r7s72100/genmai board
 * Add Z2 clock for r8a7794 SoC
 * Add DU clock for r8a7794 SoC
 * Add power-domains to SDHI for r8a7794 and r7s72100 SoCs
 * Add reset control properties for r8a774[35] SoCs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY57Z+AAoJENfPZGlqN0++410QALS78C/4O3vVj3AXABGTnQBc
 B0cIlfmw1plyx1g0GhZJZYfZ/8bDjdw4yhu7xz0pttWSyfNZpYS7TMf2Uyf6bWtx
 lMP3N7HYX12y4d/TKmg/w8zNT/P5sBSuAcDwlbRMAKVJer0ztECHmPLawJesF6Vw
 2n0VZZpi1A9n4riJukigbiFkRPNjmQAIDB3Rx1afXeyVtUVwImvBb3vJoZHaYJ+T
 MWaUQ4N+ve22HNm6k8UxJqglDxf9GO5k+SXppPwqUsZlHF41nuR5zWOWxUQl5SCQ
 G2OQGLcR0iXPcuiFbb3DScuVtwXlm8AgZNOEOGssukC7JkwTFvwHJWMXFBt4ZlPS
 yDFxTcCqyUtI4NbcsLO3eIEddzG+07V5UwWQw82LXktY2/rYn0I2jgcoAPh6zVou
 gkA68FaMZSp2WYMfd9EdppyrxaLGbSSi/g3BQnV3HJgYjGqwtb7QSRVM2tmeMEnp
 RTrAnmTYfRPm04FYyBlwmw7YaDiia5MHp4f45B2mWcXBDlYqepvxDHCyj1lX2ySL
 /QmVPGrQGSWEgbLhB1kKzSpI90zZBJMzNWE7GaYhb5dXZW2SpjkcpzhHxLtB2BLR
 xIHIlQ+RHiS0fOPFll3/wfvGDoN1H+P6nh1kz0BJFeQ7ph9iNNVnD9QOaXqePKqL
 rlbJMygQXSAQ6A8lNrS0
 =N8Dk
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt2-for-v4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

Second Round of Renesas ARM Based SoC DT Updates for v4.12

Corrections:
* Correct clock frequency of X2 DU clock input for r8a7791/koelsch board
* Correct Z clock for r8a7792 SoC
* Correct parent of SSI[0-9] clocks for r8a779[013] SoCs
* Correct ethernet clock parent on r7s72100 SoC
* Correct DU clock for r8a7794/silk board

Cleanups:
* Drop _clk suffix from external CAN clock node name on r8a779[01] SoCs

Enhancements:
* Enable rtc r7s72100/genmai board
* Add Z2 clock for r8a7794 SoC
* Add DU clock for r8a7794 SoC
* Add power-domains to SDHI for r8a7794 and r7s72100 SoCs
* Add reset control properties for r8a774[35] SoCs

* tag 'renesas-dt2-for-v4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (22 commits)
  ARM: dts: r8a7791: Drop _clk suffix from external CAN clock node name
  ARM: dts: r8a7790: Drop _clk suffix from external CAN clock node name
  ARM: dts: genmai: Enable rtc and rtc_x1 clock
  ARM: dts: rskrza1: add rtc DT support
  ARM: dts: rskrza1: set rtc_x1 clock value
  ARM: dts: r7s72100: add rtc to device tree
  ARM: dts: r7s72100: add RTC_X clock inputs to device tree
  ARM: dts: r7s72100: add rtc clock to device tree
  ARM: dts: koelsch: Correct clock frequency of X2 DU clock input
  ARM: dts: r8a7794: Add Z2 clock
  ARM: dts: r8a7792: Correct Z clock
  ARM: dts: r8a7793: Correct parent of SSI[0-9] clocks
  ARM: dts: r8a7791: Correct parent of SSI[0-9] clocks
  ARM: dts: r8a7790: Correct parent of SSI[0-9] clocks
  ARM: dts: r7s72100: fix ethernet clock parent
  ARM: dts: silk: Correct clock of DU1
  ARM: dts: alt: Correct clock of DU1
  ARM: dts: r8a7794: Correct clock of DU1
  ARM: dts: r8a7794: Add DU1 clock to device tree
  ARM: dts: r7s72100: add power-domains to sdhi
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:43:08 -07:00
Olof Johansson
9ef0f50a23 Qualcomm Device Tree Changes for v4.12
* Add Coresight components for MSM8974
 * Fixup MSM8974 ADSP XO clk and add RPMCC node
 * Fix typo in APQ8060
 * Add SDCs on MSM8660
 * Revert MSM8974 USB gadget change due to issues
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY5tTkAAoJEFKiBbHx2RXVq7AQAMkcalh0NImOfm4uy4alB0ku
 +3Hr7vkAajQY1MHOqJMdqqSytiycC6TEF8q6ihRuAYK2dWeNARX+FB0Fds+H2ndE
 IgodHQWqUVKoBa+MTarav6nc9ajb9ToPtbpnhkM36k3eVfGhzLQ2NHd18gpfdEYV
 RvTA3RZCzHux+anzmJgLcANqEDAfIRjzH4F9hQ1gzPPqiNXTReJYeGXk1eMro76X
 cx49w0R4jQEgo4pstmYHkJ7wCL0XLz8swNZFlQx1f5qBd010IPW8zeX38rmuRF9M
 zf54Va57gi8mD+SU+6mGs3OMtgztDDjvtwbef45dweOLxNZYMdh221UJz2/MIt8n
 mF8Lc4M+SLgy9DbwmOcFtOtYKIZv7/19stH2Yv9/nVMkRYNaQLIgXfK9liTgesj2
 65JAFiQGPnA66KLAqJbHeMp3iEAUVeGCigZHNMYq0eYxX0lrQRF+7LYokVtEcJhu
 L1zbBNJHuuhCdL4eVnheD3j3jab9IdEfEdxG4RlsBuVwT0bIYSslL6mwZIKwnuTS
 PFbO8t9u/bLyujrbxnqO/aHsGH0AA6yUosb77HHRpkyZZo/nMRtM3eNpaX5n4WAV
 CSbQzRp2IHTLU+QBCaVQvZc+xi4e0veXG7EkYRi3D/+QH7fG8Ix7jxGNJpsAZtol
 me85BP13RaJ2dakcRpKj
 =N6rc
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Qualcomm Device Tree Changes for v4.12

* Add Coresight components for MSM8974
* Fixup MSM8974 ADSP XO clk and add RPMCC node
* Fix typo in APQ8060
* Add SDCs on MSM8660
* Revert MSM8974 USB gadget change due to issues

* tag 'qcom-dts-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  Revert "ARM: dts: qcom: msm8974: Add USB gadget nodes"
  ARM: dts: qcom: msm8974: Add RPMCC DT node
  ARM: dts: fix typo on APQ8060 Dragonboard
  ARM: dts: add SDC2 and SDC4 to the MSM8660 family
  ARM: dts: msm8974: Hook up adsp-pil's xo clock
  ARM: dts: qcom: Add msm8974 CoreSight components

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:42:08 -07:00
Olof Johansson
63466c49cb ZTE driver updates for 4.12:
It includes a couple of small cleanups on zx296718 power domain drivers.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJY65viAAoJEFBXWFqHsHzOkqAH/ig7pVmp3s0H/4xmY3fKOpk2
 R2FGXNSWSLyKt+jkQfTKfsQZmaGadefg6KUzXLuBdE306LZkZssmjLqBEv3LBGYE
 oC+q29Y8S/qb3g1c+B2fMPO1MSfQWRGKgaKUOdDiFw7lBCBplsv2gzntW8aSSpi1
 eNraNzpmaesSVUNPrO4uTwRNmvn9mx00k5H2OJWSnyMtFQzo+FDbpj1ULgMfLeLl
 j6Jnszsp98STkB3Kzc9XGwO8OlHlsr/nnVvJVWJGiyFhwVTncGwLe9gL3ZqFxRYr
 SjE4Z28xkHcajQBmYmA0SkNHdtERjKxzjYQo9nYP7/rI3kL5r12+iWU7Q29B0ck=
 =JWPf
 -----END PGP SIGNATURE-----

Merge tag 'zte-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/drivers

ZTE driver updates for 4.12:

It includes a couple of small cleanups on zx296718 power domain drivers.

* tag 'zte-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  soc: zte: pm_domains: Remove .owner field for driver
  soc: zte: pm_domains: Remove redundant dev_err call in zx2967_pd_probe()

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:41:21 -07:00
Olof Johansson
912c9fbe66 i.MX drivers updates for 4.12:
- A series from Lucas Stach which partly rewrites the imx gpc driver
    to support multiple power domains, and moves the related code from
    imx platform into drivers folder.
  - A series from Dong Aisheng which fixes the issues with Lucas' code
    changes and improves things.
  - Add workaround for i.MX6QP hardware erratum ERR009619 that is PRE
    clocks may be stalled during the power up sequencing of the PU power
    domain.
  - Add imx-gpcv2 driver to support power domains managed by GPCv2 IP
    block found on i.MX7 series of SoCs.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJY6zd4AAoJEFBXWFqHsHzODtoH/jwTFRhAhfKG2wfplkP+U4HT
 gijXHDybebRGll2voGAL7YX7GPhLcy0NSGdiK/ckTtHlvR4E2uxcwaIwzXIE1CTb
 MXfv7p+3FXhjcqgbvl122hnLAMWOYjcbH3tFzBy1jlpGp9oEmHx4OtpdlgyD5GJ7
 +En6aDtbU0g8aJg9ldZfO8iSAJz1CAqpap+FRjpcPX4xXflOQwQfxJNWuDeg75k6
 U3zB2r+lbmjIfohUHWAnHsU2Jf4WPrBrjVsj/1YsiE5rMNPfxAEPYSQJAumG7JtO
 qTPWf3qJnSyrWBscPRR3Fs//11IgXZXSCWBPBZjng0ELFS3Rkdvp87etjZraSjU=
 =Sypm
 -----END PGP SIGNATURE-----

Merge tag 'imx-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/drivers

i.MX drivers updates for 4.12:
 - A series from Lucas Stach which partly rewrites the imx gpc driver
   to support multiple power domains, and moves the related code from
   imx platform into drivers folder.
 - A series from Dong Aisheng which fixes the issues with Lucas' code
   changes and improves things.
 - Add workaround for i.MX6QP hardware erratum ERR009619 that is PRE
   clocks may be stalled during the power up sequencing of the PU power
   domain.
 - Add imx-gpcv2 driver to support power domains managed by GPCv2 IP
   block found on i.MX7 series of SoCs.

* tag 'imx-drivers-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  soc: imx: gpc: add workaround for i.MX6QP to the GPC PD driver
  dt-bindings: imx-gpc: add i.MX6 QuadPlus compatible
  soc: imx: gpc: add defines for domain index
  soc: imx: Add GPCv2 power gating driver
  dt-bindings: Add GPCv2 power gating driver
  soc: imx: gpc: remove unnecessary readable_reg callback
  dt-bindings: imx-gpc: correct the DOMAIN_INDEX using
  soc: imx: gpc: keep PGC_X_CTRL name align with reference manual
  soc: imx: gpc: fix comment when power up domain
  soc: imx: gpc: fix imx6sl gpc power domain regression
  soc: imx: gpc: fix domain_index sanity check issue
  soc: imx: gpc: fix the wrong using of regmap cache
  soc: imx: gpc: fix gpc clk get error handling
  soc: imx: move PGC handling to a new GPC driver
  dt-bindings: add multidomain support to i.MX GPC DT binding

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:38:32 -07:00
Olof Johansson
7b020654e5 This moves the ICST helper library from arch/arm to drivers/clk
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJY52LfAAoJEEEQszewGV1zXCsP/A3A+ZdgJ5Y8A5sN58v1F8mN
 cEPjDj3pvA+YGtIk3EGFhKGqeREMYV+9m2VENdDlM2hKt7PYZ9js4VguKw/SWcvK
 vEf1UaTAACjtX3hsBU09oNBBKcju5Mz1Kd6aC7p9WktE4lEHqq0S3j98psvGZmlP
 H1mW5tC0eF3KHHiIPe30rCniWnAubWacos/y34t+e/bYm942OwmpjwOpli2TNok5
 oIDi3c+84X3yL1gZ37z3UAxgPRDgQ1sZf04H4QUoeuHyKGu+olgeKK5uvsclFBS2
 FrtL78IS9IqP4bIc67i+pj9/Idw18KWnXwdNDDajEKWlHcmqGPkpjRD2AyAvGw6K
 3VNH+mpYlIEIuA+MZowVfXuIXr5iG3NkBKBndpcl4Pu8H/hNBFw3bb4J6IK8Jmbh
 VhZVgUXDaOb/3qBWV8h5nVzi5dSMchCnMO0xuCTgzZIs6IEHr6XGk2oq50vBevkN
 skJpRp9fHkdSOiG2r7PW8UoDjULxEq+1REg9p7urJsbgkAaGAozuaXJRq8+smHsy
 Vv4QczFWi9/ygEvbYJ5ZhpzLz3Wo30vKsWCfm9+9D97fHQPwAhywf61O4tWJBLwp
 7Xm+ozOmbd5KQ+PdN+j0vz3IXccxD9Zs67j12TgxO9gzzz1VvNdTPywDOzDawmeI
 2oHs7RnHy9LDhNW3HNQy
 =012f
 -----END PGP SIGNATURE-----

Merge tag 'arm-to-clk-icst' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into next/drivers

This moves the ICST helper library from arch/arm to drivers/clk

* tag 'arm-to-clk-icst' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM/clk: move the ICST library to drivers/clk
  ARM: plat-versatile: remove stale clock header

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:37:24 -07:00
Olof Johansson
5397b5c45c Qualcomm ARM Based Driver Updates for v4.12
* Add SCM APIs for restore_sec_cfg and iommu secure page table
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJY5tb5AAoJEFKiBbHx2RXV3ngP/jRA6pEiWKcjYEVuwLM/RtxS
 SkY5baf9wm/OO4h/3fqEOzuIufQYmh5lj3FvbpPLNKHIjDQXVzm1tnKttxgU7jNB
 3dhqo/UAVMT8jdWrMEb+1vbLC1a8Dcv/N01KGmj/WBUOa73VwNjRXr5kaCJyh36Z
 qdpu6duCxE708zDY/ckTVHjEf1bumhEw6mpJqmbCo/ZFSP8O7AbSagxbtk24mss2
 WJjarZ6qDlbQoDb6oRcAZZVJG6+bB9H+7B+JRmGdRe9vuGyP8aaEHlajWj+VuN1o
 RcuH4fjj4cCmhTF/6ONDVHD1JiUZFr9tidsYtgnWxesbftZcYC5nyPjp7YFRIckA
 4HITlqkulbIoBUMocaj1gLuAWz7YzVckUvVrOk7PXZitw1i8VgeE9DSAMxX12QX6
 w0feXdHz/SRm7Xa0JZ+nYd9kWd3sSDzB5cS0xwA2kvvcgUYfasQNeWe9xVOx4+nC
 B7fzY+yywSp3IWadEhDjxmjJxgo5+H5tiknHlA6NRSb0+t0683fCkVqV8n6VQUIn
 JOHtRgeA8LKscGGWdnTn9DUZ0zHO52pq6n6H+njmKKePhZRRKVfoVIKS2dTPIX/s
 xfEwUgKKgaHOYhFI6AXV0V/GBnWEYgu2KEnHWpqgaurw1OyjOY1jjosIFOiJDmJj
 /8RiIzKG01xJFY2UvzCX
 =Ms8b
 -----END PGP SIGNATURE-----

Merge tag 'qcom-drivers-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/drivers

Qualcomm ARM Based Driver Updates for v4.12

* Add SCM APIs for restore_sec_cfg and iommu secure page table

* tag 'qcom-drivers-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  firmware: qcom_scm: add two scm calls for iommu secure page table
  firmware/qcom: add qcom_scm_restore_sec_cfg()

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:36:13 -07:00
Olof Johansson
43ba9236b4 Defconfig updates for omaps for v4.12 merge window. Mostly
to update to use new ti-cpufreq driver, the rest is just
 to enable drivers found on various devices:
 
 - Update to use ti-cpufreq driver that we now have
 
 - Enable SATA for ti81xx as a loadable module
 
 - Enable Ethernet PHY for DP83848
 
 - Enable modem related modules for PPP, QMI and USB ACM
   as loadable modules
 
 - Enable droid 4 related drivers as lodable modules except
   for PMIC and regulator so eMMC can be used for root
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAljrt8gRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPp6g/2MhQ+ho4WZeborGINGhvKLV9feIGLyd1s
 Dgt8Ex1ilRBh79t1W3c+tWAk0VcP//LuRi0ZIE5DAby9QoSB54WYJLMAI8uhsvIh
 vke753kZYeZx/eycsV/lI0cM9HRkQsCOecVjsYNtc1/sM2rfWvE3ajA+b6EzHbRX
 RR2Zp/OZDOuL+T7B1agc9N1bPEKg7ZRVavOtS8IyZFo+/wt/ffJp5Fg+Ebarc+zr
 xqzXzdKvFTCZ+u+HWudZmPzp+2t0y2OEcbXbZO5bB8fOQsxqb6B7/7utfYhPN6W2
 eQQCN4D1Gfu9egeAv/iQi5eCFvqFs9kngDx+HXAe4ZB6Ai4BEAP0ph6QHBgE87UR
 8iv9r29h6FIqGoUw+Ua8tQjMDgmUC6fUD32V7PUuqBHzE2q0whRPfEZrjGzEtApj
 Upsi+NNudlctFA4h1v4CBN1Weykc2dSlYZJTJfN7tTa4fwk37nMaDZSdH56iWeLD
 DY5/GSooUnGh4y1OvFsFOL+ZsW/Y+GB1eebf6VfmypthuX6Fe4J5nd731dywyZ4d
 QatVTC9RYnN0HDR+imOLMm0OMGKz70t1fYkZjhTmBRPd/imNxoRlrtx11Wdz8Hey
 XgHD+YnvAZrhBf32nutxuufu+fUvKaUMMDHQzx4RTDtxSXO+QvkvbqeBBCCfXuWh
 s/BNNIfZuQ==
 =4IRe
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.12/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/defconfig

Defconfig updates for omaps for v4.12 merge window. Mostly
to update to use new ti-cpufreq driver, the rest is just
to enable drivers found on various devices:

- Update to use ti-cpufreq driver that we now have

- Enable SATA for ti81xx as a loadable module

- Enable Ethernet PHY for DP83848

- Enable modem related modules for PPP, QMI and USB ACM
  as loadable modules

- Enable droid 4 related drivers as lodable modules except
  for PMIC and regulator so eMMC can be used for root

* tag 'omap-for-v4.12/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: omap2plus_defconfig: Enable droid 4 devices
  ARM: omap2plus_defconfig: Add QMI, ACM and PPP as loadable modules
  ARM: omap2plus_defconfig: Enable TI Ethernet PHY
  ARM: omap2plus_defconfig: enable ahci-dm816 module
  ARM: omap2plus_defconfig: Enable support for ti-cpufreq

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:35:46 -07:00
Olof Johansson
b0d40760da i.MX defconfig updates for 4.12:
- Enable MAX11801 and HID_MULTITOUCH touch drivers.
  - Enable SMSC_PHY driver, as imx6sl-evk board has a LAN8720A ethernet
    phy supported by it.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEbBAABAgAGBQJY65FXAAoJEFBXWFqHsHzOyfYH9A3tKXcNwIUJhzfpLI9FTi4h
 1w3j1dJO0hzj8Apd+7o7bJWXLDsNGAs0We8sYeZWjeyOol2wMt6Lc4LrSrn9lQhp
 LlLzEKeqiX4UI+Az6YCv5AG8XefCUtb3w5zK2nQkC8w3Ge4fs1l7X9mJCMpRYtPQ
 D3rqcksRKoAAVXmaO3d1MHNi2lycVUVdxHW/z7S68oeL6gqEAXC07op9in4TJCaY
 zwIvXxuLta1GQszwPGUFRXIb70OhLbJ48433gUZDLLuItlgFAmIEAn9nzFXN3q3p
 dpuEeYKSD0IeJZqIkLzaBZ3OCm4/gNrbsduSzmihZSm9W03mJAOoqgnqQBbfTA==
 =5aru
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/defconfig

i.MX defconfig updates for 4.12:
 - Enable MAX11801 and HID_MULTITOUCH touch drivers.
 - Enable SMSC_PHY driver, as imx6sl-evk board has a LAN8720A ethernet
   phy supported by it.

* tag 'imx-defconfig-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: Select SMSC_PHY
  ARM: imx_v6_v7_defconfig: Select hid-multitouchdriver
  ARM: imx_v6_v7_defconfig: Select max11801_ts touchscreen driver

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-04-19 06:35:07 -07:00