summaryrefslogtreecommitdiff
path: root/include (follow)
Commit message (Collapse)AuthorAge
...
* | | | thermal-core: Add API to get temperatureArchana Sathyakumar2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there is no API to query the current temperature in sensor framework. Add a generic API to get it. Change-Id: I038e9a118e77eb6a3599b7d45a0cc8757990d2ef Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org> Conflicts: include/linux/thermal.h
* | | | thermal: Add Support for enabling and disabling tsens tripRam Chandrasekar2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new API to enable or disable the kernel client's trip threshold request. The enable or disable trip threshold requests from different kernel clients and userspace client will activate/deactivate the corresponding clients threshold request. Modify thermal sys framework to include only the active thresholds from clients to determine the current trip thresholds for tsens. CRs-Fixed: 561775 Change-Id: I304ac00daa8a0a1a68b60153c29ee6cb5c3507b1 Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org> [joshc: drop msm_thermal chunk] Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
* | | | thermal: Fix sensor thresholds not accounted correctlyPraveen Chidambaram2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sensor threshold min and max are calculated to be binding around the current temp, but they fail if there no thresholds available with the min < curr_temp and the max > curr_temp. Fix negative temperatures handling. Change-Id: I124d2a9249f705d41469b8e0efffe2dfdf05e292 Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
* | | | thermal: Add sensor API to allow any driver to set thresholdsPraveen Chidambaram2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sensor API allow drivers to set min or max thresholds and get notified when the corresponding sensor crosses these thresholds. The sensor API, uses the THERMAL_TRIP_CONFIGURABLE_HI and THERMAL_TRIP_CONFIGURABLE_LOW, to set the threshold. The existing sysfs interfaces will not be affected by the newly added API. Change-Id: I85d2ae132fc3b7b6d157faf0a7390e31fdc7e6da Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org> Conflicts: include/linux/thermal.h
* | | | thermal: tsens: TSENS driver fixupsSiddartha Mohanadoss2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add TSENS Thermal driver. Include support to activate a trip type and mode. This snapshot is taken as of msm-3.14 commit 3bc54cf86b (Merge "msm: camera: Add dummy sub module in sensor pipeline") Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org> Conflicts: drivers/thermal/Kconfig drivers/thermal/Makefile include/linux/thermal.h Change-Id: Ie8a089afc0cf9e45ac000dff425a3e6206c1b9b1
* | | | soc: qcom: Add snapshot of QMIKarthikeyan Ramasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This snapshot is taken as of msm-3.18 commit e70ad0cd (Promotion of kernel.lnx.3.18-151201.) Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
* | | | net: ipc_router: Add snapshot of IPC RouterKarthikeyan Ramasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This snapshot is taken as of msm-3.18 commit e70ad0cd (Promotion of kernel.lnx.3.18-151201.) Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
* | | | soc: qcom: Add snapshot of SMEM_LOG DriverKarthikeyan Ramasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This snapshot is taken as of msm-3.18 commit e70ad0cd (Promotion of kernel.lnx.3.18-151201.) Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
* | | | uapi: scsi: add missing header dependenciesJeremy Gebben2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | Add #include dependencies to pick up definitions of __u32 and HZ. Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
* | | | uapi: fix export of msm_ion.hJeremy Gebben2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Make this file be exported via symlink like the rest of the android staging uapi headers. Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
* | | | msm: secure_buffer: fix stub functionsJeremy Gebben2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | All of these need to be 'static inline' to avoid multiple definition problems when MSM_SECURE_BUFFER=n. Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
* | | | ARM: dts: qcom: Snapshot all device tree files for MSMCOBALTAbhimanyu Kapur2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Snapshot all device tree files from msm-3.18@b6a638f8795ee77ca ("Merge "msm: mdss: add support to send dcs cmds by left port only in video mode") Change-Id: I631047dffa019c6d2ee731ead328d332f1c7f3b8 Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
* | | | soc: qcom: add snapshot of PIL, SSR and SYSMON drivers/librariesDavid Keitel2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a snapshot of PIL, SSR and SYSMON drivers and libraries as of msm-3.18 commit 5cef33a285e91869cebe40a25e6294ae1e5fc9cc (Merge "ASoC: msm: Update the AFE clock API support") Change-Id: Ibebddee32b15fbcb5b18cceac43769d3309e609c Signed-off-by: David Keitel <dkeitel@codeaurora.org>
* | | | firmware_class: Include a size argument in unmap_fw_memVikram Mulukutla2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some implementations may need to know the size of a region allocated by map_fw_mem in the context of the unmap_fw_mem callback. Add this as an argument to the callback signature. Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
* | | | firmware_class: Allow private data in [unmap|map]_fw_memVikram Mulukutla2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some callers of request_firmware_direct may need additional context to be able to map firmware memory. Allow private data to be passed in with request_firmware_direct, and send this data along with the [unmap|map]_fw_mem callbacks. Change-Id: I05a15eb46cc663a4476b784e30e80182a28e10c3 Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org> [joshc: dropped PIL portions, fixed trivial conflict in firmware.h due to API rename] Signed-off-by: Josh Cartwright <joshc@codeaurora.org> [vmulukut: adjusted for upstream merge conflicts] Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
* | | | firmware_class: Introduce the request_firmware_direct APIVikram Mulukutla2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On devices with low memory, using request_firmware on rather large firmware images results in a memory usage penalty that might be unaffordable. Introduce a new API that allows the firmware image to be directly loaded to a destination address without using any intermediate buffer. Change-Id: I51b55dd9044ea669e2126a3f908028850bf76325 Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org> [joshc: renamed request_firmware_direct to request_firmware_into_buf, avoiding namespace conflict] Signed-off-by: Josh Cartwright <joshc@codeaurora.org> [vmulukut: upstream merge conflict fixups] Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org> [dkeitel: upstream merge conflict fixups] Signed-off-by: David Keitel <dkeitel@codeaurora.org>
* | | | cpuidle: lpm-levels: Fixes for clockevents_notifyMahesh Sivasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The use of clockevents_notify is deprcated and targeted APIs are used instead of the clockevents_notify callbacks. Switch broadcast timer notifications to tick_broadcast_enter and tick_broadcast_exit. Change-Id: I3441873eb4009b105db04f4a18d28ae9ccd07e95
* | | | cpu_pm: Add level to the cluster pm notificationMurali Nalajala2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cluster pm notifications without level information increases difficulty and complexity for the registered drivers to figure out when the last coherency level is going into power collapse. Send notifications with level information that allows the registered drivers to easily determine the cluster level that is going in/out of power collapse. There is an issue with this implementation. GIC driver saves and restores the distributed registers as part of cluster notifications. On newer platforms there are multiple cluster levels are defined (e.g l2, cci etc). These cluster level notofications can happen independently. On MSM platforms GIC is still active while the cluster sleeps in idle, causing the GIC state to be overwritten with an incorrect previous state of the interrupts. This leads to a system hang. Do not save and restore on any L2 and higher cache coherency level sleep entry and exit. Change-Id: I31918d6383f19e80fe3b064cfaf0b55e16b97eb6 Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org> Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org> Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org> Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
* | | | soc: qcom: idle: Snapshot of idle/sleep driver as of msm-3.18Mahesh Sivasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a snapshot of the Sleep driver and realted functionality as of e70ad0cd5efdd9dc91a77dcdac31d6132e1315c1 on msm-3.18 branch Change-Id: I98fec26849898c5c66abbb1b094439780c23964d
* | | | soc: qcom: mpm-of: Add gpio_arch_extn supportMahesh Sivasubramanian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To wake up from system sleep, the MPM driver needs to keep track of enabled GPIO interrupts. Add gpio_arch_extn to support monitoring of GPIO interrupts Change-Id: If97f566e11eaab452e4b55db1a05e5457f1a8d3f Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
* | | | Reverting "irqchip: gic: Drop support for gic_arch_extn"Marc Zyngier2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSM chipsets rely on arch_extn to get the necessary functionality. Add them until a upstream solution can be arrived at. Change-Id: I773a3e82ca81b1c49cf2581f5288cacaeb6c6db0 Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
* | | | irqchip: msm: Add snaphot of msm irq driverAbhimanyu Kapur2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Snapshot the msm irq driver as of msm-3.14 commit: 3bc54cf86bdc7affa7cd4bf7faa3c57fe8f8819d (Merge "msm: camera: Add dummy sub module in sensor pipeline") Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org> Conflicts: drivers/irqchip/Kconfig drivers/irqchip/Makefile Change-Id: Idf5284906af960fe03dcf881df1b57149c8e6ad8
* | | | usb: dwc3: Add support for POR upon composition switchHemant Kumar2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Composition switch to GSI transport based composition from another GSI transport based composition requires power on reset of USB controller to synchronize operation with USB wrapper for GSI. Specifically GSI_EN bit cannot be cleared without performing usb controller reset. Hence introduce gadget restart operation to simulate vbus off and vbus on and perform this operation from gsi bind config. Change-Id: Ie4695807c73c2d14c0d9e17c486f34a90fd93ddb Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | usb: dwc3: Adjust TX FIFO allocationJack Pham2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimize the dwc3_gadget_resize_tx_fifos() function to better allocate the per-endpoint FIFOs depending on a number of factors: - super- or non-super speed - bulk/isoc with bursting - reduced RAM (when QDSS uses some internal RAM) - endpoint enabled in composition Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | usb: gadget: Add udc_priv member to struct usb_requestJack Pham2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This member is used to store additional private flags for BAM-enabled functions to pass information to the UDC. Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | USB: phy: Add support to invoke DP and DM sourcing and pulsingMayank Rana2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds support for sourcing and pulsig with DP/DM using QUSB PHY. This change uses POWER_SUPPLY_PROP_DP_DM power supply property with different values to achieve the same. This change is a cherry-pick of msm-3.18 commit 55b93e2506d5399b1b0ee4a1b173168fb8026548 ("USB: Add support to invoke DP and DM sourcing and pulsing") with only the change from include/linux/usb/phy.h Signed-off-by: Mayank Rana <mrana@codeaurora.org> Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | usb: phy: Add new OTG state OTG_STATE_B_SUSPENDEDHemant Kumar2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This state is used to handle:- - Bus suspend followed by cable disconnect: pm usage count is incremented upon cable connect. Upon bus suspend, suspend interrupt kicks in otg state machine which moves device state to OTG_STATE_B_SUSPENDED from OTG_STATE_B_PERIPHERAL and decrements pm usage count. Upon cable unplug additional decrement of pm usage count is prevented. This state also takes care the handling of cable unplug followed by bus suspend interrupt. - Host initiated resume after bus suspend: Being in OTG_STATE_B_SUSPENDED after bus suspend, upon host initiated resume, wakeup interrupt kicks in otg state machine which moves device to OTG_STATE_B_PERIPHERAL state by incrementing pm usage count. - PC reboot with cable plugged in: After PC shutdown device goes to OTG_STATE_B_SUSPENDED state. After PC start power event irq thread kicks in otg state machine to move device to OTG_STATE_B_PERIPHERAL state and increments pm usage count. - Composition switch after bus suspend: dwc3_gadget_pullup() kicks in otg state machine to move device state from OTG_STATE_B_SUSPENDED to OTG_STATE_B_PERIPHERAL and increments pm usage count to prevent runtime suspend during device enumeration. Also, remove pm_runtime_set_active() which sets the PM runtime stauts as active to avoid pm_runtime_get_sync() failures which explicitly checks for runtime pm status. For example, if status is active, pm_runtime_get_sync() will just increments the counter without actually resuming the device. Change-Id: Id33b81911ef3894a00802b3e553840b9447f6269 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org> [jackp@codeaurora.org: cherry-pick only phy.h and common.c] Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | usb: phy: Expose new PHY callback for performing PHY resetMaya Erez2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new PHY callback for performing PHY reset, which is required by some targets during their initialization sequence. As usb_phy_reset name was already in use by local msm PHY APIs, change the previous usb_phy_reset to msm_usb_phy_reset. Change-Id: Ieb5099d12e107c123d8889058aa564d0b091d6f9 Signed-off-by: Maya Erez <merez@codeaurora.org>
* | | | usb: dwc3: msm: Add snapshot of DWC3 MSM driversJack Pham2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add dwc3-msm.c and associated driver files. Note these are based on the downstream implementation and will coexist (for the time being) with dwc3-qcom glue driver until they can eventually be merged. This snapshot is taken as of msm-3.18 commit a3883c356869 (Merge "input: touchscreen: correct condition checks in ITE tech touch driver") Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | msm_rmnet: merge support for RAWIP msm_rmnet deviceAbhijeet Dharmapurikar2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add to support for msm_rmnet device using ARPHRD_RAWIP. Change-Id: Ie1e5433f440b26b644cccb18083ef325129f7942 Acked-by: Andrew Richardson <randrew@qualcomm.com> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | net: Add the get current NAPI context APISubash Abhinov Kasiviswanathan2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 69235aa80090 ("net: Remove the get current NAPI context API") removed the definition of get_current_napi_context() as rmnet_data was no longer using it. However, the rmnet_data change to use its NAPI in multiple contexts was prone to race in hotplug scenarios. Add back get_current_napi_context() and current_napi to the softnet_data struct CRs-Fixed: 966095 Change-Id: I7cf1c5e39a5ccbd7a74a096b11efd179a4d0d034 Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org> [subashab@codeaurora.org: resolve trivial merge conflicts] Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: tc_qdisc_flow_control returning qdisc sizeHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the tc_qdisc_flow_control API to return the size of the qdisc in order to be able to collect data on the size of the qdisc before doing flow control operations. This is required to effectively diagnose the state of the queues when debugging flow control. CRs-Fixed: 657414 Change-Id: I4aff2157410e1170de2d0791757ed2e12830a2db Acked-by: Sivan Reinstein <sivanr@qti.qualcomm.com> Signed-off-by: Harout Hedeshian <harouth@codeaurora.org> [subashab@codeaurora.org: resolve trivial merge conflicts] Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net_sched: Add flow control support to prio qdiscTianyi Gou2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add enable_flow flag to the prio qdisc. Packet flow is enabled by default, but can be disabled from userspace (e.g. IPROUTE2 tc tool). This allows for suspending packet dequeue on a per-qdisc basis, which is needed to supprot Quality of Service (QOS) when using WWAN modem. Change-Id: I932f296be946f1acc3b00c7d8569bbb733d33622 Acked-by: Andrew Richardson <randrew@qualcomm.com> CRs-Fixed: 283471 Signed-off-by: Tianyi Gou <tgou@codeaurora.org>
* | | | net: sched: export an api to enable/disable flow on schTianyi Gou2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Export a function from sch_api.c that will look up desired qdisc and call it's registered change function to enable/disable flow. Change-Id: I5b6dc7a6fd2b09b796c92b3770ba83423d19c864 CRs-Fixed: 355156 Acked-by: Jimi Shah <jimis@qualcomm.com> Signed-off-by: Tianyi Gou <tgou@codeaurora.org> [subashab@codeaurora.org: resolve trivial merge conflicts] Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | rmnet_data : Changes to support Scatter Gather and GSO.Ravinder Konka2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables hardware device features such as NETIF_F_SG NETIF_F_GSO NETIF_F_GSO_UDP_TUNNEL NETIF_F_GSO_UDP_TUNNEL_CSUM. This patch also ensures to skip padding(to align length to word boundaries) for outgoing non linear skbs. This patch also adds a new ioctl interface RMNET_IOCTL_GET_SG_SUPPORT to query the physical network devices for Scatter Gather support. Change-Id: I9788d75c249ab2dac5b598dad131c0692ed84e4d Acked-by: Abhishek Chauhan <abchauha@qti.qualcomm.com> Signed-off-by: Ravinder Konka <rkonka@codeaurora.org>
* | | | net: msm_rmnet: Add an IOCTL definition to deregister a net deviceRavinder Konka2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Platform drivers may be registered on driver startup for multiple channels which may cause probe and remove events to be called corresponding to driver events. It is possible that not all channels need to be enumerated for normal device operation. The unused channels also add unnecessary delay during sub system restart. Add an extended IOCTL which provides user space an option to unregister a platform driver. Change-Id: Ifa6284563551ecdd297ae457ea2b35027f60844e Acked-by: Nagarjuna Chaganti <nchagant@qti.qualcomm.com> Signed-off-by: Ravinder Konka <rkonka@codeaurora.org> Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: msm_rmnet: extend SET_INGRESS_DATA_FORMAT to include AGG dataHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduced new format flag for RMNET_IOCTL_SET_INGRESS_DATA_FORMAT: RMNET_IOCTL_INGRESS_FORMAT_AGG_DATA This flag is set by the entity callint the IOCTL if the ingress_format union has been populated with a valid aggregation count and buffer size. Change-Id: Icb30c99e69062736c343591226fbdb499aa47a41 Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>
* | | | net: msm_rmnet: Add an extended ioctl definition to pass xlat device infoHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an ioctl for passing rmnet_data device name to the physical device driver for xlat capable calls. This information is used by the driver to optimize traffic on the rmnet_data device. CRs-Fixed: 762178 Change-Id: Ib19730d239882f0900ca2dbd91e5252fefd63053 Acked-by: Sudharsan Coimbatore Premkumar <supremku@qti.qualcomm.com> Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>
* | | | net: msm_rmnet.h: Add sleep state extended IOCTLSubash Abhinov Kasiviswanathan2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add extended IOCTL to set and reset the sleep states of the underlying physical transport. CRs-Fixed: 679058 Change-Id: I962e016abf3bfa4b468591039b79cef58fbb8b3b Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: msm_rmnet.h: Fix data type of flow_id in QoS headerSubash Abhinov Kasiviswanathan2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix an issue where the flow_id was appearing to be 8 bytes in 64 bit platforms. This is because the flow_id is declared as unsigned long which is 8 bytes in 64 bit and 4 bytes in 32 bit platforms. Change the flow_id to uint32_t to make it 4 bytes on all platforms. CRs-fixed: 663814 Change-Id: I2472fb99750d1818ecfae03b5bcd860f19ac51a7 Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: rmnet_data: Add support for MAPv4 data formatSubash Abhinov Kasiviswanathan2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the MAPv4 ingress and data format handlers. MAPv4 requires the checksum for uplink TCP and UDP packets to be 1's complemented before passing the packet onto the physical netdevice. This workaround is needed due to failures seen in hardware while processing translated packets. Change-Id: Ib79382fa7e8b2bd0c1adbe68b8de75f1602df10b Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: rmnet_data: add support for UL MAP based checksum offloadSivan Reinstein2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add UL checksum offload routines for MAPv3. Can bypass checksum software for IPv4/IPv6 TCP/UDP protocols. Set rmnet_data VNDs hw_flags to NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM to define the checksum offload abilities. Add UL checksum meta-info header for IPv4/IPv6 TCP/UDP packets for which UL checksum is being offloaded. CRs-fixed: 731693 Change-Id: Ief139d357b528aead66acfe39a5227328b8fbf93 Signed-off-by: Sivan Reinstein <sivanr@codeaurora.org>
* | | | net: rmnet_data: Add documentation for configuration structuresHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Better document the configuration structures and the element usage. Anticipating more elements being added in the near term. Change-Id: I5ca90b7a776072d6b1ac4838782cada38f4fea3b Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>
* | | | net: rmnet_data: add support for DL MAP based checksum offloadSivan Reinstein2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add DL checksum offload routines for MAPv3. Can bypass checksum software for IPv4/IPv6 TCP/UDP protocols. CRs-fixed: 692334 Change-Id: Ic13a5d9a1ebfdc57b6eb53ee93da92c3aee547b1 Signed-off-by: Sivan Reinstein <sivanr@codeaurora.org>
* | | | net: rmnet_data: Move MAP header definition to UAPIHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose the MAP header to the rest of the kernel and user space. Useful for making various parts of the kernel MAP aware. Keeping consistency with other networking procols by exposing protocol headers to user space with a header file in UAPI. CRs-Fixed: 681280 Change-Id: Ic7f414f926f68531418725f971ab2b44459f5ea1 Signed-off-by: Harout Hedeshian <harouth@codeaurora.org> [subashab@codeaurora.org: resolve trivial merge conflicts] Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: rmnet_data: modify 8-byte QoS HeaderSubash Abhinov Kasiviswanathan2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clients consuming the 8-byte QoS header expect the flowID in a different position in the header thus causing random address dereference and a potential crash. Update the 8-byte QoS header format structure as specified in the mandated QOS specification CRs-Fixed: 625709 Change-Id: I58c662ff2f3adfe9584d19891339ea31ce0c8bd3 Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: rmnet_data: new structure for rmnet ioctlsHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch modifies the rmnet ioctls RMNET_IOCTL_GET_LLP, RMNET_IOCTL_GET_QOS, RMNET_IOCTL_GET_OPMODE, RMNET_IOCTL_FLOW_ENABLE and RMNET_IOCTL_FLOW_DISABLE to avoid putting integral data in pointers and avoid casting between 32 and 64 bits types. CRs-Fixed: 601207 Change-Id: I66edb785f6204f38b6f0ecccb2ceab36d5e38188 Acked-by: Sivan Reinstein <sivanr@qti.qualcomm.com> Signed-off-by: Harout Hedeshian <harouth@codeaurora.org> [subashab@codeaurora.org: remove driver specific changes] Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
* | | | net: rmnet_data: Add support for guaranteed paddingHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added new parameter tail_spacing to RMNET_NETLINK_SET_LINK_INGRESS_DATA_FORMAT in order to support an additional fixed padding on packets. Required to support RNDIS tethering. CRs-Fixed: 579184 Change-Id: I58bbbfbaa68a28b25a96f52b04165285de9c24ef Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>
* | | | net: rmnet_data: Enhancements to support SSRHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleaned up refcount on get_dev_by_name. Added new APIs to support cleanup of configuration and virtual devices. Added explicit reference managment in association/un-association and when setting/unsetting logical EP. CRs-Fixed: 596227 Change-Id: Ic67bb649b0f0420d9a1e4bf5664ed63c0ff7d8bf Signed-off-by: Harout Hadeshian <harouth@codeaurora.org>
* | | | net: rmnet_data: 8-byte QoS Header SupportHarout Hedeshian2016-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement 8-byte QoS header support in order to fix alignment issues on HSIC transport and increase throughput CRs-Fixed: 579132 Change-Id: I3e53571d36bd71705abcb1473290929f8227e6f3 Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>