{"push_id":767378110,"size":110,"distinct_size":110,"ref":"refs/heads/v8","head":"77d9fd7a0520627014e9049654f8c5560f1b7a05","before":"d1ede3c575316e5ee67ecd600920dd7235ec223f","commits":[{"sha":"dc59e25bba7df9c46180d4b40ab47869e6073edb","author":{"email":"f2a4cf793007be8f81a774dc7806c1ffea7b4a2c@intel.com","name":"Zhang Rui"},"message":"PM: Introduce suspend state PM_SUSPEND_FREEZE\n\nPM_SUSPEND_FREEZE state is a general state that\ndoes not need any platform specific support, it equals\nfrozen processes + suspended devices + idle processors.\n\nCompared with PM_SUSPEND_MEMORY,\nPM_SUSPEND_FREEZE saves less power\nbecause the system is still in a running state.\nPM_SUSPEND_FREEZE has less resume latency because it does not\ntouch BIOS, and the processors are in idle state.\n\nCompared with RTPM/idle,\nPM_SUSPEND_FREEZE saves more power as\n1. the processor has longer sleep time because processes are frozen.\n   The deeper c-state the processor supports, more power saving we can get.\n2. PM_SUSPEND_FREEZE uses system suspend code path, thus we can get\n   more power saving from the devices that does not have good RTPM support.\n\nThis state is useful for\n1) platforms that do not have STR, or have a broken STR.\n2) platforms that have an extremely low power idle state,\n   which can be used to replace STR.\n\nThe following describes how PM_SUSPEND_FREEZE state works.\n1. echo freeze > /sys/power/state\n2. the processes are frozen.\n3. all the devices are suspended.\n4. all the processors are blocked by a wait queue\n5. all the processors idles and enters (Deep) c-state.\n6. an interrupt fires.\n7. a processor is woken up and handles the irq.\n8. if it is a general event,\n   a) the irq handler runs and quites.\n   b) goto step 4.\n9. if it is a real wake event, say, power button pressing, keyboard touch, mouse moving,\n   a) the irq handler runs and activate the wakeup source\n   b) wakeup_source_activate() notifies the wait queue.\n   c) system starts resuming from PM_SUSPEND_FREEZE\n10. all the devices are resumed.\n11. all the processes are unfrozen.\n12. system is back to working.\n\nKnown Issue:\nThe wakeup of this new PM_SUSPEND_FREEZE state may behave differently\nfrom the previous suspend state.\nTake ACPI platform for example, there are some GPEs that only enabled\nwhen the system is in sleep state, to wake the system backk from S3/S4.\nBut we are not touching these GPEs during transition to PM_SUSPEND_FREEZE.\nThis means we may lose some wake event.\nBut on the other hand, as we do not disable all the Interrupts during\nPM_SUSPEND_FREEZE, we may get some extra \"wakeup\" Interrupts, that are\nnot available for S3/S4.\n\nThe patches has been tested on an old Sony laptop, and here are the results:\n\nAverage Power:\n1. RPTM/idle for half an hour:\n   14.8W, 12.6W, 14.1W, 12.5W, 14.4W, 13.2W, 12.9W\n2. Freeze for half an hour:\n   11W, 10.4W, 9.4W, 11.3W 10.5W\n3. RTPM/idle for three hours:\n   11.6W\n4. Freeze for three hours:\n   10W\n5. Suspend to Memory:\n   0.5~0.9W\n\nAverage Resume Latency:\n1. RTPM/idle with a black screen: (From pressing keyboard to screen back)\n   Less than 0.2s\n2. Freeze: (From pressing power button to screen back)\n   2.50s\n3. Suspend to Memory: (From pressing power button to screen back)\n   4.33s\n\n>From the results, we can see that all the platforms should benefit from\nthis patch, even if it does not have Low Power S0.\n\nSigned-off-by: Zhang Rui <rui.zhang@intel.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Francisco Franco <franciscofranco.1990@gmail.com>\n\nConflicts:\n\tkernel/power/main.c\n\tkernel/power/suspend.c\n\nConflicts:\n\tkernel/power/suspend.c","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/dc59e25bba7df9c46180d4b40ab47869e6073edb"},{"sha":"911a54031550de0b62fc566890b3a9b5b6defde9","author":{"email":"44dab0b659bc57509a0949ce7352600ac0beac12@motorola.com","name":"Joe Swantek"},"message":"power: quickwakeup: initial driver\n\nThis driver allows clients to register code to be called upon wakeup\nso that clients can perform specific checks and vote to drop the system\nback into suspend without fully resuming if the wake reason was a special\nquick wakeup event.\n\nPropagation of (CR)\n\nSigned-off-by: James Wylder <jwylder1@motorola.com>\nSigned-off-by: Jared Suttles <jsuttles@motorola.com>\nSigned-off-by: Joe Swantek <w98568@motorola.com>\nReviewed-on: http://gerrit.mot.com/648051\nSLTApproved: Slta Waiver <sltawvr@motorola.com>\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Joseph Swantek <jswantek@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\nReviewed-by: Patrick Auchter <auchter@motorola.com>\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>\n\nConflicts:\n\tkernel/power/Kconfig","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/911a54031550de0b62fc566890b3a9b5b6defde9"},{"sha":"10534ee10648fa5477bd05c5bc1598c42d1cfab2","author":{"email":"ed3b799f219469bc55cb495024ea5cafc3a57fb1@motorola.com","name":"Joe Swantek"},"message":"power: catch wake-up requests in suspend_again\n\nIt is possible during the processing of suspend_again() that a\nwake-up request (i.e. pm_stay_awake()) be made by a driver in response\nto an outside event (i.e. hw interrupt, etc.). Currently, when\nsuspend_again() requests to re-enter suspend, suspend_enter() runs\nto re-enter suspend. The pm_wakeup_pending() function is called to check\nfor any wake-up requests. However, this function is essentially disabled\nbecause the events_check_enabled flag is set to false by the previous\nrun through suspend_enter(). This causes any wake-up request made\nduring the processing of suspend_again() to be delayed until the next\ntime the kernel resumes sometime in the future.\n\nTo resolve this issue, if suspend_again() votes to re-enter\nsuspend_enter() the count of wake-up requests is re-evaluated\nand the events_check_enabled flag set correctly based on the\npresence of wake-up requests that occurred during suspend_again().\n\nSigned-off-by: Joe Swantek <jswantek@motorola.com>\nReviewed-by: Patrick Auchter <auchter@motorola.com>\nReviewed-by: Christopher Fries <cfries@motorola.com>\nSLTApproved: Christopher Fries <cfries@motorola.com>\nReviewed-by: Ravi Chebolu <arc095@motorola.com>\nReviewed-by: Fred Fettinger <fettinge@motorola.com>\nReviewed-by: Jeffrey Carlyle <jeff.carlyle@motorola.com>\nReviewed-by: Russell Knize <rknize@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/10534ee10648fa5477bd05c5bc1598c42d1cfab2"},{"sha":"e4c152f96a3a4b46788bdeea1418fb8b850a83bf","author":{"email":"44dab0b659bc57509a0949ce7352600ac0beac12@motorola.com","name":"Joe Swantek"},"message":"msm: lpm-levels: add suspend_again handler\n\nCall quickwakeup clients to enable us to perform very small amounts of\nprocessing and then to drop quickly back into suspend.\n\nPropagation of (CR)\n\nSigned-off-by: Jared Suttles <jsuttles@motorola.com>\nSigned-off-by: Joe Swantek <w98568@motorola.com>\nSLTApproved: Slta Waiver <sltawvr@motorola.com>\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Patrick Auchter <auchter@motorola.com>\nReviewed-by: Joseph Swantek <jswantek@motorola.com>\nSubmit-Approved: Jason Hrycay <jason.hrycay@motorola.com>\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/e4c152f96a3a4b46788bdeea1418fb8b850a83bf"},{"sha":"6986d052ff0600575911e36c5285e7d1a76820eb","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"defconfig: add quickwakeup driver\n\nConflicts:\n\tarch/arm/configs/msm8974_find7op_defconfig","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/6986d052ff0600575911e36c5285e7d1a76820eb"},{"sha":"ca3a47613d3131057dd45858d93b79ae6370638f","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Voltage Control: generic voltage control for DTS based kernels","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/ca3a47613d3131057dd45858d93b79ae6370638f"},{"sha":"e0f9227a1279b866bd6087d592f035fb95f9d677","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Voltage Control: Fix voltage setting bug\n\nConflicts:\n\tarch/arm/configs/msm8974_find7op_defconfig\n\nConflicts:\n\tarch/arm/configs/msm8974_find7op_defconfig","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/e0f9227a1279b866bd6087d592f035fb95f9d677"},{"sha":"49bdbab7ab6aa5ecaf54a1a6f7930bd465c6be3c","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Voltage Control: adapted for the new devfreq drivers","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/49bdbab7ab6aa5ecaf54a1a6f7930bd465c6be3c"},{"sha":"b484888998b5b9b73d292191a267a85f7ed47b8f","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Fix Voltage Control merging derp","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/b484888998b5b9b73d292191a267a85f7ed47b8f"},{"sha":"82b42470c36ccda28be2b3572c1d0036db643e4f","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Revert \"LGE KCAL control: intial adaptation from LGE G2 kernel for 8974Pro\"\n\nThis reverts commit 6fb8ce895a56756d4fafce24eeb9bc95209d3786.\n\nConflicts:\n\tarch/arm/mach-msm/Makefile\n\nConflicts:\n\tarch/arm/mach-msm/Makefile","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/82b42470c36ccda28be2b3572c1d0036db643e4f"},{"sha":"59d07d4f7f39a65e66d55be202756cf50b5e7bbd","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"msm: mdss: Clean out argc config routine","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/59d07d4f7f39a65e66d55be202756cf50b5e7bbd"},{"sha":"24a5add06f7665394454c28aa3e11518053ab6d7","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"msm: mdss: Add KCAL support for post processing control [v2] - All credits to @savoca\n\nConflicts:\n\tdrivers/video/msm/mdss/mdss_mdp_pp.c\n\nConflicts:\n\tdrivers/video/msm/mdss/Makefile\n\nConflicts:\n\tdrivers/video/msm/mdss/Makefile","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/24a5add06f7665394454c28aa3e11518053ab6d7"},{"sha":"9c854231c6f4289fc25ab418317c7074ea6ab89e","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"msm: mdss: Replace PGC implementation with PCC for KCAL - credits to @savoca","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/9c854231c6f4289fc25ab418317c7074ea6ab89e"},{"sha":"1e9fe379d5e3c0661fd6aa3355d4525500d9b755","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"msm: mdss: Add pa_v2 support to KCAL - credits to @savoca","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/1e9fe379d5e3c0661fd6aa3355d4525500d9b755"},{"sha":"05f640d08e78a8b84152f34aeb5385c8f9b4f5bf","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Fix KCALv2 merge derp\n\nConflicts:\n\tdrivers/video/msm/mdss/mdss_mdp_pp.c","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/05f640d08e78a8b84152f34aeb5385c8f9b4f5bf"},{"sha":"0b51a6c833f7bfb7782223bcdf32c62fa0a38f20","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"defconfig: add KCAL CTROL by @savoca","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/0b51a6c833f7bfb7782223bcdf32c62fa0a38f20"},{"sha":"2553416162a5e8ccda3880389be04af281113197","author":{"email":"2926236e622576bb8c477b2124dcaa6daa55bbd7@gmail.com","name":"YoshiShaPow"},"message":"arm: enable cortex_a15 optimization","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/2553416162a5e8ccda3880389be04af281113197"},{"sha":"ca3edce2d36f43c409c99dec52528bb57de121f5","author":{"email":"73dd783bda2153da307f29c6bb18df5c75fa0d93@gmail.com","name":"savoca"},"message":"Add BFQ/SIO/FIOPS/ZEN/VR IO Schedulers\n\nConflicts:\n\tinclude/linux/cgroup_subsys.h\n\nConflicts:\n\tinclude/linux/cgroup_subsys.h","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/ca3edce2d36f43c409c99dec52528bb57de121f5"},{"sha":"7d44db54917bb2cea2fa187f416f9c751c444dd3","author":{"email":"c9d759b3104576ab5fdc2a821cc98ac497a86a4d@hotmail.com","name":"fermasia"},"message":"Add BFQ/SIO/FIOPS/ZEN/VR IO Schedulers\n\nConflicts:\n\tarch/arm/configs/msm8974_find7op_defconfig","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/7d44db54917bb2cea2fa187f416f9c751c444dd3"},{"sha":"4c98aef2b37779577235122257579d9bcb2796fc","author":{"email":"d033e22ae348aeb5660fc2140aec35850c4da997@lonasdigital.com","name":"javilonas"},"message":"bcmdhd: reduce wakelocks\n\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: DerRomtester <dieb.stefan.96@gmail.com>\n\nConflicts:\n\tdrivers/net/wireless/bcmdhd/dhd_linux.c","distinct":true,"url":"https://api.github.com/repos/fermasia/kernel_opo_omni/commits/4c98aef2b37779577235122257579d9bcb2796fc"}]}