[PATCHv5 0/3] Add initial support for slimport anx78xx
From: Enric Balletbo i Serra
Date: Fri Nov 13 2015 - 07:02:31 EST
This is the fifth version of patch set. Any comments are welcome.
See the changelog below for details.
The following series add initial support for the Slimport ANX7814 transmitter, a
ultra-low power Full-HD (1080p60) transmitter designed for portable device.
The driver was originally created and based from the work of Junhua Xia from
Analogix. This driver is a refactor of the original driver and fixes different
coding style lines, and different errors/warnings reported by checkpatch. Also
there were things that I noticed that we need to change like:
- Convert the numbered GPIO API to the new descriptor based GPIO API.
- Review the DT binding
- Add missing MODULE_DEVICE_TABLE(of, ...);
- Fix Makefiles and Kconfig to build conditionally.
- Use SIMPLE_DEV_PM_OPS() instead of the deprecated i2c .suspend and
- Move to use managed device resources.
- Remove dead/unused code.
- And others ...
Changes since v4:
Rob Herring and Laurent Pinchart:
- Add ports binding for describing data connections.
- He did a big effort refactoring the driver and in order to simplify the different
state machines involved and the code in general.
- Remove some magic numbers.
- Use some DRM helpers.
- Document better the driver in general
Changes since v3:
- Integrate sp_edid_header_result with sp_check_edid_data
- Fix loop forever.
- Use meaningful messages and variable names
- Replace some 'while' loops and use a for loop.
- Might be clearer to say >= LINK_6P75G
- Convert a function to void function because always return 0
- Remove some magic numbers and refactor sp_tx_pclk_calc
- Replace sp_read_reg(SP_TX_LINK_BW_SET_REG) for sp_tx_get_link_bw.
- Mask bits 4:0. Bit 5 has another purpose, and 7:6 are reserved.
- Use ARRAY_SIZE.
- Use memset for initialization.
- Simply condition if (!(c1 & POLLING_EN) || (c & POLLING_ERR))
- Don not use a temporal variable write the value directly.
- Fix various typos
- Return directly PTR_ERR.
- Refactor while loop removing the earlier condition and do while (--c) instead
- Simplify double negative and fix alignment
- Remove the superflous casts to u16 and parens
- Remove debug printks and use ftrace instead.
- Flip this condition around and pull the code in one indent level.
- Fix return value 'ret' that should be an int. It causes a signedness bug later.
- Use better style for devm_kzalloc
- Get rid of AUX_*. They aren't used much and we could easily use normal error codes instead.
- Fix errors reported by scripts/checkpatch.pl --strict --subjective
- Remove XTAL_CLK_M10 XTAL_CLK definitions
- replace ulong for unsigned long
- remove some magic numbers and refactor sp_tx_enable_audio_output
- remove some magic numbers and refactor sp_tx_phy_auto_test
Changes since v2 (requested by Daniel Kurtz):
- clean up the typos, and little nits requested by Dan.
- move to the drm/bridge directory
- rename the files, variables, types, etc. to anx78xx
- plumb through the context struct to all functions that act on the device
- use proper messaging (dev_ rather than pr_, _dbg/_err rather than _info)
Changes since v1:
- As requested by Greg, move from staging to a subsystem.
Enric Balletbo i Serra (3):
of: Add vendor prefix for Analogix Semiconductor, Inc.
devicetree: Add new ANX7814 SlimPort transmitter binding.
drm: bridge: anx78xx: Add anx78xx driver support by analogix.
.../devicetree/bindings/vendor-prefixes.txt | 1 +
.../devicetree/bindings/video/bridge/anx7814.txt | 36 +
drivers/gpu/drm/bridge/Kconfig | 2 +
drivers/gpu/drm/bridge/Makefile | 1 +
drivers/gpu/drm/bridge/anx78xx/Kconfig | 5 +
drivers/gpu/drm/bridge/anx78xx/Makefile | 4 +
drivers/gpu/drm/bridge/anx78xx/anx78xx.h | 45 +
drivers/gpu/drm/bridge/anx78xx/anx78xx_main.c | 347 +++
drivers/gpu/drm/bridge/anx78xx/slimport_tx_drv.c | 3226 ++++++++++++++++++++
drivers/gpu/drm/bridge/anx78xx/slimport_tx_drv.h | 149 +
drivers/gpu/drm/bridge/anx78xx/slimport_tx_reg.h | 754 +++++
11 files changed, 4570 insertions(+)
create mode 100644 Documentation/devicetree/bindings/video/bridge/anx7814.txt
create mode 100644 drivers/gpu/drm/bridge/anx78xx/Kconfig
create mode 100644 drivers/gpu/drm/bridge/anx78xx/Makefile
create mode 100644 drivers/gpu/drm/bridge/anx78xx/anx78xx.h
create mode 100644 drivers/gpu/drm/bridge/anx78xx/anx78xx_main.c
create mode 100644 drivers/gpu/drm/bridge/anx78xx/slimport_tx_drv.c
create mode 100644 drivers/gpu/drm/bridge/anx78xx/slimport_tx_drv.h
create mode 100644 drivers/gpu/drm/bridge/anx78xx/slimport_tx_reg.h
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/