{"push_id":1195593965,"size":18,"distinct_size":18,"ref":"refs/heads/BR-v500","head":"a726e727f4b78fbee422323ffbe1dee6f335a8c6","before":"e18e49f1f2692db0d781aa26b0b6756714ceb151","commits":[{"sha":"15327807f32514d4e360677351c76e8e3dc688df","author":{"name":"Stratos Karafotis","email":"06525debe962626424a3d9e0fbdc3c01714b569b@semaphore.gr"},"message":"cpufreq: Initial CPU utilization should be 0\n\nSigned-off-by: Stratos Karafotis <stratosk@semaphore.gr>\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>\nSigned-off-by: engstk <eng.stk@sapo.pt>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/15327807f32514d4e360677351c76e8e3dc688df"},{"sha":"dd9542ce1f047e9a61d8ee88085d5ab1f974b043","author":{"name":"Iliyan Malchev","email":"3fda801895296a064689aa19e0534811c0b5dc9a@google.com"},"message":"kgsl: do not vmap/memset to zero-out pages\n\nb/18402205 External reports: Video playback failing on Flo after upgrade to\n\t   Lollipop\n\nChange-Id: I358328ba2bd543d77e4218f32b0695c2f6f6e6c9\nSigned-off-by: Iliyan Malchev <malchev@google.com>\n(cherry picked from commit f6e71eaa5d496318034abcf450c2cfd67a1f3891)","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/dd9542ce1f047e9a61d8ee88085d5ab1f974b043"},{"sha":"07b6d56472be711f4bea55fd31d81b65fe080731","author":{"name":"Rajesh Kemisetti","email":"eb3c69d0c46395023fcec2d6245f10d8d8475c76@codeaurora.org"},"message":"msm: kgsl: Add missing checks for alloc size and sglen\n\nIn _kgsl_sharedmem_page_alloc():\n\n- Make len of type size_t to be in line with size.\n- Check for boundary limits of requested alloc size before honoring.\n- Make sure sglen is greater than zero before marking it as end\nof sg list.\n\nBug: 27475454\nChange-Id: I5389bcef3478f2ccf2be5f719049867496235f28\nSigned-off-by: Yuan Lin <yualin@google.com>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/07b6d56472be711f4bea55fd31d81b65fe080731"},{"sha":"28e421aa3bfb6d800e366068816470fa89c07e3a","author":{"name":"hsuan-chih_chen","email":"e2056570c8b06194b8c4bc4a51c58a6f3caa0fdf@asus.com"},"message":"awifi: mmc: bypass PON and cmd5 for specific eMMC\n\nwhen recieving PON, some eMMC tend to program spare block with\ninit data for next power cycle. If eMMC recieved PON frequently\nbut not actually powered off. blocks being programed became\nreally dirty and caused performance decline.\n\nSending cmd5 frequently could also be stress to NAND block for\nsome eMMC. Hence bypass cmd5 to extend eMMC life cycle.\n\nChange-Id: I2cee3a048da8d4e814befd0192675d3f58cd3f90\nSigned-off-by: hsuan-chih_chen <hsuan-chih_chen@asus.com>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/28e421aa3bfb6d800e366068816470fa89c07e3a"},{"sha":"a5b6a6f940acff9da75c166845416732ff7fb2e1","author":{"name":"hsuan-chih_chen","email":"e2056570c8b06194b8c4bc4a51c58a6f3caa0fdf@asus.com"},"message":"awifi: mmc workaround: add dummy read before discard/trim on some eMMC\n\nBUG ID: 9583949\n\nChange-Id: I5ac55706e7c4de35753b0006893ee8ec8f350286\nSigned-off-by: hsuan-chih_chen <hsuan-chih_chen@asus.com>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/a5b6a6f940acff9da75c166845416732ff7fb2e1"},{"sha":"6974808ab985cf4184d908554f7ba1a3d2bcfa59","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: Allow changing bus frequency for SD/eMMC cards in runtime\n\nCurrently, bus frequency is set during the card initialization and\nnever changed until a new card is inserted. In some low power use\ncases, scaling the clock frequencies while the card is in transfer\nstate would allow power savings. This change allows bus frequency\nto be changed after the card initialization.\n\nChange-Id: Iac064221199f69d162d91f5311becd735c15700a\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/6974808ab985cf4184d908554f7ba1a3d2bcfa59"},{"sha":"ccb14bc634f0cc3e83732ffe7005e2b0a50e9ea1","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: Add load based clock scaling support\n\nThe SD3.0/eMMC4.5/SDIO3.0 cards can support clock rates upto\n200MHz (SDR104 or HS200 bus speed modes). For some workloads\nlike video playback it isn't necessary for these cards to run\nat such high speed. Running at lower frequency, say 50MHz, in\nsuch cases can still meet the deadlines for data transfers.\nScaling down the clock frequency dynamically has huge power\nsavings not only because the bus is running at lower frequency\nbut also has an advantage of scaling down the system core\nvoltage, if supported.\n\nProvide an ondemand clock scaling support similar to cpufreq\nondemand governor having two thresholds, up_threshold and\ndown_threshold to decide whether to increase the frequency or\nscale it down respectively. The sampling interval is in the\norder of milliseconds and should be chosen by host drivers that\nenable MMC_CAP2_CLK_SCALE capability to take advantage of clock\nscaling. The sampling interval mainly depends on the the clock\nswitching delays and hence a host driver decision. If sampling\ninterval is too low frequent switching of frequencies can lead\nto high power consumption and if sampling interval is too high,\nthe clock scaling logic would take long time to realize that the\nunderlying hardware (controller and card) is busy and scale up\nthe clocks.\n\nChange-Id: I22a5054beec41b0b66b3bf030ddfcf284de448b3\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/ccb14bc634f0cc3e83732ffe7005e2b0a50e9ea1"},{"sha":"b8a6db34416a4e6d82c412c472eb7def482da0d5","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: Add sysfs entries for dynamic control of clock scaling\n\nAdd sysfs attributes to allow dynamic control of clock scaling\nparameters. These attributes are used to enable/disable clock\nscaling at runtime and change the up_threshold, down_threshold,\nand polling_interval values. Complete documentation for these\nsysfs entries are provided at \"Documentation/mmc/mmc-dev-attrs.txt\".\n\nChange-Id: I4753c75c3b3eeea91e93bceba7af2535b793612e\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/b8a6db34416a4e6d82c412c472eb7def482da0d5"},{"sha":"ea11f929df5cfc145bb6932fd415121269dc065b","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: claim mmc host while enabling clock scaling from userspace\n\nA race condition can occur while enabling clock scaling and removal\nof the card. If the card is removed just after the host->card check\nis successful then there could be NULL pointer dereference later.\nClaim mmc host before card availability check to avoid this race\ncondition.\n\nChange-Id: I6339cad5857732ec6b66280940cd6b8b7ed30614\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/ea11f929df5cfc145bb6932fd415121269dc065b"},{"sha":"6b678c4c2df4223f0c6fbffe886ceab8bb89b5ba","author":{"name":"Subhash Jadavani","email":"06e4dd72cfbca5246087a4ddd236c27485ecba61@codeaurora.org"},"message":"mmc: core: run clock scaling only in valid card state\n\nClock scaling requires the tuning and if the tuning command\nis sent to the card in invalid state, tuning procedure will\nfail.\n\nWith urgent request mechanism implemented, there is a chance\nthat clock scaling invoked when card is not in a proper state\nto receive the tuning command.\n\nThis change checks the card state (by sending the status command)\nbefore invoking the clock scaling request.\n\nChange-Id: Icb71a8e74a9afdc70380a5901cd3d28931959e9c\nSigned-off-by: Subhash Jadavani <subhashj@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/6b678c4c2df4223f0c6fbffe886ceab8bb89b5ba"},{"sha":"14c379f2f73db027b03fcbe586564771558009db","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: Log MMC clock frequency transitions\n\nUse kernel's ftrace support to capture MMC clock frequency\ntransitions which can be useful for debugging issues related\nto power consumption.\n\nUsage:\nmount -t debugfs none /sys/kernel/debug\necho 1 > /sys/kernel/debug/tracing/events/mmc/mmc_clk/enable\ncat /sys/kernel/debug/tracing/trace_pipe\n\nChange-Id: I25c4ee39dcbe30e7665902a9f723a5a421b55ca3\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/14c379f2f73db027b03fcbe586564771558009db"},{"sha":"40ae0933a7f10774b1ef44de282f081940eceaf2","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: core: Add support for notifying host driver while scaling clocks\n\nHost drivers can participate in clock scaling by registering\n->notify_load host operation, which allows host driver to carry out\nplatform specific operations for further power savings or increasing\nthroughput based on whether load is LOW or HIGH respectively. This\ncan be applicable to non-ultra high speed cards as well so remove\nthe check for ultra high speed cards to initialize clock scaling.\n\nChange-Id: Icaab9520135e384f5470db68b2f25c5cdce5663a\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/40ae0933a7f10774b1ef44de282f081940eceaf2"},{"sha":"30f3e66da4107529cdce2054c0ed93dbec5324f4","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: msm_sdcc: Add support for dynamic bus clock vote\n\nSDCC controller on some targets like 8660, 8960, 8064 and their\nvariants connects with Daytona Fabric (DFAB). To achieve max.\npossible performance the DFAB clock is voted to 64MHz at the\ncost of some power consumption. Since we now have dynamic clock\nscaling for SD/eMMC clock we can also scale the DFAB clock\naccordingly without impact on performance but have some power\nsavings in low throughput cases.\n\nChange-Id: Ic26541d6845b65803aa813d672ccabdfc4658d9c\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/30f3e66da4107529cdce2054c0ed93dbec5324f4"},{"sha":"e989d22df4f6fde8c1ce0b8a71cc61f33e1b1096","author":{"name":"Subhash Jadavani","email":"06e4dd72cfbca5246087a4ddd236c27485ecba61@codeaurora.org"},"message":"mmc: msm_sdcc: fix a type mismatch in msmsdccc_config_dma()\n\nmsmsdcc_prep_xfer() function returns a signed integer value but\ncaller function msmsdcc_config_dma() is storing this value in an unsigned\ninteger variable which is obviously not the correct thing to do.\n\nCRs-Fixed: 476578\nChange-Id: I39159e2f4f73c7f54de359cbe4faba5e902915ff\nSigned-off-by: Subhash Jadavani <subhashj@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/e989d22df4f6fde8c1ce0b8a71cc61f33e1b1096"},{"sha":"281deb72c902487f12c473264b3e466324c260f0","author":{"name":"Sujit Reddy Thumma","email":"4f767962afe83437c91cdb47baeae535b5c3dcb2@codeaurora.org"},"message":"mmc: msm_sdcc: Enable clock scaling capability\n\nEnable capability, MMC_CAP2_CLK_SCALE to allow mmc core\nto scale the clocks at runtime based on load on card.\n\nClock scaling in MSM platforms also allow voltage scaling between\nNOMINAL and SVS levels, thus allowing additional power savings.\n\nChange-Id: Id1995ffea7a6c06a2e8b29b43da70894f35f6c0b\nSigned-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/281deb72c902487f12c473264b3e466324c260f0"},{"sha":"980c79683d4a0035640d8eec7f168e67feb179bc","author":{"name":"Maya Erez","email":"e40a7ef4feba396250b53f5b825200955d965764@codeaurora.org"},"message":"mmc: core: remove the polling for BKOPS completion\n\nThe original intention of polling for BKOPS completion was to give\nthe card enough time to perform the BKOPS before it is runtime suspended.\nBut as the BKOPS completion polling was happening in a different\ncontext, it may race with card runtime/platform suspend which is quite\ndifficult to fix. So instead of BKOPS polling, let the runtime suspend\nget deferred if the BKOPS is running on the card. Also if BKOPS is running\nwhen platform suspend is triggered, stop the BKOPS before suspending the\ncard.\n\nCRs-Fixed: 489523\nChange-Id: I21e524dc2da37c4985c210abfaca00a28049c651\nSigned-off-by: Maya Erez <merez@codeaurora.org>\nSigned-off-by: Subhash Jadavani <subhashj@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/980c79683d4a0035640d8eec7f168e67feb179bc"},{"sha":"9a0a7a969166863bf171b3b6bdd76b6326f226bc","author":{"name":"Maya Erez","email":"e40a7ef4feba396250b53f5b825200955d965764@codeaurora.org"},"message":"mmc: Urgent request support\n\nmmc: do not pack random requests\n\nPacked commands causes higher latency since the completion of each\nrequest is sent to the upper layer upon completion of the complete\npacked request.\nThe benefit from this feature is card dependent. Some of the card\nvendors do not have any benefit from using packed commands for random\nrequests. In case there is no benefit in random requests packing,\nit is better to disable the packing to prevent this high latency.\nThis patch also add the new stop packing reason to the write packing\nstatistics.\n\nChange-Id: I141887dcef2ceee14848634cc27c3c85f8edc7a5\nSigned-off-by: Maya Erez <merez@codeaurora.org>\n\nmmc: fix async request mechanism for sequential read scenarios\n\nWhen current request is running on the bus and if next request fetched\nby mmcqd is NULL, mmc context (mmcqd thread) gets blocked until the\ncurrent request completes. This means that if new request comes in while\nthe mmcqd thread is blocked, this new request can not be prepared in\nparallel to current ongoing request. This may result in delaying the new\nrequest execution and increase it's latency.\n\nThis change allows to wake up the MMC thread on new request arrival.\nNow once the MMC thread is woken up, a new request can be fetched and\nprepared in parallel to the current running request which means this new\nrequest can be started immediately after the current running request\ncompletes.\n\nWith this change read throughput is improved by 16%.\n\nChange-Id: I8d74fda719c89a710330807c9d8994d40c885aa0\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\n\nmmc: block: add mmc_blk_disable_wr_packing() disables packing mode\n\nThe function disables packing mode. Right now the only reason is\nchange in data direction.\n\nChange-Id: I0f4edba3da93fde28cf47ac95754a95e411fa2af\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\n\nmmc: Add support to handle Urgent data transfer request\n\nUrgent request notification stops currently running transaction\non bus.\nIn order to decrease a latency of a prioritized requests (aka Urgent\nrequest), we might want to stop the transmission of a running \"low\npriority\" request in order to handle the Urgent request. The urgency of\nthe request is decided by the block layer I/O scheduler. When the block\nlayer notifies the MMC layer of an urgent request and if the MMC layer is\nblocked on current request to complete, it will be woken up.\n\nThe decision on whether to stop an ongoing transfer is taken according to\nseveral parameters, one of them being the number of bytes already\ntransferred for ongoing transfer by host controller so far.\n\nTo calculate how many bytes were successfully programmed before stop,\nCORRECTLY_PRG_SECTORS_NUM[245:242] parsed from EXT_CSD register. The\nremainder of stopped request (and next prepared request in case it\nexists) re-inserted back to the I/O scheduler to be handled after the\ncompletion of the urgent request.\n\nIn case it is decided not to stop the ongoing transfer, MMC context will\nwait for normal completion of the ongoing transfer, then already prepared\nnext request (if it exists) will be re-inserted back into block layer and\nthe urgent request fetched.\n\nURGENT_REQUEST handling has following dependencies:\n1. Host controller driver should support mmc_host op named \"stop_request\"\n2. Block I/O scheduler should support re-insert API\n3. eMMC card should support HPI (High Priority Interrupt) command\n\nIf any of the above dependencies are not met then urgent request mechanism\nwill not become operational.\n\nChange-Id: Ic3fa1ca9463cc8991aefee940d8bfddf76c111d3\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\n\nmmc: core: ignore new request notification, when 2 requests are in progress\n\nIn case both host->areq and areq requests exist and the new request\nnotification unblocks mmc context, instead of BUG_ON() in mmc_start_req(),\nmmc_wait_for_data_req_done() continue to wait again for the completion\nof the current request. New request notification is ignored in this case.\n\nChange-Id: I5a0201a9fbe4cbaeb0c0a9b83f56f4af74eff95b\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\n\nmmc: fix read latency of urgent request\n\nIn order to improve read request latency, urgent notification allowed\nanytime, when current or previous requests are existing in the mmc layer.\nIt is not allowed to stop following running requests:\n- urgent request: block layer should serialize urgent request notification.\n- read request: it can't be packed, therefore it is better\nto wait for its completion.\n- REQ_FUA: interruption and delay in such request will impact sync process\nof upper layers.\n\nChange-Id: Id7d1480cce2059c1f23a5f29ad8f74e858be1ee6\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\nSigned-off-by: Maya Erez <merez@codeaurora.org>\nSigned-off-by: Tatyana Brokhman <tlinder@codeaurora.org>\n\nmmc: msm_sdcc: enable support to handle Urgent data transfer request\n\nIn order to decrease a latency of a prioritized requests (aka Urgent\nrequest), we might want to stop the transmission of a running \"low\npriority\" request in order to handle the Urgent request.\n\nURGENT_REQUEST handling has following dependencies:\n1. Host controller driver should support mmc_host op named \"stop_request\"\n2. Block I/O scheduler should support re-insert API\n3. eMMC card should support HPI (High Priority Interrupt) command\nIf any of the above dependencies are not met then urgent request mechanism\nwill not become operational.\n\nChange-Id: I976af4fa794fb0fac701fe12f249c36d78080c6e\nSigned-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>\n\nmmc: Do not perform blocking BKOPS\n\nBKOPS operations can take long time and cause bad user experience and\nfailure of time critical operations as EFS sync.\nIn order to prevent the above failures all the levels will be handled only\nin idle time BKOPS handling and will allow interrupting the BKOPS when\nneeded.\nIn case the card raised an exception with a need for BKOPS, a flag will\nbe set to indicate MMC to start the BKOPS activity when it becomes idle.\n\nFixed-CRs: 432027\nChange-Id: I5f7b43569c0242f0fea83355f76f286b1ad037bc\nSigned-off-by: Maya Erez <merez@codeaurora.org>\n(cherry picked from commit 5f8ac3b955e44def61c2238192000ffe5f126714)","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/9a0a7a969166863bf171b3b6bdd76b6326f226bc"},{"sha":"a726e727f4b78fbee422323ffbe1dee6f335a8c6","author":{"name":"Praveen Chavan","email":"56b3aeca7655e43d0bf0587d2aeaf17c569c291d@codeaurora.org"},"message":"msm: vidc: estimate min_dpb for smooth streaming mode\n\nIn case of smoothstreaming:\n[1] get dpb requirement for the firmware\n[2] get count in resource resource tracker\nUse higher of the above\n\nb/10192531\n\nSigned-off-by: Deepak Verma <dverma@codeaurora.org>\nSigned-off-by: Praveen Chavan <pchavan@codeaurora.org>\n\nAlso, the value for min_dpb was not being set, so add it.\nCredits @syphyr","distinct":true,"url":"https://api.github.com/repos/beroid/android_kernel_lge_v500/commits/a726e727f4b78fbee422323ffbe1dee6f335a8c6"}]}
{"actor":{"display_login":"beroid"}}