Commit grafiek

2648 Commits

Auteur SHA1 Bericht Datum
Soumen Ghosh
f52a91ab7e msm: camera: csiphy: Guarding the cpas start and cpas stop sequence
We are seeing cam warning "cpas gdsc clk is on" and qchannel handshake
is failing on next power on. This will happen if some client want to
tunr on camnoc axi clk before turning off the gdsc clk in previous run.

CRs-Fixed: 3417264
Change-Id: I6927998cb47b7555e22c3d57b4c2f526adf62f34
Signed-off-by: Soumen Ghosh <quic_soumeng@quicinc.com>
2023-04-13 18:36:08 -07:00
Lokesh Kumar Aakulu
9f559bfc82 msm: camera: sensor: Add get sync and put sync for i2c QUP
Add get_sync and put_sync for I2C transaction

CRs-Fixed: 3452259
Change-Id: I1f17cf4795c826fa016163b66291e0ca6f60a69d
Signed-off-by: Lokesh Kumar Aakulu <quic_lkumar@quicinc.com>
2023-04-11 22:06:06 -07:00
mingpan
82c4aeee50 msm: camera: reqmgr: Use scnprintf to copy string into mornitor array
Use scnprintf instead of memcpy to copy string into mornitor
array. The length of dev name may be shorter than 256 when
function __cam_req_mgr_dev_handle_to_name return Invalid dev_hdl,
In this case, if we use memcpy to copy string into mornitor
array, it may cause to kernel panic.

CRs-Fixed: 3444923
Change-Id: I5b0c1a4c3d83041b778c39c00a4759392b6ee7be
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
2023-04-10 14:06:08 -07:00
Li Sha Lim
8e7b72d937 msm: camera: sensor: debugfs utility for i2c/cci
This change adds support to read/write any sensor
devices that are on i2c, whether using cci or qup.
The debugfs file is mounted on i2c subdir under
camera root directory in debugfs.

Given that these devices are not always turned on,
and that this power on/off sequence is controlled
by userspace, this change displays all available
i2c devices, and their power states.

The user then can read/write to those devices which
are turned on, according to the following:

Usage:
  - echo (anything or empty string) > i2c-rw
  - cat i2c-rw then displays usage, and states of devices
  - echo (proper r/w format) > i2c-rw
  - cat i2c-rw displays output/error
Note that cat output is not persistent, it gets cleared
after displaying once.

CRs-Fixed: 3385104
Change-Id: I22023e0a8d9a680b5c8578cae2aa253c4c90226f
Signed-off-by: Li Sha Lim <quic_lishlim@quicinc.com>
2023-04-05 17:06:38 -07:00
Chandan Kumar Jha
99f13e5156 msm: camera: isp: Enable crop and drop on PPP path
LCR PD Violation is due to different clock domain crossing
architecture for PPP & RDI Paths. This issue observes when the
crop/drop Settings don't match for PPP & RDI paths.

The recommendation from Hw Team is to enable crop/drop on
both RDI & PPP paths to keep the delay same.

Enable crop and drop on RDI & PPP paths for v880.

CRs-Fixed: 3387109
Change-Id: I32bc5e6f4665f56d2b8c7ca8bf77cee5d7c24238
Signed-off-by: Chandan Kumar Jha <quic_cjha@quicinc.com>
2023-04-05 17:06:32 -07:00
Pavan Kumar Chilamkurthi
66619a991e msm: camera: memmgr: Use system movable heap if available
To provide more peak memory space for camera usecase, utilize
system-movable heap. This will first check in standard system
heap for allocation, if memory is not available, allocation will
happen from system-movable heap. As we can not keep memory from
system-movable heap to stay forever (which will regress memory
power features), need to be careful when allocating from this
heap. All camera userspace allocations' lifetime is at the
usecase boundary, so allocate userspace allocations from
system-movable heap if available, fallback to standard system
heap if not available. kmd internal allocations will most likely
stay forever, so allocate them only from standard system heap.

CRs-Fixed: 3450854
Change-Id: Ic6644dea04cb44bf963b6277205de8502bc34bd9
Signed-off-by: Pavan Kumar Chilamkurthi <quic_pchilamk@quicinc.com>
2023-04-05 17:06:23 -07:00
Shardul Bankar
d8ac068e4d msm: camera: ife: Remove unnecessary cdm release call
The cdm release call should be called here only if there
is some other failure after cdm acquire. But since there is
no other failure condition, we are removing it.

CRs-Fixed: 3251362

Change-Id: I2bfad3f00dd95c70377f60d6005214b7892f0359
Signed-off-by: Shardul Bankar <quic_sharbank@quicinc.com>
2023-04-05 17:06:17 -07:00
Ashish Bhimanpalliwar
4c9a341c56 msm: camera: isp: Add support to rup on v980
v980 has different registers for aup and rup and a sync register,
this change adds support to it.

CRs-Fixed: 3321317
Change-Id: I5804bdd6024066760104802ce07ea055b30feefd
Signed-off-by: Ashish Bhimanpalliwar <quic_abhiman@quicinc.com>
2023-04-05 17:06:09 -07:00
Lokesh Kumar Aakulu
cd7d12e360 msm: camera: sensor: Lookahead sequential register address
when sequential register address present in register setting,
that can be combined as one I2C msg command and save some
Cycles. This lookahead is enabled by default, if it needs
to be disabled then we need to issue below command.

adb shell "echo 0 > /sys/module/camera/parameters/i2c_lookahead_en"
adb shell "echo 0 > /sys/module/camera/parameters/i3c_lookahead_en".

CRs-Fixed: 3418153
Change-Id: I0a63608316fe745e36a25e5206be6681da6aaa76
Signed-off-by: Lokesh Kumar Aakulu <quic_lkumar@quicinc.com>
2023-04-04 17:06:33 -07:00
Sokchetra Eung
19f99bbb85 msm: camera: icp: Fix getting wrong device type to deinit clk
After device inactive period timeouts, icp hw mgr receives a callback
to deinit the inactive device's clock. The current implementation of
the callback fetches the wrong hw type to deinit. This change will
get the right device type to deinit.

CRs-Fixed: 3449530
Change-Id: I63700d35d62d6096d09d23c933e22da623d087c9
Signed-off-by: Sokchetra Eung <quic_eung@quicinc.com>
2023-04-04 17:06:26 -07:00
Vijay Kumar Tumati
6dc4887fd9 msm: camera: smmu: Add support for Camera Security Framework 2.5
Query the CSF version in use from SMMU proxy driver and
use noncontiguous system heap in case of  CSF 2.5
instead of the contiguous secure display heap.
In addition, do not lend the buffer in CSF 2.5.

CRs-Fixed: 3424427
Change-Id: I3d5f2402034dd455c304d5726eb9aa8ee2080dcc
Signed-off-by: Vijay Kumar Tumati <quic_vtumati@quicinc.com>
2023-04-04 17:06:19 -07:00
illa lakshmi soujanya
8c38f564e3 msm: camera: sensor: Logging Enhancement
Print CCI master-id & hardware-id on probe.
Print CSIPHY rx & timer clock rates once when clocks are enabled
and also prints on error trigger notification.

Change-Id: I4ecb1c7214d7482b157c3c1647e19743e8d90e17
CRs-Fixed: 3432375
Signed-off-by: illa lakshmi soujanya <quic_illa@quicinc.com>
2023-04-04 17:06:09 -07:00
Vijay Kumar Tumati
059b3006ac msm: camera: isp: Move IFE FD out port to non-secure
Currently, the IFE FD port is configured to be secure by TZ and the
camera software allocates secure buffers to be consumed by EFA FD
module. However, as we are moving to the software based DLFD, this
port needs to be configured as non secure by TZ and camera should
treat so and allocate non secure buffers.

CRs-Fixed: 3443139
Change-Id: I2fcc89d4d61bd944969bfe854584960c10648f6c
Signed-off-by: Suraj Dongre <quic_sdongre@quicinc.com>
Signed-off-by: Vijay Kumar Tumati <quic_vtumati@quicinc.com>
2023-03-29 20:36:08 -07:00
Karthik Anantha Ram
da94e6eb75 msm: camera: sync: Update timeout for synx async wait
With the update in the synx driver for async wait, clients
are expected to register the callback with no specific
timeout value.

CRs-Fixed: 3434716
Change-Id: Ie9a5a88f9fddc9512b249919c843e2367de7db4e
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
2023-03-28 21:36:06 -07:00
Petar Ivanov
3cf198f228 msm: camera: memmgr: Add LDAR Support
Dump mem mgr bufq to user buffer.

CRs-Fixed: 3377820
Change-Id: I5be4e245857ccb0602e54546f127793d9f6b03f6
Signed-off-by: Petar Ivanov <quic_pivanov@quicinc.com>
2023-03-24 16:36:06 -07:00
Atiya Kailany
cd228527e7 msm: camera: sensor: Removing dead code
This change removes some unused variables.

CRs-Fixed: 3394193
Change-Id: I5618f8f485b6b3710aad8172bfef6c6da772db82
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-23 11:36:26 -07:00
Depeng Shao
31266f210b msm: camera: isp: Move the mup info to per request update data
Sometimes, maybe two continuous mup update request comes too
close, then the mup value will be overridden in CSID side. This
change moves the mup info to per request update data.

CRs-Fixed: 3425088
Change-Id: I90f6608c1bf79180f8d70d9053136c2e9c7fd397
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
2023-03-23 11:36:06 -07:00
Haochen Yang
e399dbcea6 msm: camera: sync: Update size checking for fence cmd args
This change modifies the size checking for fence_cmd_args
when allocating the fence_input_info.

CRs-Fixed: 3350863
Change-Id: I16b2898e867d2af11e32c55cfb4e87316352b642
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-21 18:06:39 -07:00
Haochen Yang
18b9847377 msm: camera: sync: Add support for putting dma fence
This change will put dma fence no matter what the value
of row->ext_dma_fence is when closing it.

CRs-Fixed: 3423230
Change-Id: Iaf3faad970ad226bebaed41305f70afa9e5858f7
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-21 18:06:34 -07:00
Karthik Anantha Ram
84607f072a msm: camera: sync: Ensure dma fence is signaled prior to release
The change ensures the dma fence is always signaled prior
to release.

CRs-Fixed: 3423230
Change-Id: I6063b49c23451fc5053dde6436776b8a42d0fd02
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-21 18:06:27 -07:00
Haochen Yang
40392a6235 msm: camera: isp: Modify AEB error count
This change modifies CAM_ISP_CONTEXT_AEB_ERROR_CNT_MAX to 6.

CRs-Fixed: 3431394
Change-Id: Icb4c737255efc0f9b1eca2626cff5d72ae062775
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-21 18:06:15 -07:00
zhuo
9edd056030 msm: camera: smmu: Remove redundant dma_buf_put
Currently cam_smmu_release_buf_region has a redundant
dma_buf_put, which may cause use after free issue.
Such as when download firmware, will create dma buf and
sysfs_add_workfn will create kobject for the dma buf.
When download firmware fails and then releases the dma
buf, but due to the redundant dma_buf_put will cause
the dma buf is releasd even though the sysfs_add_workfn
is not completed. So when sysfs_add_workfn continue to
access kobject will cause use after free issue. This
commit remove the redundant dma_buf_put.

CRs-Fixed: 3408553
Change-Id: If1e650b7c9b8c41d2a270175ff1a94bb9c58e5b9
Signed-off-by: zhuo <quic_zhuo@quicinc.com>
2023-03-21 18:06:07 -07:00
Soumen Ghosh
564f956066 msm: camera: cpas: update the QOS setting
updating QoS settings inline with latest HSR recommendation

CRs-Fixed: 3435933
Change-Id: I5edb7e26b2eff5d5a29e4ac7989c833afd1ae5e7
Signed-off-by: Soumen Ghosh <quic_soumeng@quicinc.com>
2023-03-20 17:36:15 -07:00
Wang Kan
37f147cf7c msm: camera: csiphy: Update CSIPHY header for SM8650
Update CSIPHY header for SM8650.

CRs-Fixed: 3427898
Change-Id: I76f5ca1c1dcc96651a71c02cb500138008ed8a81
Signed-off-by: Wang Kan <quic_wkan@quicinc.com>
Signed-off-by: Lokesh Kumar Aakulu <quic_lkumar@quicinc.com>
2023-03-20 17:36:06 -07:00
Sokchetra Eung
fe2a0160e9 msm: camera: cpas: Modify Client CPAS reg read/write
Remove all instances of cpas camnoc reg read/write by clients.
Move cpas reg base enums to internal cpas file that is only visible
to CPAS usages, and create cpastop reg base macro in CPAS API file.
So, clients can now read and write to cpastop reg only.

CRs-Fixed: 3405131
Change-Id: I1793377a8b6f010bb2c79ac9020cfa3d21e31812
Signed-off-by: Sokchetra Eung <quic_eung@quicinc.com>
2023-03-20 13:46:27 -07:00
Haochen Yang
28439b686e msm: camera: sync: Handle dangling pointers in monitor dump
This change appropriately handles dangling pointer generated
by sync/dma/synx when closing the drivers.

CRs-Fixed: 3350863
Change-Id: Id5353814f4908f17706cebc04b3f02ccc1488813
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-20 13:46:18 -07:00
Petar Ivanov
3250e026a6 msm: camera: reqmgr: Added LDAR support
Dump lastest state monitor info into the ldar buffer.

CRs-Fixed: 3377803
Change-Id: I836a0e09901376c582a560a4450b1d3e2ecedbe7
Signed-off-by: Petar Ivanov <quic_pivanov@quicinc.com>
2023-03-20 13:46:07 -07:00
mingpan
8b33590932 msm: camera: isp: Modify the timestamp format of ISP state monitor
Modify the timestamp format of ISP state monitor. We need to use the
dump info from CRM and ISP to draw a timing diagram for debugging,
so we need to keep their timestamp format same.

CRs-Fixed: 3413642
Change-Id: Icc397a04f18fe1fd41c2c78e228730c245f8ef49
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
2023-03-20 13:45:08 -07:00
Ridhi Shah
c7f95fddce msm: camera: sensor: optimize i2c and i3c table write
Optimize i2c and i3c table write to send all settings to QUP at once.
Previously we called QUP transfer API for every single register write
which caused latency
In current solution we write all settings to a buffer and send entire
buffer to QUP master by calling the transfer API just once.

CRs-Fixed: 3408965
Change-Id: I251360e36a2d304addd083abd5b02fb6ed7f4bbb
Signed-off-by: Ridhi Shah <quic_ridhshah@quicinc.com>
2023-03-17 21:36:05 -07:00
Dharmender Sharma
dde3e48d13 msm: camera: isp: Add logic to make null terminated string
copy_from_user function is copying one extra byte using
sizeof(input_buf) and also string is not null terminated.
So Added logic to avoid copying one extra byte and making
string null terminated.

CRs-Fixed: 3422931
Change-Id: I4657ad17adc2e8a82f1ff39c2493089412193f52
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-03-17 21:36:05 -07:00
Ridhi Shah
82830d42b4 msm: camera: sensor: update aon_cam_id to uint32 value in csiphy driver
Update the AON cam id value to uint32  for csiphy driver.

CRs-Fixed: 3355901
Change-Id: I6f16cdc22c7dd0affc5e61f39cb783d2d67c39f9
Signed-off-by: Ridhi Shah <quic_ridhshah@quicinc.com>
2023-03-17 21:36:05 -07:00
Sokchetra Eung
740de40e65 msm: camera: utils: Add support for multiple IRQ lines per device
Update SOC util to be able to parse multiple irq names from DT and,
request, enable, disable multiple irq lines per soc.

All IRQ lines per SOC will have the same handler but different data,
so ISR will have their own private data to differentiate source of irq
in the same handling function.

CRs-Fixed: 3395596
Change-Id: Id9ca1cd3ef105d732a82decd7c8078bd29668326
Signed-off-by: Sokchetra Eung <quic_eung@quicinc.com>
2023-03-17 21:36:05 -07:00
Karthik Anantha Ram
8037b0404c msm: camera: isp: Modify reset type on CSID stream off
Currently prior to issuing a SW reset to CSID, we are
ensuring the input to CSID rx is cut off. On any fatal
rx error, the driver tries to issue a SW global reset
without halting the bus. If bus is not IDLE, it could
lead to an invalid domain ID getting propagated leading to
a global fault. To avoid this use path reset on CSID stream off,
global reset to be used on use-case boundaries when we are
certain that the bus is IDLE.

CRs-Fixed: 3420832
Change-Id: Id3beb42963357c881d073c258b7357360797b4bf
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
2023-03-17 21:36:05 -07:00
Depeng Shao
a039cf068a msm: camera: cci: Move load report cmd in lock context
This change moves load report cmd in lock context,
then all sequence in one queue will be defined as
atomic queue commands without interruption from
the other queue commands.

CRs-Fixed: 3415571
Change-Id: Icda2271b580bd3f462c306ad0f229969a94079f6
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
2023-03-17 21:36:05 -07:00
wasikhan
3b052555f0 msm: camera: cpas: Adding a removed operation
This change adds a do_div operation that's been
incorrectly removed.

CRs-Fixed: 3436133
Change-Id: I946a57570bd10cff124d2e3c0d1805935e4953a1
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
Signed-off-by: wasikhan <quic_wasikhan@quicinc.com>
2023-03-17 12:41:09 -07:00
Lokesh Kumar Aakulu
1d7db3ca45 msm: camera: csiphy: Add Support for datarate config per csiphy
Tough sensor data rate is same for multiple camera sensors
still it'll depend up the mounting distance from sensor
to CSIPHY or SOC. Hence update datarate setting based on
CSIPHY instance.

CRs-Fixed: 3420314
Change-Id: Ie098b121394e241f360f9ae775bfd83b6bace15b
Signed-off-by: Lokesh Kumar Aakulu <quic_lkumar@quicinc.com>
2023-03-14 15:06:06 -07:00
Haochen Yang
ae91bc4768 msm: camera: sync: Add extra support for monitor dump
Add monitor dump when dma/synx is already in signaled
state or has registered a cb, and when sync fails to
signal its corresponding dma/synx.

CRs-Fixed: 3350863
Change-Id: I4b52647f1d3f53eff119df1ab143be6848dd0d5d
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-03-09 23:36:05 -08:00
Karthik Anantha Ram
c3364a0aa2 msm: camera: sensor: Add OIS FW version check support
Adding infrastructure to check OIS FW version before downloading
OIS FW to avoid downloading the same FW.

CRs-Fixed: 3383153
Change-Id: Ic92b62bfe2277eaba9b417a13201fabeab04383e
Signed-off-by: Yulei Yao <quic_yuleiy@quicinc.com>
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
2023-03-08 17:36:06 -08:00
Atiya Kailany
e9fba3cc33 msm: camera: reqmgr: Dead code removal
This change removes some unused variables and
checks bounds for an index in camera driver.

CRs-Fixed: 3394193
Change-Id: I1e38834f09a4ef9717787e87df8689ab2541fd84
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-07 18:06:30 -08:00
Atiya Kailany
97b61780f6 msm: camera: cdm: Removing dead code
This change removes unused variables in CDM driver.

CRs-Fixed: 3394193
Change-Id: I21b1b8c5ad3483b0883d5fb09e48f5156f0d8b12
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-07 18:06:24 -08:00
Atiya Kailany
51c72321ae msm: camera: custom: Removing dead code
This change removes some variables that are
never used after assignment.

CRs-Fixed: 3394193
Change-Id: I47458d5408b14580a309749823e29b3d61f85681
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-07 18:06:17 -08:00
Karthik Anantha Ram
866af8ebcf msm: camera: icp: Remove static allocation of hw mgr
To scale for 2 ICP hw managers, currently the driver statically
allocates an array of 2 HW managers. As opposed to static allocation,
the change allocates memory for the HW manager only based on number
of ICP driver instances running.

CRs-Fixed: 3421571
Change-Id: I96ae6bdcdc46e9d194aedaf6f2aff15c2e3d258d
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
2023-03-03 19:36:13 -08:00
mingpan
e50b732b82 msm: camera: reqmgr: Add CRM state monitor
Add CRM state monitor for recording some recent CRM states,
such as notify trigger, notify error, when CRM notify recovery,
it will dump these operations records to help debugging.

CRs-Fixed: 3296185
Change-Id: I190b2201b36f12cdf7970962dad0304188fd4564
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
2023-03-03 19:36:06 -08:00
Atiya Kailany
ecc67608a5 msm: camera: core: Unused variable Fix
This change makes use of a variable after assignment.

CRs-Fixed: 3394193
Change-Id: I4e0df3646c71e8e3fc4219ba4b500a7ac6cc03d6
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-02 18:36:17 -08:00
Atiya Kailany
44b640e8d5 msm: camera: cpas: Removing dead code and unused variables
Removed dead code and variables in camera driver and
handled return value appropriately.

CRs-Fixed: 3394193
Change-Id: I42fda0ad538a23cc8967f9cbce936d22c31e72fb
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-02 18:36:11 -08:00
Atiya Kailany
20dad11849 msm: camera: isp: Some logic fixes and removing dead code
These changes fix some logic errors that were left in code, in
addition to fixing memory leak issues and removing unused
variables.

CRs-Fixed: 3394193
Change-Id: Ib257dcaf05d48913038718beca9e071730ac21c0
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-01 17:06:22 -08:00
Atiya Kailany
fc0c352ebe msm: camera: jpeg: Removing dead code
This change removes some flags and unused variables
in JPEG driver.

CRs-Fixed: 3394193
Change-Id: Iccdadebbd6943322e58da682986c4f6145ca9a64
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-03-01 17:06:15 -08:00
Depeng Shao
3ae6a2abc9 msm: camera: isp: Add support for TS combined VC index
This change enables the timestamp combined vc index,
we can get the VC index of the received frames during
mup mismatch, also print out the timestamp to get the
frame duration info.

CRs-Fixed: 3397057
Change-Id: I433765777043b50dd153efc54070156e812f6200
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
2023-03-01 17:06:08 -08:00
Haochen Yang
d595a9e70a msm: camera: smmu: Address checking in SMMU page fault handler
Update the address boundary of setting the in_map_region to
be true when SMMU page fault handler tries to find the closest
mapping.

Update the log information to better describe the mapping.

CRs-Fixed: 3409108
Change-Id: I302abaf78281df62516646b9b095fdcb2b61c276
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2023-02-28 17:36:09 -08:00
Atiya Kailany
b5af93e730 msm: camera: sync: Sync Driver Null Pointer Fix
Fixed null pointer dereference and uninitialized index variable.

CRs-Fixed: 3394193
Change-Id: I4a77060e227a9b39bb127c041515481549a99a42
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
2023-02-24 21:06:22 -08:00