sched: defining relaxed version of idle_cpu (squashed
 commit!)

Defining relaxed version of idle_cpu, which uses
macro cpu_relaxed_read_long, that will be used to
enhance power efficiency.

 smp: enhance power efficiency

Here we are trying to reduce power usage through the
use of macros cpu_relaxed_read_short and cpu_relaxed_read.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/516dadb6544d7f11fd47b9a899786b521e95200c

 arm: atomic.h: defined relaxed atomic_read

Defining relaxed version of atomic read as cpu_relaxed_read_atomic.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/7aa0038ff5628e60004df7a4c03a855903cfde9b

 arm: asm: relaxed.h: defined relaxed.h

Defined a new header file relaxed.h, which uses generic
definitions of some macros used by arm64 for improving
power efficiency.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/66abb73bc4294e13c47465f99aed849c02d5e646

 cpu: enhance power efficiency

Here we are trying to reduce power usage through the
use of macros cpu_relaxed_read and relaxed version of
idle_cpu().
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/c45d193c8c8437933f42cf8c518a38e95f217bbe

 asm-generic: relaxed.h: defined relaxed.h

Defined a new header file relaxed.h, which contains basic
macros which will be used for improving power efficiency for
arm64.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/a25855c38048a35d62f889ee73ef38428243cccd

 llist: defining relaxed version of llist_empty

Defining relaxed version of llist_empty as llist_empty_relaxed,
which will be used for power-optimization.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/baba912832f3d06497bdb99ec767639615ddf743

 seqlock: enhance power efficiency

Trying to improve the power efficiency in linux/seqlock.h,
using macros cpu_relaxed_read and cpu_read_relax.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/4968bde65374b1f36be21216ea7b472db589865f

 hrtimer: enhance power efficiency

Defining relaxed version of hrtimer_callback_running(),
which will be used to improve power efficiency through
the use of macro cpu_relaxed_read_long.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/f0f0e9f68bb7fbb17644859cd8e5e90f3fc91fdb

asm-generic: processor.h: adding new header file

Defining a new header file and adding architecture
independent macros. Using these macros we are optimizing
power usage on ARM64.
https://android.googlesource.com/kernel/tegra.git/+/14ad62abbcc1b2a331ff08a2fb874e5eb3c17a01%5E!/include/asm-generic/processor.h

asm-generic: processor.h: remove redundant macros

Removing cpu_relaxed_read and cpu_relaxed_read_long macros from
processor.h, as these macros are defined in asm-generic/relaxed.h.
https://android.googlesource.com/kernel/tegra.git/+/9a2cf3cfffabaa6088c36ec635e2ecfb7aa168b8%5E!/include/asm-generic/processor.h

arm: including asm-generic/processor.h

Here we are including asm-generic/processor.h
because it has defined some generic macros which
can be used by any architecture for optimaztion
of power usage.
https://android.googlesource.com/kernel/tegra.git/+/05aba0419844a7261e5ed06f49dc99216ea70744%5E!/arch/arm/include/asm/processor.h

mutex: save power with better cpu_relax

Use cpu_relaxed_read and cpu_read_relax to allow more architectures to be able
to "relax" instead of busy spinning.
https://android.googlesource.com/kernel/tegra.git/+/1937ef6f9ce114ad8a9cac6a06e3dce8a1affae2%5E!/kernel/mutex.c

sched: Trying to reduce power usage

Using macros cpu_relaxed_read, cpu_relaxed_read_long and
cpu_read_relax in core.c to improve power efficiency.
https://android.googlesource.com/kernel/tegra.git/+/6e4ee00333a93fdf949c283cce0f0e948cbae08f%5E!/kernel/sched/core.c

bug 1440421

Signed-off-by: Sumit Singh <sumsingh@nvidia.com>
Reviewed-by: Sri Krishna Chowdary <schowdary@nvidia.com>
Reviewed-by: Alexander Van Brunt <avanbrunt@nvidia.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>