Commit graph

546,533 commits

Author SHA1 Message Date
Linus Walleij
6ca7d2e352 pinctrl: nomadik: find chip from local array
Instead of indexing around the GPIO ranges to find a chip, look directly
in the local array of state containers for nmk_gpio_chip:s.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2015-07-23 09:11:09 +02:00
Linus Walleij
bc222ef4f7 pinctrl: nomadik: break out state container allocator
Break out the function that allocates the nomadik GPIO chip state
container to its own function.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2015-07-23 09:11:04 +02:00
Paolo Bonzini
5492830370 KVM: svm: handle KVM_X86_QUIRK_CD_NW_CLEARED in svm_get_mt_mask
We can disable CD unconditionally when there is no assigned device.
KVM now forces guest PAT to all-writeback in that case, so it makes
sense to also force CR0.CD=0.

When there are assigned devices, emulate cache-disabled operation
through the page tables.  This behavior is consistent with VMX
microcode, where CD/NW are not touched by vmentry/vmexit.  However,
keep this dependent on the quirk because OVMF enables the caches
too late.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:30:27 +02:00
Mihai Donțu
5f3d45e7f2 kvm/x86: add support for MONITOR_TRAP_FLAG
Allow a nested hypervisor to single step its guests.

Signed-off-by: Mihai Donțu <mihai.dontu@gmail.com>
[Fix overlong line. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:27:07 +02:00
Andrey Smetanin
2ce7918990 kvm/x86: add sending hyper-v crash notification to user space
Sending of notification is done by exiting vcpu to user space
if KVM_REQ_HV_CRASH is enabled for vcpu. At exit to user space
the kvm_run structure contains system_event with type
KVM_SYSTEM_EVENT_CRASH to notify about guest crash occurred.

Signed-off-by: Andrey Smetanin <asmetanin@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Peter Hornyack <peterhornyack@google.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Gleb Natapov <gleb@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:27:06 +02:00
Andrey Smetanin
e7d9513b60 kvm/x86: added hyper-v crash msrs into kvm hyperv context
Added kvm Hyper-V context hv crash variables as storage
of Hyper-V crash msrs.

Signed-off-by: Andrey Smetanin <asmetanin@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Peter Hornyack <peterhornyack@google.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Gleb Natapov <gleb@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:27:06 +02:00
Andrey Smetanin
ee86dbc6e3 kvm: introduce vcpu_debug = kvm_debug + vcpu context
vcpu_debug is useful macro like kvm_debug but additionally
includes vcpu context inside output.

Signed-off-by: Andrey Smetanin <asmetanin@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Peter Hornyack <peterhornyack@google.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Gleb Natapov <gleb@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:27:06 +02:00
Andrey Smetanin
e83d58874b kvm/x86: move Hyper-V MSR's/hypercall code into hyperv.c file
This patch introduce Hyper-V related source code file - hyperv.c and
per vm and per vcpu hyperv context structures.
All Hyper-V MSR's and hypercall code moved into hyperv.c.
All Hyper-V kvm/vcpu fields moved into appropriate hyperv context
structures. Copyrights and authors information copied from x86.c
to hyperv.c.

Signed-off-by: Andrey Smetanin <asmetanin@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Peter Hornyack <peterhornyack@google.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
CC: Gleb Natapov <gleb@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:27:06 +02:00
Thomas Huth
9ef03193a9 powerpc/rtas: Replace magic values with defines
rtas.h already has some nice #defines for RTAS return status
codes - let's use them instead of hard-coded "magic" values!

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2015-07-23 16:27:05 +10:00
Eugene Korenevsky
f9eb4af67c KVM: nVMX: VMX instructions: add checks for #GP/#SS exceptions
According to Intel SDM several checks must be applied for memory operands
of VMX instructions.

Long mode: #GP(0) or #SS(0) depending on the segment must be thrown
if the memory address is in a non-canonical form.

Protected mode, checks in chronological order:
- The segment type must be checked with access type (read or write) taken
into account.
	For write access: #GP(0) must be generated if the destination operand
		is located in a read-only data segment or any code segment.
	For read access: #GP(0) must be generated if if the source operand is
		located in an execute-only code segment.
- Usability of the segment must be checked. #GP(0) or #SS(0) depending on the
	segment must be thrown if the segment is unusable.
- Limit check. #GP(0) or #SS(0) depending on the segment must be
	thrown if the memory operand effective address is outside the segment
	limit.

Signed-off-by: Eugene Korenevsky <ekorenevsky@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:26:39 +02:00
Paolo Bonzini
0da029ed7e KVM: x86: rename quirk constants to KVM_X86_QUIRK_*
Make them clearly architecture-dependent; the capability is valid for
all architectures, but the argument is not.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:24:42 +02:00
Xiao Guangrong
fb279950ba KVM: vmx: obey KVM_QUIRK_CD_NW_CLEARED
OVMF depends on WB to boot fast, because it only clears caches after
it has set up MTRRs---which is too late.

Let's do writeback if CR0.CD is set to make it happy, similar to what
SVM is already doing.

Signed-off-by: Xiao Guangrong <guangrong.xiao@intel.com>
Tested-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:23:01 +02:00
Paolo Bonzini
41dbc6bcd9 KVM: x86: introduce kvm_check_has_quirk
The logic of the disabled_quirks field usually results in a double
negation.  Wrap it in a simple function that checks the bit and
negates it.

Based on a patch from Xiao Guangrong.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:22:45 +02:00
Xiao Guangrong
3e5d2fdced KVM: MTRR: simplify kvm_mtrr_get_guest_memory_type
kvm_mtrr_get_guest_memory_type never returns -1 which is implied
in the current code since if @type = -1 (means no MTRR contains the
range), iter.partial_map must be true

Simplify the code to indicate this fact

Signed-off-by: Xiao Guangrong <guangrong.xiao@intel.com>
Tested-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:21:48 +02:00
Xiao Guangrong
10dc331ff5 KVM: MTRR: fix memory type handling if MTRR is completely disabled
Currently code uses default memory type if MTRR is fully disabled,
fix it by using UC instead.

Signed-off-by: Xiao Guangrong <guangrong.xiao@intel.com>
Tested-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-07-23 08:21:33 +02:00
Maxime Coquelin
2303553f3f ARM: dts: Use stdout-path in STM32F429 Discovery board
This patch replaces use of linux,stdout-path by stdout-path as per
"chosen" DT bindings documentation.

Doing that, the "console" argument is no more needed in kernel command
line.

Reported-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Maxime Coquelin <mcoquelin.stm32@gmail.com>
2015-07-23 07:07:12 +02:00
Maxime Coquelin
83722c2c7e ARM: dts: Add STM32429i-EVAL board support
Main features of STM32429i-EVAL evaluation kit are:
 - STM32F429 Cortex-M4 MCU @180MHz
   * 2MB internal Flash
   * 256KB internal RAM
 - 32MB SDRAM
 - 16MB NOR Flash
 - 2MB SRAM
 - 4.3" TFT LCD with resistive touchscreen
 - SDCard connector (SDIO compatible)
 - 1x USB 2.0 OTG + 1x USB 1.1 OTG
 - Ethernet

Signed-off-by: Maxime Coquelin <mcoquelin.stm32@gmail.com>
2015-07-23 06:59:50 +02:00
Tomas Winkler
154322f473 mei: prevent unloading mei hw modules while the device is opened.
chrdev_open() increases reference counter on cdev->owner. Instead of
assigning the owner to mei subsystem, the owner has to be set to the
underlaying HW module (mei_me or mei_txe), so once the device is opened
the HW module cannot be unloaded.

Cc: <stable@vger.kernel.org> #3.17+
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:31:05 -07:00
Mateusz Kulikowski
ab74359822 staging: rtl8192e: Rename init_hal_dm
Use naming schema found in other rtlwifi devices.
Rename init_hal_dm to rtl92e_dm_init.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:26 -07:00
Mateusz Kulikowski
b8216b690d staging: rtl8192e: Rename init_firmware
Use naming schema found in other rtlwifi devices.
Rename init_firmware to rtl92e_init_fw.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:26 -07:00
Mateusz Kulikowski
d66e938e1b staging: rtl8192e: Rename rtllib_ips_leave_wq
Use naming schema found in other rtlwifi devices.
Rename rtllib_ips_leave_wq to rtl92e_rtllib_ips_leave_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:26 -07:00
Mateusz Kulikowski
bf135a16c5 staging: rtl8192e: Rename rtllib_ips_leave
Use naming schema found in other rtlwifi devices.
Rename rtllib_ips_leave to rtl92e_rtllib_ips_leave.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:26 -07:00
Mateusz Kulikowski
c34b29f7c8 staging: rtl8192e: Rename rtl8192_hw_wakeup_wq
Use naming schema found in other rtlwifi devices.
Rename rtl8192_hw_wakeup_wq to rtl92e_hw_wakeup_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
43bcb3b4c7 staging: rtl8192e: Rename rtl8192_hw_wakeup
Use naming schema found in other rtlwifi devices.
Rename rtl8192_hw_wakeup to rtl92e_hw_wakeup.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
feb257e5f9 staging: rtl8192e: Rename rtl8192_hw_to_sleep
Use naming schema found in other rtlwifi devices.
Rename rtl8192_hw_to_sleep to rtl92e_enter_sleep.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
bcdcc1ea06 staging: rtl8192e: Rename rtl8192_hw_sleep_wq
Use naming schema found in other rtlwifi devices.
Rename rtl8192_hw_sleep_wq to rtl92e_hw_sleep_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
9c4a55d1da staging: rtl8192e: Rename LeisurePSLeave
Use naming schema found in other rtlwifi devices.
Rename LeisurePSLeave to rtl92e_leisure_ps_leave.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
04197ef2bd staging: rtl8192e: Rename LeisurePSEnter
Use naming schema found in other rtlwifi devices.
Rename LeisurePSEnter to rtl92e_leisure_ps_enter.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:25 -07:00
Mateusz Kulikowski
a514c798ee staging: rtl8192e: Rename IPSLeave_wq
Use naming schema found in other rtlwifi devices.
Rename IPSLeave_wq to rtl92e_ips_leave_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
2ab2aba29e staging: rtl8192e: Rename IPSLeave
Use naming schema found in other rtlwifi devices.
Rename IPSLeave to rtl92e_ips_leave.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
410d6fc983 staging: rtl8192e: Rename IPSEnter
Use naming schema found in other rtlwifi devices.
Rename IPSEnter to rtl92e_ips_enter.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
3683dc1f08 staging: rtl8192e: Rename rtl8192E_suspend
Use naming schema found in other rtlwifi devices.
Rename rtl8192E_suspend to rtl92e_suspend.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
0ba6623df9 staging: rtl8192e: Rename rtl8192E_resume
Use naming schema found in other rtlwifi devices.
Rename rtl8192E_resume to rtl92e_resume.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
e250592ed9 staging: rtl8192e: Rename rtl8192_pci_findadapter
Use naming schema found in other rtlwifi devices.
Rename rtl8192_pci_findadapter to rtl92e_check_adapter.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
68cb7b7a59 staging: rtl8192e: Rename eprom_read
Use naming schema found in other rtlwifi devices.
Rename eprom_read to rtl92e_eeprom_read.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
2e3ba83a49 staging: rtl8192e: Rename init_rate_adaptive
Use naming schema found in other rtlwifi devices.
Rename init_rate_adaptive to rtl92e_init_adaptive_rate.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
8e1e64bb66 staging: rtl8192e: Rename hal_dm_watchdog
Use naming schema found in other rtlwifi devices.
Rename hal_dm_watchdog to rtl92e_dm_watchdog.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:24 -07:00
Mateusz Kulikowski
33059f5435 staging: rtl8192e: Rename dm_txpower_trackingcallback
Use naming schema found in other rtlwifi devices.
Rename dm_txpower_trackingcallback to rtl92e_dm_txpower_tracking_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
3cd4db70c6 staging: rtl8192e: Rename dm_rf_pathcheck_workitemcallback
Use naming schema found in other rtlwifi devices.
Rename dm_rf_pathcheck_workitemcallback to rtl92e_dm_rf_pathcheck_wq.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
25c01ec36e staging: rtl8192e: Rename dm_restore_dynamic_mechanism_state
Use naming schema found in other rtlwifi devices.
Rename dm_restore_dynamic_mechanism_state to rtl92e_dm_restore_state.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
5a9f18cfed staging: rtl8192e: Rename dm_initialize_txpower_tracking
Use naming schema found in other rtlwifi devices.
Rename dm_initialize_txpower_tracking to rtl92e_dm_init_txpower_tracking.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
7842c2d58d staging: rtl8192e: Rename dm_init_edca_turbo
Use naming schema found in other rtlwifi devices.
Rename dm_init_edca_turbo to rtl92e_dm_init_edca_turbo.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
59e84dc363 staging: rtl8192e: Rename dm_cck_txpower_adjust
Use naming schema found in other rtlwifi devices.
Rename dm_cck_txpower_adjust to rtl92e_dm_cck_txpower_adjust.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:23 -07:00
Mateusz Kulikowski
090e8a4d99 staging: rtl8192e: Rename dm_backup_dynamic_mechanism_state
Use naming schema found in other rtlwifi devices.
Rename dm_backup_dynamic_mechanism_state to rtl92e_dm_backup_state.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:22 -07:00
Mateusz Kulikowski
fd9e317184 staging: rtl8192e: Rename deinit_hal_dm
Use naming schema found in other rtlwifi devices.
Rename deinit_hal_dm to rtl92e_dm_deinit.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:22 -07:00
Mateusz Kulikowski
6dee0c884a staging: rtl8192e: Rename write_nic_word
Use naming schema found in other rtlwifi devices.
Rename write_nic_word to rtl92e_writew.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:22 -07:00
Mateusz Kulikowski
8ea541001b staging: rtl8192e: Rename write_nic_dword
Use naming schema found in other rtlwifi devices.
Rename write_nic_dword to rtl92e_writel.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:22 -07:00
Mateusz Kulikowski
d8ae196769 staging: rtl8192e: Rename write_nic_byte
Use naming schema found in other rtlwifi devices.
Rename write_nic_byte to rtl92e_writeb.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:21 -07:00
Mateusz Kulikowski
97ef450b86 staging: rtl8192e: Rename rtl819x_update_rxsignalstatistics8190pci
Use naming schema found in other rtlwifi devices.
Rename rtl819x_update_rxsignalstatistics8190pci to
rtl92e_update_rx_statistics.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:21 -07:00
Mateusz Kulikowski
7879efc5a6 staging: rtl8192e: Rename rtl819x_UpdateRxPktTimeStamp
Use naming schema found in other rtlwifi devices.
Rename rtl819x_UpdateRxPktTimeStamp to rtl92e_update_rx_pkt_timestamp.

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-07-22 21:26:21 -07:00