Controller driver explicitly puts the controller in low power mode
when cable disconnected. However, due to config-fs and ADB design
which unbinds composition on every cable disconnect results in
detaching/stopping gadget driver on every cable disconnect. Gadget
stop will explicitly brings the controller out of low power mode to
disable events and ep0 which is not necessary as controller is
already in low power mode. These operations are not required for
composition switch as well because gadget pull-up call back will
take care of that. Hence, Remove disabling events and ep0 from stop
gadget callback.
Change-Id: If2b3e241076a4e0eeb87eeb4361398313fca6962
Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
Initialize mbhc pointer before it gets accessed from
a different thread.
Change-Id: Ie1a5038458b0b93dfec3e5bfc350686eb1f8eb1b
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
Add a queue to store messages in the phy_msg_received() callback.
This eliminates the call to flush_work() and allows for more
robust handling of incoming messages especially if they arrive
while the usbpd_sm work function is in progress.
In particular this fixes a bug seen when a REQUEST message is
received just after sending a SRC_CAPABILITIES, but since there
may not be a previous message, flush_work() is not called, and the
end of usbpd_sm() overwrites pd->rx_msg_type and pd->rx_msg_len
to 0. As a result, when usbpd_sm() is run again, it will see no
message and proceed to SRC_HARD_RESET.
Change-Id: I4510f91e7d23ab161517c13702462da4ec8d7a2e
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Add support for printing the voltage voting info to the
clock_state ftrace events.
CRs-Fixed: 1082843
Change-Id: I6ab3992958a659995b7d5020287fd6e47e28f2a4
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
There is a posibility of a buffer overflow in scm_call,
add check to avoid the same.
Change-Id: Iee908c56ec530569b35dafa060139e0428efc781
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Update arm cache documentation about qcom,dump-size to dump
the CPU L1/L2 caches in order to analyze data corruption.
Change-Id: Ia9350b9c7810db7eb900957b4ce5dac046ab5e0d
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
On ARM systems the cache topology cannot be probed at runtime, in
particular, it is impossible to probe which CPUs share a given cache
level. Power management software requires this knowledge to implement
optimized power down sequences, hence this patch adds a document that
defines the DT cache bindings for ARM systems. The bindings are compliant
with ePAPR (PowerPC bindings), even though most of the cache nodes
properties requirements are overriden, because caches geometry for
architected caches is probeable on ARM systems. This patch also adds
properties that are specific to ARM architected caches to the existing ones
defined in the ePAPR v1.1, as bindings extensions.
Change-Id: I37ca3aae0471fcd60499615df77093d5b5451bf8
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
For hyp_assign calls, dest_vm_and_perm_info wrongly
defines ctx as u32 * type, while TZ expects it as u64.
This creates an inconsistency on 32bit system. Fix it.
Change-Id: I31e8e0b5e9ae240ca031f625cf7c49f1bfe165d4
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
The global mutex of 'gdp_mutex' is used to serialize creating/querying
glue dir and its cleanup. Turns out it isn't a perfect way because
part(kobj_kset_leave()) of the actual cleanup action() is done inside
the release handler of the glue dir kobject. That means gdp_mutex has
to be held before releasing the last reference count of the glue dir
kobject.
This patch moves glue dir's cleanup after kobject_del() in device_del()
for avoiding the race.
Change-Id: I92b10e62be8129ead5859a285bf964ab0a3ae2fd
Cc: Yijing Wang <wangyijing@huawei.com>
Reported-by: Chandra Sekhar Lingutla <clingutla@codeaurora.org>
Signed-off-by: Ming Lei <ming.lei@canonical.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: cebf8fd16900fdfd58c0028617944f808f97fe50
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
If "core" memory resource is not specified, the driver could end up
dereferencing a null pointer.
Fix this by returning -EINVAL when core resource is missing.
Change-Id: Id08f7b2e109b6b2963b19dfe07f07cbfb424202b
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
When camera is stopped the current reset sequence was causing
bus error on next start. Avoid the bus error by following
the reset sequence of overflow recovery and reset the registers
as well on stop.
CRs-Fixed: 1070583
Change-Id: Iaac10a722a595ce7864e813aa56685689356f6a9
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
When ispif device is closed there is no need to reset the
hardware because on open the h/w will be reset.
CRs-Fixed: 1070583
Change-Id: If0e92e26c7a44c614536ba0178dc9f70a4260fd5
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Rec2020 CSC type will be set by hwcomposer when incoming YUV data
is of the same type.
CRs-Fixed: 1081779
Change-Id: I321bd79d04e135030764dcdf83a58fee3c4e72c8
Signed-off-by: Benet Clark <benetc@codeaurora.org>
In case RG10 workaround is in use, USB disconnect sequence
needs to be delayed until uC image is loaded in order to
allow to suspend and unsuspend pipes successfully.
Change-Id: I0ba41c9564c12b0b2c419222b54fa0e05be93b75
CRs-Fixed: 1083675
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>