summaryrefslogtreecommitdiff
path: root/include/uapi
AgeCommit message (Collapse)Author
2016-03-23input: hbtp_input: Port and add snapshot of changes from msm-3.10Himanshu Aggarwal
Port the HBTP Input driver and apply the following driver changes taken from msm-3.10 kernel branch as of msm-3.10 commit. 31773451 input: misc: add input driver for HBTP 20bf9c5f input: hbtp_input: bypass alphabetical and numeric key config e424ee72 input: misc: hbtp-input: add event type in uevents Change-Id: I122d22cf738c747bcd43ec7f90c33a239288fd9d Signed-off-by: Jing Lin <jinglin@codeaurora.org> Signed-off-by: Chun Zhang <chunz@codeaurora.org> Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: maxim_sti: move header to uapiJing Lin
Move kernel data structures to driver and keep the data structures shared between kernel and user space in the header file. Move the header to uapi to make it accesible to user space. Fix checkpatch errors to replace deprecated functions and hardcoded error return values. Change-Id: Ic3312c11ddda9f02da9807a6243206d582281995 Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2016-03-23uapi: Kbuild: Expose thermal kernel headerArchana Sathyakumar
Expose thermal uapi kernel header file to the userspace Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
2016-03-23uapi: Kbuild: Expose energy-aware kernel headerArchana Sathyakumar
Expose energy-aware uapi kernel header file to the userspace Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
2016-03-23include: mmc: Export sanitized mmc headersVenkat Gopalakrishnan
Export sanitized mmc.h and core.h for userspace. Change-Id: I3a6eadde2023d974b0ce260a77082b01d8ba0b5d Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
2016-03-23mmc: card: Fix RPMB IOCTL to handle all cardsKrishna Konda
The eMMC 4.5 spec for RPMB accesses is not very clear on whether user parition accesses can be allowed in the middle of RPMB accesses. Due to this ambiguity, it turns out this is implementation defined and certain cards support it while others do not. In order to allow this feature to function across a wide variety of cards, this patch takes the pessimistic approach and ensures that any RPMB access is completed before user partition can be accessed. Change-Id: I77959f462c874771a0a854d9a2bc48df446eff56 Signed-off-by: Krishna Konda <kkonda@codeaurora.org> Signed-off-by: Oluwafemi Adeyemi <aadeyemi@codeaurora.org> Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org> [merez@codeaurora: fix conflicts due to changes in 3.14] Signed-off-by: Maya Erez <merez@codeaurora.org> [venkatg@codeaurora: pick only ioctl header changes and drop rest] Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
2016-03-23msm: camera: Update camera driversLakshmi Narayana Kalavala
Add changes to update camera drivers to: 1. Update necessary Kconfig files to support camera driver compilation. 2. Support minor changes to V4L framework. 3. Export uapi headers to header_install export location. Signed-off-by: Seemanta Dutta <seemanta@codeaurora.org> Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2016-03-23msm: camera: Add all camera driversLakshmi Narayana Kalavala
Add all camera drivers by picking them up from AU_LINUX_ANDROID_LA.HB.1.3.1.06.00.00.187.056 (e70ad0cd) Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2016-03-23msm: mdss: Add backlight threshold for ADPing Li
Notify user space with only backlight changes that pass the backlight threshold check. Change-Id: Id2fef0a2d9c883d0e68a5ad6be699858be6898ae Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23msm: mdss: add mdss support for msm8937Clarence Ip
Initial set of changes to support msm8937. This includes adding MDP HW version for msm8937, and some makefile changes. Change-Id: I0646ea76060696d4fe35e3f6f5f2a949474c0b8b Signed-off-by: Krishna Chaitanya Devarakonda <kdevarak@codeaurora.org> [cip@codeaurora.org: Resolved merge conflict. Remove makefile changes, always build mdss_mdp_pp_v1_7.c] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: Add support for SRGB IGCGopikrishnaiah Anandan
Inverse gamma correction(IGC) linearizes the incoming pixels of a layer before blending it with other layers. Change adds support for sRGB format. Change-Id: I2b30adeae5a10354f485c8e78c9d8c938e1ccf1f Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23uapi: msm: mdss: add flag to indicate if content is interlacedTerence Hampson
When rotation session involves an interlaced layer that is intended to be deinterlaced by MDP, client is expected to pass in flag indicating rotator needs to deinterlace content. Change-Id: I27c009e32cd82e00713c20b3accb2efbe5587344 Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23msm: mdss: add secure display supportDhaval Patel
Secure display architecture requires null commit before and after secure display session. It also adds requirement to make the SCM call before and after secure display session. It supports secure display with single-stage SMMU hypervisor controlled. Change-Id: I3f41ed318c80d6e76328de114f7dee0c9891c2f0 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23msm: mdss: calculate rotator bw based on source fpsKrishna Chaitanya Devarakonda
If the source FPS for the rotator is set, store it and use it for calculating BW required by rotator. Change-Id: I35801528930897447a039c4a4c950048e99d16d9 Signed-off-by: Krishna Chaitanya Devarakonda <kdevarak@codeaurora.org>
2016-03-23uapi: msm: mdss: expose compression ratio for rotatorIngrid Gallardo
For bandwidth calculations, rotator driver needs to know the compression ratio factors which depends on the pixel format. This change adds support to share this information between user-space and rotator driver. Change-Id: I6163317514328610a836c34fd9ca75c3e753b50f Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23msm: mdss: Add atomic commit PP supportBenet Clark
This change adds support for SSPP postprocessing using the atomic commit ioctl. The configuration given as part of the ioctl will be cached in the same pipe res as before, and the register programming sequence will be called from the pipe setup as before. Change-Id: Ida8209f80e55e9d5009b5df4e55f787b4a85ddc0 Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23msm: mdss: Clean up PP framework for unchanged PP featuresBenet Clark
When creating the framework for handling PP versioning, all PP features were given interface update and space in the framework for handling versioning. However, the CSC hardware will not change, and therefore will not need any updates. This change removes the framework update done for CSC. Change-Id: Idc6c0b7ea62717ff1d1f2e4c827481e5db1976a8 Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23uapi: msm: mdp: Add color space in mdp_input_layerSushil Chauhan
MDP needs color space value to configure CSC matrix correctly. So add color_space member in the mdp_input_layer structure. Change-Id: I47ca556f8cfa8ef6c95fb0d77ef1510e3830a286 Signed-off-by: Sushil Chauhan <sushilchauhan@codeaurora.org>
2016-03-23msm: mdss: add support for async position updatesVeera Sundaram Sankaran
Expose new ioctl for updating the layer position asynchronously. Initially, pipes should be configured with async_update flag set during the atomic commit, after which any number of position update calls can be made. This would enable multiple position updates within a single vsync. However, the screen update would happen only after vsync, which would pick the latest update. Currently, supported for video mode panels with single LM or dual LM with src_split enabled. Only position updates are possible with no scaling/cropping and each async layer should have unique z_order. Change-Id: Ibb2804b59c6c980411396120e63167f18df5bc5b Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org> [cip@codeaurora.org: Resolved out-of-order merge conflict] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23mdss: msm: Add support for gamut map enableGopikrishnaiah Anandan
Non-uniform mapping mode is configurable parameter exposed by MDP. Driver should provide the option to gamut clients to configure the mapping. Change updates the interface to expose the parameter and programs the gamut registers based on user setting. Change-Id: I71e7e0f7443da7856b0d03e6b2799f9380274893 Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23uapi: msm: mdp: add comment on how to fill roiUjwal Patel
Add a comment specifying guidelines for user on how to fill roi information when calling commit IOCTL. Change-Id: Iaab026131baccace1d4236777ff68d5953b5342b Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23msm: mdss: add sysfs node for AD backlight notificationPing Li
This change adds a sysfs node for assertive display attenuation backlight change notification. Any AD related backlight notification will be posted to the ad_bl_event sysfs node, so userspace clients can be notified if they poll on the same sysfs node. It will simplify and optimize the previous notification ioctl implementation. Change-Id: I7a8f86563d5802a41dc200f5901a8d0bed1cf765 Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23msm: mdss: Add support to select max MDP bandwidthJayant Shekhar
MDSS currently has fixed maximum bandwidth enabled in DT file. But there are scenarios where this maximum bandwidth support can change to enhance performance. Based on scenarios such as camera use, or flip involved declare the max bandwidth for usecase in DT and change accordingly based on usecase. Change-Id: Icc85d75d7a60fe6f934a1fbd9d5077b620b2993d Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23msm: mdss: add support to expose compression ratio factorIngrid Gallardo
For bandwidth calculations, driver needs to know compression ratio factors which depends on the pixel format. This change adds support to share this information with user-space. Change-Id: I08aa8792c38bb85a8114a21cbaabe905bbfee289 Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23msm: mdss: hdmi: Add S3D modesNaseer Ahmed
Export stereoscopic 3D modes supported by the driver to the userspace. Change-Id: I9992fc10abeca9cf48a9cca5efd404ec0693bb72 Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2016-03-23Revert "msm: mdss: Override partial update PP block using ioctl"Ken Zhang
This reverts commit 679dc362a9effee922ef2ce1447424b318f667bc. The way overriding partial update via PP ioctl is obsolete, partial update control is going through sysfs. The left code is blocking pp ioctl even partial update is disabled dynamically. Change-Id: Icb455a0101b53c58ae6c1b2686bd2297b4832396 Signed-off-by: Ken Zhang <kenz@codeaurora.org> Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23msm: mdss: Add MDSS version macro for msm8952Nitesh Gupta
This change adds MDSS version macro for msm8952 Change-Id: I096833c36229f2d623ab7efdeaf43035e5254973 Signed-off-by: Nitesh Gupta <niteshg@codeaurora.org>
2016-03-23msm: mdss: add support for NV21_VENUS in MDPJayant Shekhar
Earlier, camera preview buffers were of NV21(YCrCb_420_SP) and the video buffers were of NV12_VENUS(YCbCr_420_SP_VENUS) format. Now that the video encoder has support for NV21, both the camera and video buffers can be of NV21_VENUS (YCrCb_420_SP_VENUS) format. If the preview and video buffer sizes are the same, CPP double pass to generate video and preview buffers can be avoided and the buffers can now be generated within a single pass with CPP duplication thereby saving power. Add support in kernel for NV12_VENUS format to achieve the same. Change-Id: Ia0ee0155faaa5ba6d5cafbc0529428734eaf37e5 Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23msm: mdss: add RGBX UBWC format support in mdss for msm8996Dhaval Patel
MDSS hardware on msm8996 target supports RGBX UBWC format because it handles the RGBA and RGBX formats in same manner. This change adds the RGBX UBWC format support with compression ratio information. Change-Id: I674d136496910e017d4c21d56b62def7eff0562e Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23msm: mdss: Add gamma correction support in mdp3Krishna Chaitanya Parimi
Add gamma correction support in mdp3 driver via MSMFB_MDP_PP ioctl. The ioctl has been extended to program luts corresponding to histogram based outputs and gamma correction based on flag. The gain corresponding to gamma correction and the histogram based output are combined in driver and applied to hardware. Change-Id: Ie875b4a9f4f4c752ad9a811ad68aff1c5110d57b Signed-off-by: Krishna Chaitanya Parimi <cparimi@codeaurora.org>
2016-03-23msm: mdss: Redefine Gamut Mapping v1_7 Fine Mode table sizeBenet Clark
The table size definition was incorrectly defined previously, which caused the Gamut Mapping tables to be missing values. The table size definition has been redefined, in order to include the missing values. Change-Id: I0adf546c52c40f7a251f3aa977864ba116822d93 Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23include: media: Add the msm_rotator api header fileIan Maund
This header file is required by userspace components for compilation. Signed-off-by: Ian Maund <imaund@codeaurora.org> [cip@codeaurora.org: Resolved merge conflict] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: Remove smmu v1 related codeClarence Ip
smmu v1 is not supported in 3.18. Remove smmu v1 specific changes in display. Change-Id: I9deb060b6d3539acb9ee4b3fa05f491e0fc1db43 Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org> [cip@codeaurora.org: Resolved merge conflict] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: Add flag to pass in rotation informationTerence Hampson
When open session is called, input and output format validation takes place. In order to properly validate, we need to know if the session contains rotation. This rotation information is passed using the flag. Change-Id: Ie8bf4c6639aa0d671ac044a2581132bc97b68242 Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23msm: mdss: Add session id to rotator itemTerence Hampson
Value will be used to validate and identify which rotator session request item is a part of. Change-Id: Id62719c4d37c9a2f690cb57fa1ca2826310d1da8 Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23msm: mdss: re-factor new rotator flagsVeera Sundaram Sankaran
Change rot_180 and rot_270 flags to be a combination of few other flags, as those would summarize the respective operation. This would adhere more to how hardware behaves and also allows more combinations. Change-Id: Ib8e6e9e01710b773284e3ec496c689b8d786502c Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23msm: mdss: add rotation device APIXiaoming Zhou
Define the new rotation API for the mdss rotation driver. Change-Id: Ief25e7e6c7716db8183cb49e41cbd447b7cdfbfc Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
2016-03-23msm: mdss: Replace thulium with msm8996 in display codeVeera Sundaram Sankaran
Use appropriate SOC name. Also replace all instances of thulia with kryo. Change-Id: I3d21e3534fdf113190882c84ee5426ee929da131 Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org> [cip@codeaurora.org: Always build mdss_mdp_pp_v1_7.c] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: add init and deinit calls to notify update ioctlKrishna Chaitanya Parimi
Adding notify update init and notify update deinit calls which ought to be called when the notify update thread is being started and exited in userspace. The need for these is to ensure that during exit sequence of the notify update thread there is minimal wait due to ioctl being blocked in driver. The wait completions will not be reset if deinit has been called and will need an init call for them to start working. So when we are exiting the notify update thread, any block that might happen due to either a concurrent or a later notify update call is now handled properly so that the block is either returned early or is not allowed respectively. Change-Id: I8212bf058285f5929ebc85d41d6bb12b50e388d9 Signed-off-by: Krishna Chaitanya Parimi <cparimi@codeaurora.org>
2016-03-23msm: mdss: hdmi: add new formats defined in cea-861-fVinu Deokaran
CEA-861-F specification defines new video formats which are supported in the hdmi 2.0 specification. Change-Id: I5bf017835ea7c5e472e91c0d663f6f0083a87854 Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
2016-03-23msm: mdss: hdmi: optimize DTD resolution parsingAjay Singh Parmar
DTD (Detailed Timing Descriptor) provides full resolution timing details. Currently we compare these details with our resolution data base to find a match. This is not needed as DTD has complete details. Once parsing of resolution is done, just add this as a new resolution. Change-Id: I0d6c101c96a6bc8c0ff8fe63c17bf233d52dad7f Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23msm: mdss: fix issue in calculating decimated dimensionsJeevan Shriram
Width and height are not properly calculated when decimation is involved. When there is scaling on a pipe, the required number of pixels are wrongly programmed resulting in pipe hangs and leading to TLB SYNC issues. This change handles proper calculation of decimated width and height. Change-Id: Iadc4b201b32dda3dba6afe23070f349677be417c Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23msm: mdss: Remove union for output buffer and retire fenceTerence Hampson
In order to provide more reusable code, and prevent unnecessary debugging removing union as memory saving is insignificant. Change-Id: I5da68c64c0bf09157738fbec1feb6adde5af42a2 [veeras@codeaurora.org: Resolve merge conflict in msm_mdp_ext.h by retaining the version in this file] Signed-off-by: Terence Hampson <thampson@codeaurora.org> Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23msm: mdss: hdmi: add new resolutions at runtimeAjay Singh Parmar
EDID (Extended Display Identification Data) may contain some resolutions in DTDs (Detailed Timing Descriptors) which are not in the supported resolutions list. In such cases, every time when the HDMI cable is connected, parse all the resolution data from DTD and populate the resolution list with the newly found resolution. This way any resolution found in DTD can be supported subjected to hardware limitations. Change-Id: Ib2223e34820a70da0b03b8ac39b170cf6b3e65b5 [veeras@codeaurora.org: Resolved merge conflict in msm_hdmi_modes.h by retaining the version of this commit] Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org> Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23msm: mdss: hdmi: give multiple resolution info using sysfs nodeAjay Singh Parmar
Provide complete resolution details in a sysfs node "res_info" limited to PAGE_SIZE. Different modules can query for multiple resolution details based on the resolution ids received from EDID of the TV. In case resolution details exceed PAGE_SIZE, reuse res_info to get remaining timing details by provide page details. Change-Id: I3e8e8d4de29f78d22273b3fb8ff6a059a8cb19e1 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23msm: mdss: hdmi: optimize resolution data baseAjay Singh Parmar
HDMI has a large number of resolutions supported and currently for all supported resolutions, related modules maintain static tables which are populated at boot time. This results in huge static memory usage. Also, it limits the system to support only the define resolutions. Remove static table which stores all the resolution details. Get individual resolution details on need basis. Also, remove the dependency to support only the defined resolution. HDMI driver can support any non standard resolution within the allowed range. Change-Id: I0972bc3a0ab96051ea642d685d10c4e5535b7051 Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23msm: mdss: hdmi: add scrambling support for hdmi driverVinu Deokaran
Add support for enabling scrambler on hosts that support scrambling. Scrambling is a new freature added in HDMI 2.0 specification to reduce EMI interference at higher clock frequencies. Scrambling is enabled for HDMI modes that have pixel clock greater than 340MHz. For lower pixel clock frequencies, scrambling is enabled if sink supports scrambling at lower frequencies. Change-Id: I3aa224a32e768e2754a9e056a58ca90808a26ec6 Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
2016-03-23msm: mdss: ioctl to get pp feature versionGopikrishnaiah Anandan
Some of the PP(post processing) features in MDP might be upgraded when new revision hardware is released. Clients of driver were relying on MDP revision to decide which version of the PP feature is supported. With MDP revision approach the client of driver needs to maintain a mapping between MDP revision and PP feature version. This change exposes ioctl to driver clients to query PP driver version of feature instead of maintaining mapping. Change-Id: I73f465400112445070c75f65f6ffd87c03eef2fb Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23msm: mdss: Add PCC support for SSPP in thuliumGopikrishnaiah Anandan
PCC(polynomial color correction) feature is supported in SSPP(source surface post processing) MDP block of thulium. This change enables the caching of PCC params passed by driver client and programming the SSPP pcc hardware block. Change-Id: I3798becf7ed675c32a90bc7cefa415c055516d72 Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23msm: mdss: Add PA support to SSPP in thuliumBenet Clark
Picture Adjustment (PA) global and memory color adjustments are supported on source side VIG pipes in MDP. Clients of MDP driver can enable the feature using overlay ioctl interface. This change adds support for clients of the driver to enable the feature. Change-Id: If961bb20167a7d08bf77dc4807acb46f38094f63 Signed-off-by: Benet Clark <benetc@codeaurora.org>