OpenCloudOS-Kernel/drivers
Arnd Bergmann 2e0f3acb90 Qualcomm ARM64 Devicetree updates for v6.3
This introduces support for the new Snapdragon 8 Gen 2 (SM8550)
 platform.  In addition to the adding support for the MTP on this
 platform, support the following devices is introduced:
  - GPLUS FL8005A
  - Google Zombie with LTE and NVMe
  - Google Zombie with NVMe
  - Lenovo Tab P11
  - Motorola G5 Plus
  - Motorola G7 Power
  - Motorola Moto G6
  - Samsung Galaxy J5 (2016)
  - Samsung Galaxy Tab A 8.0
  - Samsung Galaxy Tab A 9.7
  - Xiaomi Mi A1
  - Xiaomi Mi A2 Lite
  - Xiaomi Redmi 5 Plus
  - Xiaomi Redmi Note 4X
 
 On IPQ8074 the PCIe PHY register regions and PHY clock names are
 corrected.
 
 On MSM8916 DMA for the I2C controllers are introduced and blsp_dma is
 unconditionally enabled. Per-sensor calibration data is provided for the
 thermal sensor (tsens) block. The GPLUS FL8005A device is introduced and
 gains support for touchscreen and flash LED. An additional Samsung
 Galaxy J5 variant is added, and support is added for hall sensor and
 MUIC.
 
 Per-sensor calibration information is introduced for the thermal sensor
 on MSM8956 as well.
 
 On MSM8996, GPLL0 is added as a possible Kryo clock controller input, a
 carveout is added to get modem metadata out of System RAM. Missing bus
 clocks are added for agnoc2.
 SDHCI1 is enabled on the Sony Xperia Tone platform and USB is limited to
 high-speed, to make USB work.
 
 MSM8998 gains the same modem carveout as other platforms, and the
 description of the clock hierarchy is improved.
 
 On QCS404 the clock hierarchy description is improved, the CDSP PAS node
 is adjusted to match the binding and the thermal sensor (tsens) gains
 per-sensor calibration information.
 
 On SC7180 the Data Capture and Compare block is intorduced, and a
 carveout for the modem metadata is introduced, to get this out of System
 RAM. Pazquel360 gains touchscreen support, the regulator off-on-time is
 adjusted for the Trogdor eDP and touchscreen.
 Data lane and frequency properties are introduced for the DisplayPort
 links.
 
 SC7280 also gets Data Capture and Compare support, as well as the
 dedicated modem metadata region. Herobrine gains DP audio support.
 IPA description is updated so that it's only active on boards with a
 modem.
 
 On SC8280XP the display subsystem is introduced, currently with support
 for most of the DisplayPort controllers. GPR, SoundWire and LPASS is
 introduced, for audio support. Missing I2C and SPI controllers are
 introduced.
 Support for EDP is introduced for the CRD, the Lenovo ThinkPad X13s and
 the SA8295P ADP automotive board. The SA8540P Ride platform enables one
 i2c and pcie controllers.
 A CMA region is defined for the CRD and X13s, to avoid allocation issues
 from the NVMe support.
 
 Fairphone FP3 gains NFC support and the Sony Xperia Nile platform gains
 a description of simplefb.
 SDM670 gains QFPROM definition.
 
 SDM845 gains a carveout for the modem metadata and support for the Data
 Capture and Compare block is introduced.  Lenovo Yoga C630 firmware
 paths are aligned with all other Qualcomm platforms.
 
 On SM6125 apss SMMU is introduced and streams are defined for USB and
 SDHCI controllers. GPI DMA description is introduced, as well as missing
 SPI and I2C serial engines.
 On Sony Xperia 10 IIa regulator definitions are improved, SDHCI2 is
 introduced, and I2C and related GPI DMA blocks are enabled.
 
 On SM6350 IPA is introduced. DDR and L3 scaling is introduced based on
 CPUfreq.
 
 Fairphone FP4, on SM7225 also has IPA enabled, and the Flash LED is
 enabled as well.
 
 On SM8150 the display subsystem is introduced, with clock controller,
 DPU and two DSI controllers. The Data Capture and Compare block is
 introduced.
 For the Sony Xperia Kumano platform, GPIO keys and NFC support is
 introduced.
 
 For SM8350 PCIe is introduced, as is the display subsystem with display
 clock controller, DPU and two DSI controllers. #interconnect-cells is
 changed to 2, to align with other platforms and allow for active-only
 votes. The display is enabled and the LT9611uxc found on the SM8350
 Hardware Development Kit board is described, to provide HDMI output.
 
 On SM8450 the display subsystem is introduced, with DPU and two DSI
 controllers.  GIC-ITS support is introduced for both PCIe0 and PCIe1.
 SPMI bus support is introduced and pmics are wired up across the various
 devices.
 The display subsystem is enabled and the LT9611uxc is described to
 provide HDMI output on the SM8450 Hardware Development Kit.
 On Sony Xperia Nagara platform, GPIO keys and GPIO line names are
 introduced. As is the SLG51000 PMIC and camera regulators are defined.
 
 Support for SM8550 is introduced, with support for storage, USB,
 remoteprocs, PCIe, low-speed buses, crypto and display subsystem. These
 blocks are enabled on the MTP.
 
 Lastly, the work continue to align Devicetree source with bindings
 across all platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmPS4ZcVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FRwEP/2QtUk6NbjqnxdzEXYlwb8WCVnH+
 IZgdKWB2JLezXWCiKiKzmQVKVkTHXuuM7PHhojuO3Ye98/wPVA2nL79AL+jA2Ict
 k54SwCQ0PP9PpuptH351eXE/sh60nP97zsZ82V7oLfN/HdP5yAjR6Kc/iSpcdQZm
 nWNrHchuKAmpb6AitI7xGxy6D5quWh/8SgfI8sJ9SDxsOMhWXptV/Jgqy+nmOAJY
 FOMb7Y83sWgOXP77lW3T5+vfMkgPGtLD3EicMB/4HEMyDAVnWgRVzfvJ1qJsEv27
 I2K+cmqPCGcXJ9H1sYcvjXF/l0k1VqBXZMQZah2Ox/BnrBlt61iKGOHXZFPiYLt3
 Sg2fwqKaCNo/TdR37ZCLM5EEmqq94pD5llGVOW6JZzoExWrEgFNRdVqjIfqqNaUq
 +7aU7eUS2EfmiIyRPX7B3F33vz9v18fU1Z7b2n8qI/kH9rRpQAIfhJrpbTgSf9vL
 hPQ7ukkBqpzYryKaSmpgmkRCHGrWE97XZn3U1Gb8Fk7fW90jAWQVAYQHD8xowJ8F
 NxPv2E3YbgFxsFls6miVPYd1n88mN0QGJUZvQBYxtDahtw/BA9Ti62cYw1GH3lIx
 fT/lficEsX/oNLaKaHo3C8160iX0XQMeWYRzZOEs00MfStVjgtNsPxB7yhNf7e1Q
 MSnwJcsJzHMB29Zu
 =I+bB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmPX9fAACgkQmmx57+YA
 GNkFhQ/7BuSIIp1HwWB6zbAj6ex9LMlTFShJISmw6QhK9eBiEophMw3NAiP/zU3M
 CgHp8jRK02/hHK7q113I0zVvPwz44BX8LtGmtiodnSAygzb68JALhoP3r6K53gdo
 +6VJYmTiQ0Ft5BVzlBKlqX67Yp5IefvJv5enqE31OI7o8tTHCOnh7ldLqTqp1Iep
 QMrTmqY5wyYOyIBxNYMtI+TZWOabjVz3ftx7atqc9FoRco6Q2nhyM1TFoFbf4KQD
 EOyN2lsDsy5h+A4l70MIn2A0+jA9W/d9P1JMEA0Xzd5WvWa66HKxuMxnfJRlXuD9
 nTYSBBqpMKXqKh3EbmhiXNuCML4Ia6o9yWpzi2Y3h5wfOv5AmM+JGyPTyzBDS3ZR
 bvm0IX3G/m7kuS+4pPD0P0+If281q2oR/JjXSOn1Y8Ew/6ACW8o3sIUh2xGIY6Gv
 OPL1l0CKokhB8Fmcw352oN51m6IQGAVVggqaSp7/HP76M99h/I32cn2Zzz7tvz/y
 ClxAcW5iV3H7cFCNeJVTjzrEZv+LIjmHDEgSFtYuUeNmFUurkTcsFryBm9mTaD8u
 mx1HpqbRUMMTuAmvzLhRlLhHwSuTn1OmB8+1ObUHSxcgKKw+T4u6iz40qRFCzmVl
 129xys8RtAXjShu0j2lEntCUMqeMWDpIOTaUqrBzFWnW0fBa/Vs=
 =E5w0
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt

Qualcomm ARM64 Devicetree updates for v6.3

This introduces support for the new Snapdragon 8 Gen 2 (SM8550)
platform.  In addition to the adding support for the MTP on this
platform, support the following devices is introduced:
 - GPLUS FL8005A
 - Google Zombie with LTE and NVMe
 - Google Zombie with NVMe
 - Lenovo Tab P11
 - Motorola G5 Plus
 - Motorola G7 Power
 - Motorola Moto G6
 - Samsung Galaxy J5 (2016)
 - Samsung Galaxy Tab A 8.0
 - Samsung Galaxy Tab A 9.7
 - Xiaomi Mi A1
 - Xiaomi Mi A2 Lite
 - Xiaomi Redmi 5 Plus
 - Xiaomi Redmi Note 4X

On IPQ8074 the PCIe PHY register regions and PHY clock names are
corrected.

On MSM8916 DMA for the I2C controllers are introduced and blsp_dma is
unconditionally enabled. Per-sensor calibration data is provided for the
thermal sensor (tsens) block. The GPLUS FL8005A device is introduced and
gains support for touchscreen and flash LED. An additional Samsung
Galaxy J5 variant is added, and support is added for hall sensor and
MUIC.

Per-sensor calibration information is introduced for the thermal sensor
on MSM8956 as well.

On MSM8996, GPLL0 is added as a possible Kryo clock controller input, a
carveout is added to get modem metadata out of System RAM. Missing bus
clocks are added for agnoc2.
SDHCI1 is enabled on the Sony Xperia Tone platform and USB is limited to
high-speed, to make USB work.

MSM8998 gains the same modem carveout as other platforms, and the
description of the clock hierarchy is improved.

On QCS404 the clock hierarchy description is improved, the CDSP PAS node
is adjusted to match the binding and the thermal sensor (tsens) gains
per-sensor calibration information.

On SC7180 the Data Capture and Compare block is intorduced, and a
carveout for the modem metadata is introduced, to get this out of System
RAM. Pazquel360 gains touchscreen support, the regulator off-on-time is
adjusted for the Trogdor eDP and touchscreen.
Data lane and frequency properties are introduced for the DisplayPort
links.

SC7280 also gets Data Capture and Compare support, as well as the
dedicated modem metadata region. Herobrine gains DP audio support.
IPA description is updated so that it's only active on boards with a
modem.

On SC8280XP the display subsystem is introduced, currently with support
for most of the DisplayPort controllers. GPR, SoundWire and LPASS is
introduced, for audio support. Missing I2C and SPI controllers are
introduced.
Support for EDP is introduced for the CRD, the Lenovo ThinkPad X13s and
the SA8295P ADP automotive board. The SA8540P Ride platform enables one
i2c and pcie controllers.
A CMA region is defined for the CRD and X13s, to avoid allocation issues
from the NVMe support.

Fairphone FP3 gains NFC support and the Sony Xperia Nile platform gains
a description of simplefb.
SDM670 gains QFPROM definition.

SDM845 gains a carveout for the modem metadata and support for the Data
Capture and Compare block is introduced.  Lenovo Yoga C630 firmware
paths are aligned with all other Qualcomm platforms.

On SM6125 apss SMMU is introduced and streams are defined for USB and
SDHCI controllers. GPI DMA description is introduced, as well as missing
SPI and I2C serial engines.
On Sony Xperia 10 IIa regulator definitions are improved, SDHCI2 is
introduced, and I2C and related GPI DMA blocks are enabled.

On SM6350 IPA is introduced. DDR and L3 scaling is introduced based on
CPUfreq.

Fairphone FP4, on SM7225 also has IPA enabled, and the Flash LED is
enabled as well.

On SM8150 the display subsystem is introduced, with clock controller,
DPU and two DSI controllers. The Data Capture and Compare block is
introduced.
For the Sony Xperia Kumano platform, GPIO keys and NFC support is
introduced.

For SM8350 PCIe is introduced, as is the display subsystem with display
clock controller, DPU and two DSI controllers. #interconnect-cells is
changed to 2, to align with other platforms and allow for active-only
votes. The display is enabled and the LT9611uxc found on the SM8350
Hardware Development Kit board is described, to provide HDMI output.

On SM8450 the display subsystem is introduced, with DPU and two DSI
controllers.  GIC-ITS support is introduced for both PCIe0 and PCIe1.
SPMI bus support is introduced and pmics are wired up across the various
devices.
The display subsystem is enabled and the LT9611uxc is described to
provide HDMI output on the SM8450 Hardware Development Kit.
On Sony Xperia Nagara platform, GPIO keys and GPIO line names are
introduced. As is the SLG51000 PMIC and camera regulators are defined.

Support for SM8550 is introduced, with support for storage, USB,
remoteprocs, PCIe, low-speed buses, crypto and display subsystem. These
blocks are enabled on the MTP.

Lastly, the work continue to align Devicetree source with bindings
across all platforms.

* tag 'qcom-arm64-for-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (320 commits)
  arm64: dts: qcom: sc7280: Add a carveout for modem metadata
  arm64: dts: qcom: sc7180: Add a carveout for modem metadata
  arm64: dts: qcom: sdm845: Add a carveout for modem metadata
  arm64: dts: qcom: msm8998: Add a carveout for modem metadata
  arm64: dts: qcom: msm8996: Add a carveout for modem metadata
  arm64: dts: qcom: ipq8074: correct PCIe QMP PHY output clock names
  arm64: dts: qcom: ipq8074: fix Gen3 PCIe node
  arm64: dts: qcom: ipq8074: set Gen2 PCIe pcie max-link-speed
  arm64: dts: qcom: ipq8074: correct Gen2 PCIe ranges
  arm64: dts: qcom: ipq8074: fix Gen3 PCIe QMP PHY
  arm64: dts: qcom: ipq8074: fix Gen2 PCIe QMP PHY
  arm64: dts: qcom: sdm845-db845c: drop label from I2C controllers
  arm64: dts: qcom: msm8996: support using GPLL0 as kryocc input
  arm64: dts: qcom: sm8450: Allow both GIC-ITS and internal MSI controller
  arm64: dts: qcom: sm8550-mtp: Add USB PHYs and HC nodes
  arm64: dts: qcom: sm8550: Add USB PHYs and controller nodes
  arm64: dts: qcom: sm8250: drop unused properties from tx-macro
  arm64: dts: qcom: sm8250: drop unused clock-frequency from wsa-macro
  arm64: dts: qcom: align OPP table node name with DT schema
  arm64: dts: qcom: rename mdp nodes to display-controller
  ...

Link: https://lore.kernel.org/r/20230126202528.3691539-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-01-30 17:53:03 +01:00
..
accel Fix mismerge due to devnode now taking a 'const *' device 2022-12-16 13:04:15 -06:00
accessibility
acpi ACPI fixes for 6.2-rc2 2022-12-30 10:47:25 -08:00
amba ARM updates for 6.2 2022-12-13 15:22:14 -08:00
android
ata ata: ahci: Fix PCS quirk application for suspend 2022-12-27 11:06:57 +09:00
atm treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
auxdisplay
base Kbuild updates for v6.2 2022-12-19 12:33:32 -06:00
bcma
block block-2023-01-06 2023-01-06 13:12:42 -08:00
bluetooth treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
bus Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
cdrom
char tpm: Allow system suspend to continue when TPM suspend fails 2023-01-06 14:25:19 -08:00
clk A pile of clk driver updates with a small tracepoint patch to the clk core this 2022-12-13 13:46:07 -08:00
clocksource Updates for timers, timekeeping and drivers: 2022-12-12 12:52:02 -08:00
comedi
connector
counter
cpufreq linux-kselftest-next-6.2-rc1 2022-12-12 16:39:38 -08:00
cpuidle powerpc updates for 6.2 2022-12-19 07:13:33 -06:00
crypto This push fixes a CFI crash in arm64/sm4 as well as a regression 2023-01-06 11:14:11 -08:00
cxl cxl/region: Fix memdev reuse check 2022-12-08 13:03:47 -08:00
dax
dca
devfreq PM / devfreq: event: use devm_platform_get_and_ioremap_resource() 2022-12-05 21:57:20 +09:00
dio
dma dmaengine updates for v6.2 2022-12-19 08:54:17 -06:00
dma-buf Merge drm/drm-fixes into drm-misc-fixes 2023-01-03 08:32:12 +01:00
edac Merge branches 'edac-ghes' and 'edac-misc' into edac-updates-for-v6.2 2022-12-12 15:40:03 +01:00
eisa
extcon Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
firewire
firmware remoteproc updates for v6.2 2022-12-21 09:37:14 -08:00
fpga Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
fsi
gnss
gpio gpio: sifive: Fix refcount leak in sifive_gpio_probe 2023-01-02 13:01:14 +01:00
gpu Only gvt-fixes: 2023-01-06 10:16:49 +01:00
greybus
hid treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
hsi
hte
hv Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
hwmon hwmon updates for v6.2 merge window 2022-12-13 13:09:38 -08:00
hwspinlock
hwtracing
i2c Core got a new helper 'i2c_client_get_device_id', designware got some 2022-12-15 14:47:10 -08:00
i3c i3c: export SETDASA method 2022-12-11 21:25:58 +01:00
idle
iio Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
infiniband RDMA/mlx5: Fix validation of max_rd_atomic caps for DC 2023-01-01 09:40:35 +02:00
input treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
interconnect interconnect: qcom: Add SM8550 interconnect provider driver 2022-12-29 11:36:33 +02:00
iommu IOMMU Updates for Linux v6.2 2022-12-19 08:34:39 -06:00
ipack
irqchip RISC-V Patches for the 6.2 Merge Window, Part 1 2022-12-14 15:23:49 -08:00
isdn treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
leds treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
macintosh
mailbox - qcom: enable sc8280xp, sm8550 and sm4250 support 2022-12-21 09:31:18 -08:00
mcb
md block: handle bio_split_to_limits() NULL return 2023-01-04 09:05:23 -07:00
media treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
memory ARM updates for 6.2 2022-12-13 15:22:14 -08:00
memstick memstick/mspro_block: Convert to use sysfs_emit()/sysfs_emit_at() APIs 2022-12-09 10:29:58 +01:00
message
mfd - New Drivers 2022-12-21 09:19:24 -08:00
misc kernel hardening fixes for v6.2-rc1 2022-12-23 12:00:24 -08:00
mmc MMC core: 2022-12-13 13:41:26 -08:00
most
mtd MTD core changes: 2022-12-13 12:32:07 -08:00
mux
net Including fixes from bpf, wifi, and netfilter. 2023-01-05 12:40:50 -08:00
nfc treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ntb
nubus
nvdimm
nvme block-2023-01-06 2023-01-06 13:12:42 -08:00
nvmem Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
of of: fdt: Honor CONFIG_CMDLINE* even without /chosen node, take 2 2023-01-04 21:31:59 -06:00
opp
parisc parisc: led: Fix potential null-ptr-deref in start_task() 2022-12-17 23:19:38 +01:00
parport
pci phy-for-6.2 2022-12-19 08:40:58 -06:00
pcmcia treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
peci
perf RISC-V Patches for the 6.2 Merge Window, Part 1 2022-12-14 15:23:49 -08:00
phy phy-for-6.2 2022-12-19 08:40:58 -06:00
pinctrl Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
platform USB/Thunderbolt driver changes for 6.2-rc1 2022-12-16 03:22:53 -08:00
pnp
power power supply and reset changes for the v6.2 series 2022-12-17 08:39:31 -06:00
powercap
pps
ps3
ptp Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
pwm pwm: Changes for v6.2-rc1 2022-12-21 09:41:28 -08:00
rapidio rapidio: devices: fix missing put_device in mport_cdev_open 2022-12-11 19:30:20 -08:00
ras
regulator regulator: Fixes for v6.2 2022-12-23 14:38:00 -08:00
remoteproc remoteproc: core: Do pm_relax when in RPROC_OFFLINE state 2022-12-07 11:20:55 -07:00
reset
rpmsg
rtc - New Drivers 2022-12-21 09:19:24 -08:00
s390 block-2023-01-06 2023-01-06 13:12:42 -08:00
sbus
scsi treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
sh
siox
slimbus
soc ARM: SoC fixes for 6.2 2022-12-19 16:07:59 -06:00
soundwire soundwire updates for 6.2 2022-12-19 08:47:33 -06:00
spi spi: Fix for v6.2 2022-12-23 14:44:08 -08:00
spmi
ssb
staging treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
target SCSI misc on 20221213 2022-12-14 08:58:51 -08:00
tc
tee SoC driver updates for 6.2 2022-12-12 10:17:08 -08:00
thermal thermal: int340x: Add missing attribute for data rate base 2022-12-30 19:48:37 +01:00
thunderbolt
tty treewide: Convert del_timer*() to timer_shutdown*() 2022-12-25 13:38:09 -08:00
ufs SCSI misc on 20221213 2022-12-14 08:58:51 -08:00
uio
usb usb: dwc3: gadget: Ignore End Transfer delay on teardown 2023-01-06 16:32:10 +01:00
vdpa vdpa_sim_net: should not drop the multicast/broadcast packet 2022-12-28 05:28:11 -05:00
vfio Driver Core changes for 6.2-rc1 2022-12-16 03:54:54 -08:00
vhost vhost_vdpa: fix the crash in unmap a large memory 2022-12-28 05:28:11 -05:00
video fbdev: omapfb: avoid stack overflow warning 2023-01-05 11:43:27 +01:00
virt Char/Misc driver changes for 6.2-rc1 2022-12-16 03:49:24 -08:00
virtio virtio: Implementing attribute show with sysfs_emit 2022-12-28 05:28:11 -05:00
vlynq
w1
watchdog linux-watchdog 6.2-rc1 tag 2022-12-17 08:34:01 -06:00
xen drm for 6.2: 2022-12-13 11:59:58 -08:00
zorro
Kconfig
Makefile