Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert Ignore skip_initramfs for now but keep kernel option MER#1988 #26

Open
wants to merge 82 commits into
base: hybris-sony-aosp-8.1.0_r47_20181015
Choose a base branch
from

Conversation

Thaodan
Copy link

@Thaodan Thaodan commented Nov 19, 2018

Just add the kernel option that we are able to parse it inside the initrd.

MarijnS95 and others added 30 commits October 21, 2018 13:26
This change allows torch and flash triggers to be turned on at varying
brightness levels.

As a bonus, it fixes a crash that occurs when enabling the front
flash (in sdm630-nile-discovery_camera.dtsi) on discovery.

Change-Id: Ic24b147f6e54ddc746b9cef3d73fdc51ce68500d
Signed-off-by: MarijnS95 <[email protected]>
After updating the flash drivers (see previous commit), front flash now
functions correctly without crashing on boot.

Change-Id: Ibec34abeb06f413a29ce07bf4436d4e64662a467
Signed-off-by: MarijnS95 <[email protected]>
On kernel 4.9 the Android wakelocks are finally gone.
Convert the driver to use the wakeup sources in the Linux PM
API to achieve the very same goal.

Signed-off-by: Pablo Mendez Hernandez <[email protected]>
A poll interface allows applications to wait for a specified timeout
or indefinitely, while at the same time blocking on other file
descriptors such as an eventfd. This is in contrast to the blocking
ioctl which requires a wakeup every so often to check if another event
(such as cancellation) is requested. This wakeup was configured at
approximately .5 seconds, spamming the log and eating useless cpu
cycles.

Change-Id: Ieb34f0d731f257f6789c2d1977435d0d46a1dc4e
Signed-off-by: MarijnS95 <[email protected]>
poll_wait simply adds the file handle to the waitqueue; the poll handler
itself is supposed to return 0 when nothing happened, to go into a
waiting state. As soon as the waitqueue triggers, the poll function is
evaluated again and wakes up userspace when an event is returned.

Change-Id: I9714b671b6f476ad1faa18ef59bd8a378fec86ee
Signed-off-by: MarijnS95 <[email protected]>
The current polling state has a tendency to run into race conditions
with device suspend, where the irq_fired flag may have not been cleared
before a suspend is requested.
This is particularly evident when a finger is still on the sensor; the
HAL waits for it to disappear while the wakelock times out and fires off
the suspend. Which in itself is another issue that is resolved in future
commits.
Furthermore, irq_wake is disabled unconditionally, causing "unbalanced
disable" warnings every so often.

Change-Id: Icaf2b5f77ead7def06f60b6ba3d852a58d335dec
Signed-off-by: MarijnS95 <[email protected]>
Group these arbitrary numbers together into a single macro.

Change-Id: I9016672feb7635e74d631e107ee51e3cce4193c1
Signed-off-by: MarijnS95 <[email protected]>
As soon as a blocking poll is entered no processing has to happen until
the IRQ fires. Preemptively relaxing the wakelock saves unnecessary
wakeup time when the driver/userspace is not doing anything.

Change-Id: I286cb236c9f11eeda6698a15842f6804f9104a40
Signed-off-by: MarijnS95 <[email protected]>
Devices have a wakeup_source embedded in them which can be accessed
without double-underscore prefixed pm_wakeup functions.

Change-Id: I80bdf4e352bd6b022d022260f5fe274f7d682c97
Signed-off-by: MarijnS95 <[email protected]>
The fingerprint hal blocks/loops for as long a finger is touching the
sensor before going back to polling. If an object stays on the sensor
too long, the wakelock times out before the HAL has decided to wake up
the system, causing it to freeze up before reaching the polling state.
The wake-enabled IRQ is only able to wake the process in that polling
state.
With this change the HAL is able to signal that it needs a little longer
before freezing up the CPU. This explicit approach has been chosen over
an infinite (pm_keep_awake) wakelock, which needs a synchronisation
point to release the wakelock. If this is not called, the system never
goes back to sleep.

Change-Id: Ib53fd96d70b030cd7c2d02da0bb8db180589daea
Signed-off-by: MarijnS95 <[email protected]>
[1/2] [4.4] input: misc: fpc1145: Add poll interface for IO multiplexing in fp HAL
this flag breaks the functionality on Nile devices

Signed-off-by: Alin Jerpelea <[email protected]>
Latest config taken from
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/.clang-format

Autoformatting aids in clean code and consistency.

Change-Id: Ieccbdc8513f05fddbe8aa31a2b3268871300afea
Signed-off-by: MarijnS95 <[email protected]>
Using private_data fields instead of a global variable is necessary if
multiple devices are ever supposed to be using the same driver. Even
though this is not planned, reducing global state in favor of local
state scoped to a specific device is preferred. Of course, this
per-device datastructure should not be the drvdata for the entire
platform_driver.

Change-Id: I082fef63eefa8ec1631c98e6d7fcc47b29a235eb
Signed-off-by: MarijnS95 <[email protected]>
The original et510-spi driver has seen a lot of alteration with
unformatted and commented-out code all over the place. Fpc on the other
hand has been steadily maintained, and has support for more granular
power and irq_wake management, saving battery life.

Change-Id: If669fecacf0bb95c8440da8d011a0c5c474933b8
Signed-off-by: MarijnS95 <[email protected]>
Change-Id: Ied0e2cfb2afc3fbdb7ebec0e132c144c12900581
Signed-off-by: MarijnS95 <[email protected]>
Nile devices can be fitted with either sensor. This driver will disable
itself when the other (FPC) sensor type is detected, allowing the FPC
driver to take over. The RHWTYPE ioctl has been added for the HAL to
figure out which of the drivers is actually in use.

Change-Id: Ia7a2129e332815587dab9f960755175d8ce0e994
Signed-off-by: MarijnS95 <[email protected]>
The FPC driver needs to be disabled if Egistec hardware is detected on
the Nile platform. This requires a slightly different driver to be
loaded, as well as changes in the HAL.

Change-Id: Iacb94ec7bf3bd03c36b932b84826a8d9f04e7303
Signed-off-by: MarijnS95 <[email protected]>
These options are not used nor referenced in kernel 4.4 and 4.9, and can
thus be safely removed.

Change-Id: Ic225becd2c6ee4a1bfc19d686fd136fb1f8866ce
Signed-off-by: MarijnS95 <[email protected]>
The reset GPIO is controlled through pinctrl, not directly.

Change-Id: I042d8d669fbd5b0c69c595d556c63d4188256728
Signed-off-by: MarijnS95 <[email protected]>
The reset GPIO is controlled through pinctrl, not directly.

Change-Id: Ib3789008b1475e2d1bac61b81665a4a334c34a46
Signed-off-by: MarijnS95 <[email protected]>
The original driver doesn't turn the device off to save power while it's
not in use, but careful testing reveals that is properly possible.

Resetting the device after powering it causes all kinds of inexplicable
side-effects, such as the dreaded error -59 on initial enroll, and the
TZ-app requesting another hardware reset when starting an auth or enroll
session.

Removing this reset fixes all aforementioned issues. The reset has to be
done once, when the device is initially powered up.

Change-Id: I432c7f01d00f3e3be26ce6610b504d7d6afcd21d
Signed-off-by: MarijnS95 <[email protected]>
This is a driver for SCSI media changers.  Most common devices are
tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
don't need this for those tiny 6-slot cdrom changers.  Media
changers are listed as Type: Medium Changer in /proc/scsi/scsi.

Signed-off-by: Alin Jerpelea <[email protected]>
This is a driver for SCSI media changers.  Most common devices are
tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
don't need this for those tiny 6-slot cdrom changers.  Media
changers are listed as Type: Medium Changer in /proc/scsi/scsi.

Signed-off-by: Alin Jerpelea <[email protected]>
This is a driver for SCSI media changers.  Most common devices are
tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
don't need this for those tiny 6-slot cdrom changers.  Media
changers are listed as Type: Medium Changer in /proc/scsi/scsi.

Signed-off-by: Alin Jerpelea <[email protected]>
We should not use the legacy MSDOS_FS since the VFAT driver
is backward compatible and can mount the DOS file system

Signed-off-by: Alin Jerpelea <[email protected]>
We should not use the legacy MSDOS_FS since the VFAT driver
is backward compatible and can mount the DOS file system

Signed-off-by: Alin Jerpelea <[email protected]>
We should not use the legacy MSDOS_FS since the VFAT driver
is backward compatible and can mount the DOS file system

Signed-off-by: Alin Jerpelea <[email protected]>
We should not use the legacy MSDOS_FS since the VFAT driver
is backward compatible and can mount the DOS file system

Signed-off-by: Alin Jerpelea <[email protected]>
Some legacy VGA devices implemented on PCI typically have the same
hard-decoded addresses as they did on ISA. When multiple PCI devices
are accessed at same time they need some kind of coordination. Please
see Documentation/vgaarbiter.txt for more details. Select this to
enable VGA arbiter.

Signed-off-by: Alin Jerpelea <[email protected]>
Some legacy VGA devices implemented on PCI typically have the same
hard-decoded addresses as they did on ISA. When multiple PCI devices
are accessed at same time they need some kind of coordination. Please
see Documentation/vgaarbiter.txt for more details. Select this to
enable VGA arbiter.

Signed-off-by: Alin Jerpelea <[email protected]>
Some legacy VGA devices implemented on PCI typically have the same
hard-decoded addresses as they did on ISA. When multiple PCI devices
are accessed at same time they need some kind of coordination. Please
see Documentation/vgaarbiter.txt for more details. Select this to
enable VGA arbiter.

Signed-off-by: Alin Jerpelea <[email protected]>
Some legacy VGA devices implemented on PCI typically have the same
hard-decoded addresses as they did on ISA. When multiple PCI devices
are accessed at same time they need some kind of coordination. Please
see Documentation/vgaarbiter.txt for more details. Select this to
enable VGA arbiter.

Signed-off-by: Alin Jerpelea <[email protected]>
Provides a user space API to the sw sync object.
*WARNING* improper use of this can result in deadlocking kernel
drivers from userspace.

Signed-off-by: Alin Jerpelea <[email protected]>
Provides a user space API to the sw sync object.
*WARNING* improper use of this can result in deadlocking kernel
drivers from userspace.

Signed-off-by: Alin Jerpelea <[email protected]>
This option enables Qualcomm Snapdragron Smart Protection to detect
anomalies in various activities. It records task activities in
a log and rates the actions according to whether a typical user would
use the tools.

Signed-off-by: Alin Jerpelea <[email protected]>
This option enables Qualcomm Snapdragron Smart Protection to detect
anomalies in various activities. It records task activities in
a log and rates the actions according to whether a typical user would
use the tools.

Signed-off-by: Alin Jerpelea <[email protected]>
This option enables Qualcomm Snapdragron Smart Protection to detect
anomalies in various activities. It records task activities in
a log and rates the actions according to whether a typical user would
use the tools.

Signed-off-by: Alin Jerpelea <[email protected]>
jerpelea and others added 10 commits March 5, 2019 08:14
MAC address programmed thru CNSS could be provisioned or
derived MAC address. So add support for programming the derived
MAC address.

Change-Id: I2fae232e32a8600949c286346acd05afefd94ef8
Signed-off-by: Sameer Thalappil <[email protected]>
Add device pointer in all export symbol to
add support for numerous WLAN module.

CRs-Fixed: 2138446
Change-Id: I981155c165e4e5c2794b778afe647f8a588dd860
Signed-off-by: Sarada Prasanna Garnayak <[email protected]>
Add a flag to maintain fw rejuvenate state,
set if fw rejuvenate happens and reset at fw ready.
export an API to the wlan host driver to distinguish the
case of ssr or pdr with the FW rejuventae.

Change-Id: I7a01cc4996f68f78aa13eacf36648331a701882a
Signed-off-by: Anurag Chouhan <[email protected]>
Cherry-pick patches required for newer qcacld kernel module. JB#44057
@Thaodan Thaodan force-pushed the skip_init_just_set branch from 105b7b9 to c73ed25 Compare April 13, 2019 02:26
Thaodan pushed a commit to Thaodan/android_kernel_sony_msm that referenced this pull request Jul 2, 2020
Fix suspend, specify camera regulator load/voltage
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants