Skip to content
Snippets Groups Projects
  1. Nov 08, 2018
  2. Oct 25, 2018
  3. Oct 11, 2018
  4. Oct 10, 2018
    • Sayali Lokhande's avatar
      ARM: dts: msm: Update UFS spm-level to 5 on sdm670 · 5345d013
      Sayali Lokhande authored
      
      On sdm670, VDD_PX10 regulator is updated to be default OFF
      in sleep for UFS configuration. This change updates UFS
      system pm-level to 5 which ensures higher power savings by
      turning link off and power down device.
      
      Change-Id: I055c948bf00960c93c295e9191b69d383e69bd19
      Signed-off-by: default avatarSayali Lokhande <sayalil@codeaurora.org>
      5345d013
    • Chintan Pandya's avatar
      pinctrl: qcom: Update ufs_reset ctrl reg offset · 7c2676ed
      Chintan Pandya authored
      
      UFS_RESET control register offset has got updated
      in the design document.
      
      Update the offset value as per the design recomendation.
      
      Change-Id: I55cdf0f83b3f6cd8db3fc1e0b7a9e17e5045d343
      Signed-off-by: default avatarChintan Pandya <cpandya@codeaurora.org>
      7c2676ed
    • Sayali Lokhande's avatar
      ARM: dts: msm: Add pin control settings for UFS reset on sdm670 · 3472f139
      Sayali Lokhande authored
      
      This change adds pin control settings to support UFS
      device reset operation for sdm670.
      
      Change-Id: I649610b7ad8274641ad0b36fafd7dbe7b3e9dda6
      Signed-off-by: default avatarSayali Lokhande <sayalil@codeaurora.org>
      3472f139
    • Steven Rostedt (VMware)'s avatar
      sched/rt: Up the root domain ref count when passing it around via IPIs · 342db74e
      Steven Rostedt (VMware) authored
      
      commit 364f5665 upstream.
      
      When issuing an IPI RT push, where an IPI is sent to each CPU that has more
      than one RT task scheduled on it, it references the root domain's rto_mask,
      that contains all the CPUs within the root domain that has more than one RT
      task in the runable state. The problem is, after the IPIs are initiated, the
      rq->lock is released. This means that the root domain that is associated to
      the run queue could be freed while the IPIs are going around.
      
      Add a sched_get_rd() and a sched_put_rd() that will increment and decrement
      the root domain's ref count respectively. This way when initiating the IPIs,
      the scheduler will up the root domain's ref count before releasing the
      rq->lock, ensuring that the root domain does not go away until the IPI round
      is complete.
      
      Change-Id: I6976ed3df620a1a23d2ae7d7def98b79b44dc64b
      Reported-by: default avatarPavan Kondeti <pkondeti@codeaurora.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Fixes: 4bdced5c ("sched/rt: Simplify the IPI based RT balancing logic")
      Link: http://lkml.kernel.org/r/CAEU1=PkiHO35Dzna8EQqNSKW1fr1y1zRQ5y66X117MG06sQtNA@mail.gmail.com
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Git-commit: 364f5665
      Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
      
      
      Signed-off-by: default avatarLingutla Chandrasekhar <clingutla@codeaurora.org>
      342db74e
    • Jayant Shekhar's avatar
      drm/msm/sde: queue display failure work to event thread · 79a3a873
      Jayant Shekhar authored
      
      There are possibilities of deadlock if esd trigger work is
      queued to display thread. There is a corner case where
      during bridge disable, display thread is waiting for esd
      trigger work to complete to cancel esd thread, while esd
      trigger work is blocked on display thread. To fix this
      queue esd trigger work to event thread.
      
      Below is the call stack of both threads:
      
      ESD thread
      ----------
      __switch_to+0xb8/0xec
      kthread_flush_work+0xdc/0x150
      sde_encoder_display_failure_notification+0xc0/0x1e8
      _sde_connector_report_panel_dead.part.8+0x6c/0xd4
      sde_connector_check_status_work+0x10c/0x1d4
      process_one_work+0x168/0x468
      worker_thread+0x140/0x460
      kthread+0xf4/0x108
      ret_from_fork+0x10/0x50
      0xffffffffffffffff
      
      Commit thread
      -------------
      __switch_to+0xb8/0xec
      flush_work+0x44/0x68
      __cancel_work_timer+0x138/0x1e0
      cancel_delayed_work_sync+0x24/0x30
      sde_connector_schedule_status_work.part.16+0xc0/0x114
      _sde_connector_update_power_locked+0x1c4/0x224
      _sde_connector_update_dirty_properties+0x80/0x100
      sde_connector_helper_bridge_disable+0x24/0x100
      dsi_bridge_disable+0x30/0x98
      drm_bridge_disable+0x128/0x144
      msm_atomic_helper_commit_modeset_disables+0x148/0x578
      complete_commit+0x74/0x668
      _msm_drm_commit_work_cb+0x4c/0x1c4
      kthread_worker_fn+0xc0/0x1e4
      kthread+0xf4/0x108
      ret_from_fork+0x10/0x50
      0xffffffffffffffff
      
      Change-Id: Ifd95664113857fd5c06098a3a2f87f28c1975513
      Signed-off-by: default avatarJayant Shekhar <jshekhar@codeaurora.org>
      79a3a873
    • Sandeep Panda's avatar
      drm/msm/sde: enable backlight in ESD recovery case · b8ab22a0
      Sandeep Panda authored
      
      In case of ESD recovery display disable/enable happens
      without the knowledge of backlight framework. So backlight
      does not change during this period. This causes issues
      where panel used DCS backlight update method where backlight
      is lost during ESD trigger and it is not set again after
      recovery is complete. This change fixes the issue by
      calling backlight update API during ESD recovery display
      enable/disable case.
      
      Change-Id: I157120688603dd0558b773bbf41996b6d7373d94
      Signed-off-by: default avatarSandeep Panda <spanda@codeaurora.org>
      Signed-off-by: default avatarKrishna Manikandan <mkrishn@codeaurora.org>
      b8ab22a0
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Add a debugfs interface to set reserve CPUs · 47ee5172
      Pavankumar Kondeti authored
      
      The reserve CPUs are initialized via device tree. For testing
      purpose provide a debugfs interface to override the default
      reserve CPUs.
      
      Change-Id: Ic2a81829212e2ed6b3129d3eac75a8618e5c7c2d
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      47ee5172
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Add sysfs interface to read the driver status · 110a2cca
      Pavankumar Kondeti authored
      
      /sys/devices/system/cpu/hyp_core_ctl/status file can be read to
      dump the status of the driver. The example output would be
      like this.
      
      cat /sys/devices/system/cpu/hyp_core_ctl/status
      
      enabled=1
      reserve_cpus=4-5
      reserved_cpus=4-5
      our_isolated_cpus=4-5
      online_cpus=0-7
      isolated_cpus=4-5
      thermal_cpus=
      Vcpu to Pcpu mappings:
      vcpu=0 pcpu=4 curr_pcpu=4 hyp_pcpu=4
      vcpu=1 pcpu=5 curr_pcpu=5 hyp_pcpu=5
      
      Change-Id: I1722663baa9b4108023ddff1c4079e194603b199
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      110a2cca
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Use hyp system call for vcpu to pcpu assignment · 9c9ac4e4
      Pavankumar Kondeti authored
      
      When an original reserved CPUs is managed by thermal, a replacement
      CPU is assigned as the current physical CPU. Use hypervisor system call
      to notify the current physical CPU corresponding the given virtual CPU.
      When the thermal condition is gone, restore the original mapping.
      
      Change-Id: Ib219a59db51b975286185f1b43d07491ba2262f0
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      9c9ac4e4
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Add support for thermal management · 74fa07e6
      Pavankumar Kondeti authored
      
      Currently we are honoring the reservation by isolating CPUs. An offline
      CPU is considered as reserved since this guest can't use it. However a
      CPU can be isolated/offlined by thermal and we shouldn't reserve such
      CPU for other guest. Find a replacement CPU and reserve it by isolating it.
      When the original CPU is unthrottled by thermal, restore the reservation.
      
      We should also take thermal into consideration when reservation is
      not active. i.e hypervisor should be notified about the thermal
      condition of a physical CPU which could be used for the other guests.
      Handle this by finding a replacement CPU for the originally assigned
      CPU which is throttled by thermal.
      
      Change-Id: I4a664353faee13e1b8c7a14047b5e6d841fdf0d4
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      74fa07e6
    • Pavankumar Kondeti's avatar
      drivers: thermal: cpu_cooling: Add a notifier for max level transitions · 25407f9c
      Pavankumar Kondeti authored
      
      Add a blocking notifier to send a notification when a CPU enters or
      leaves the max cooling level state. Also add an API to retrieve
      the cpumask that contains all CPUs that are in max cooling state.
      
      Interested clients like core_ctl subscribe to these notifications
      and manage CPUs accordingly.
      
      Change-Id: I4828ed572fa965b5bfce8184ef813fddfb246cb1
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      25407f9c
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Get reserve CPUs from Hypervisor · f12679f1
      Pavankumar Kondeti authored
      
      Hypervisor provides system call interface for getting/setting
      the virtual CPU to physical CPU mappings used for the other
      guests. Use of this interface to get the physical CPUs to be
      reserved for the other guest when reservation is enabled.
      The system call requires resource ids as arguments to refer the
      virtual CPUs. Convert the driver to a platform driver to receive
      these resouce ids from the device tree.
      
      Since the reserve CPUs are obtained dynamically from the hypervisor
      system calls, remove the support for obtaining the reserve CPUs from
      kernel config.
      
      This patch also limits the number of CPUs that can be reserved to
      half of the possible CPUs to make sure that the guest running this
      driver is not starved.
      
      Change-Id: Icfbbc9972936926d65a457e369b192334e2725bd
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      f12679f1
    • Carl van Schaik's avatar
      microvisor: update system headers to version 5.3.6m15 · 999d7f62
      Carl van Schaik authored
      This patch updates the include/microvisor headers to the latest version.
      Notably, the new debug and affinity system calls are defined and the
      unused scheduler_suspend system call is removed.
      
      The remainder of the changes are related type, error code and tracing
      definition updates.
      
      Change-Id: I93560e59e5e64dbf4aa7b15de01b16ce92b0a172
      Git-repo:  https://github.com/CogSystems/linux-msm.git
      
      
      Git-commit: b0d7b140ec7ebade7d91af32983455aa2842c1be
      Signed-off-by: default avatarCarl van Schaik <carl@cog.systems>
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      999d7f62
    • Pavankumar Kondeti's avatar
      qcom: hyp_core_ctl: Handle CPU offline case after CPU is dead · 460e5046
      Pavankumar Kondeti authored
      
      A CPU can't be left in isolated state while it is offline. The
      scheduler provides sched_unisolate_cpu_unlocked() API to un-isolate
      a CPU while it is going offline. Currently we are calling this API
      from CPUHP_AP_ONLINE_DYN callback which gets called before the CPU
      is marked offline. Because of this CPU comes out of isolation state
      and soon after enters offline state. To avoid, this register for a
      callback that gets invoked after CPU is dead.
      
      Also use nocalls() version for hotplug callbacks, Since this driver
      state machine is kicked from the user space and there is no need for
      the hotplug notifications during driver's initialization.
      
      Change-Id: I7eb4af2f0784f12fd314096fe23dc7600ef9094c
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      460e5046
    • Pavankumar Kondeti's avatar
      sched: Don't fail isolation request for an already isolated CPU · 914a6b85
      Pavankumar Kondeti authored
      
      When isolating a CPU, a check is performed to see if there is
      only 1 active CPU in the system. If that is the case, the
      CPU is not isolated. However this check is done before testing
      if the requested CPU is already isolated or not. If the
      requested CPU is already isolated, there is no need to fail
      the isolation even when there is only 1 active CPU in the system.
      
      For example, 0-6 CPUs are isolated on a 8 CPU machine. When
      an isolation request comes for CPU6, which is already isolated,
      the current code fail the requesting thinking we end up
      with no active CPU in the system.
      
      Change-Id: I28fea4ff67ffed82465e5cfa785414069e4a180a
      Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
      914a6b85
    • Neeraj Upadhyay's avatar
      defconfig: msm: Enable dm verity for SDM670 VM · 3b05b43b
      Neeraj Upadhyay authored
      
      Enable DM verity, by enabling CONFIG_DM_VERITY, for SDM670 VM.
      
      Change-Id: I716c766c90ea5f8b9f7aa14c9c99790781c91449
      Signed-off-by: default avatarNeeraj Upadhyay <neeraju@codeaurora.org>
      3b05b43b
    • Neeraj Upadhyay's avatar
      dm verity: Add an optional arg to wait for target devices · 582fa1ad
      Neeraj Upadhyay authored
      
      Add an optional arg (device_wait) to allow indefinite
      wait for target dm devices. This could be required for
      devices which come up asynchronously. As existing
      implementation had some of the optional args dependent
      on processing of required args, introduce a new function
      to allow optional args pre processing, for args which
      affect the processing of required args.
      
      Change-Id: I61af9a6136cefaf5e20cc08c0c891d838ad75b7f
      Signed-off-by: default avatarNeeraj Upadhyay <neeraju@codeaurora.org>
      582fa1ad
  5. Sep 27, 2018
Loading