From: ChiaEn Wu <chiaen_wu(a)richtek.com>
This patch series add Mediatek MT6370 PMIC support. The MT6370 is a
highly-integrated smart power management IC, which includes a single
cell Li-Ion/Li-Polymer switching battery charger, a USB
Type-C & Power Delivery (PD) controller, dual Flash LED current sources,
a RGB LED driver, a backlight WLED driver, a display bias driver and a
general LDO for portable devices.
Among with this we took some changes and refined the device tree files to
…
[View More]comply with DT specifications.
Thank you,
ChiaEn Wu
---
Changes in v3:
- Remove ADC ABI file, which is added in v2 Patch 7
- In patch 02/14:
- Add items and remove maxItems of io-channels
- Add io-channel-names and describe each item
- Add "unevaluatedProperties: false" in "usb-otg-vbus-regulator"
- Rename "enable-gpio" to "enable-gpios" in "usb-otg-vbus-regulator"
- In patch 03/14:
- Use leds-class-multicolor.yaml instead of common.yaml.
- Split multi-led and led node.
- Add subdevice "led" in "multi-led".
- In patch 04/14:
- Remove the description of enum.
- In patch 05/14:
- Rename "mediatek,bled-pwm-hys-input-threshold-steps" to
"mediatek,bled-pwm-hys-input-th-steps"
- Refine "bled-pwm-hys-input-th-steps", "bled-ovp-microvolt",
"bled-ocp-microamp" enum values
- In patch 06/14:
- Use " in entire patchset
- Refine ADC description
- Rename "enable-gpio" to "enable-gpios" in "regualtor"
- Change "/schemas/" to "../" in every reference of all MT6370 modules
- In patch 07/14:
- Refine Kconfig help text
- Refine error message of unknown vendor ID in
mt6370_check_vendor_info()
- Refine return value handling of mt6370_regmap_read()
- Refine all probe error by using dev_err_probe()
- Refine "bank_idx" and "bank_addr" in mt6370_regmap_read() and
mt6370_regmap_write()
- Add "#define VENID*" and drop the comments in
mt6370_check_vendor_info()
- Drop "MFD" in MODULE_DESCRIPTION()
- In patch 09/14:
- Refine Kconfig help text
- In patch 10/14:
- Refine Kconfig help text
- Refine all channel value in read_scale()
a. current: uA --> mA
b. voltage: uV --> mV
c. temperature: degrees Celsius --> milli degrees Celsius
- Add "default:" condition of switch statement in read_scale() and read_raw()
- Add error message for reading ADC register failed
- Add the comment for adc_lock
- Add <linux/mod_devicetable.h> header file for struct of_device_id
- Replace "adc" text with "ADC" in all of the error messages
- In patch 12/14:
- Refine the grammer of the Kconfig.
- Change reg mode to the const current mode.
- In patch 14/14:
- Refine bool properties parsing (pwm-enable, ovp-shutdown, ocp-shutdown) in DT
parsing function
- Refine u32 and u8 properties parsing (pwm-hys-input-th-steps, ovp-microvolt,
ocp-microamp), from using register value to using actual value
- Refine error string of "channle-use" parsing failed
- Refine Kconfig help text
Changes in v2:
- In patch 01/15:
- Add "unevaluatedProperties: false".
- Delete "DT bindings".
- Refine the description to fit in 80 columns.
- Skip the connector description.
- In patch 02/15:
- Refine items description of interrupt-name
- Rename "usb-otg-vbus" to "usb-otg-vbus-regulator"
- Add constraint properties for ADC
- In patch 03/15:
- Skip not useful description of "^(multi-)?led@[0-3]$"
and reg.
- Due to the dependency, remove the mention of mfd
document directory.
- Delete Soft-start property. In design aspect, we think
soft-restart should always be enabled, our new chip
has deleted the related setting register , also, we don’t
allow user adjust this parameter in this chip.
- Refine the commit message.
- In patch 04/15:
- Skip not useful description of "^led@[0-1]$" and reg.
- Add apace after '#'.
- Refine the commit message.
- In patch 05/15:
- Remove "binding documentation" in subject title
- Refine description of mt6370 backlight binding
document
- Refine properties name(bled-pwm-hys-input-bit,
bled-ovp-microvolt, bled-ocp-microamp) and their
description
- In patch 06/15:
- Refine ADC and Regulator descriptions
- Refine include header usage in example
- Refine node name to generic node name("pmic@34")
- Refine led example indentation
- Refine license of mediatek,mt6370_adc.h
- Rename the dts example from IRQ define to number.
- Remove mediatek,mt6370.h
- In patch 07/15:
- Add ABI documentation for mt6370 non-standard ADC
sysfs interfaces.
- In patch 08/15:
- Add all IRQ define into mt6370.c.
- Refine include header usage
- In patch 09/15:
- No changes.
- In patch 10/15:
- Use 'gpiod_get_from_of_node' to replace
'fwnode_gpiod_get_index'.
- In patch 11/15:
- Refine Kconfig mt6370 help text
- Refine mask&shift to FIELD_PREP()
- Refine mutex lock name ("lock" -> "adc_lock")
- Refine mt6370_adc_read_scale()
- Refine mt6370_adc_read_offset()
- Refine mt6370_channel_labels[] by using enum to index
chan spec
- Refine MT6370_ADC_CHAN()
- Refine indio_dev->name
- Remove useless include header files
- In patch 12/15:
- Refine mt6370_chg_otg_rdesc.of_match
("mt6370,otg-vbus" -> "usb-otg-vbus-regulator") to match
DT binding
- In patch 13/15:
- Refine Kconfig description.
- Remove include "linux/of.h" and use
"linux/mod_devicetable.h".
- Place a comma for the last element of the const
unsigned int array.
- Add a comment line for the mutex 'lock'.
- In probe function, use 'dev_err_probe' in some
judgement to reduce the LOC.
- Refine include header usage.
BIT/GENMASK -> linux/bits.h
FIELD_GET -> linux/bitfield.h
- In patch 14/15:
- Add blank line.
- Replace container_of() with to_mt6370_led() .
- Refine description of ramping.
- Refine the mt6370_init_common_properties function.
- Refine the probe return.
- In patch 15/15:
- Refine MT6370 help text in Kconfig
- Refine DT Parse function
- Remove useless enum
- Add comment for 6372 backward compatible in
bl_update_status() and
check_vendor_info()
- Using dev_err_probe(); insteads dev_err()&return; in
the probe()
Alice Chen (2):
dt-bindings: leds: Add Mediatek MT6370 flashlight
leds: flashlight: mt6370: Add Mediatek MT6370 flashlight support
ChiYuan Huang (8):
dt-bindings: usb: Add Mediatek MT6370 TCPC
dt-bindings: leds: mt6370: Add Mediatek mt6370 current sink type LED
indicator
dt-bindings: backlight: Add Mediatek MT6370 backlight
dt-bindings: mfd: Add Mediatek MT6370
mfd: mt6370: Add Mediatek MT6370 support
usb: typec: tcpci_mt6370: Add Mediatek MT6370 tcpci driver
regulator: mt6370: Add mt6370 DisplayBias and VibLDO support
leds: mt6370: Add Mediatek MT6370 current sink type LED Indicator
support
ChiaEn Wu (4):
dt-bindings: power: supply: Add Mediatek MT6370 Charger
iio: adc: mt6370: Add Mediatek MT6370 support
power: supply: mt6370: Add Mediatek MT6370 charger driver
video: backlight: mt6370: Add Mediatek MT6370 support
.../leds/backlight/mediatek,mt6370-backlight.yaml | 92 ++
.../bindings/leds/mediatek,mt6370-flashlight.yaml | 41 +
.../bindings/leds/mediatek,mt6370-indicator.yaml | 77 ++
.../devicetree/bindings/mfd/mediatek,mt6370.yaml | 280 +++++
.../power/supply/mediatek,mt6370-charger.yaml | 87 ++
.../bindings/usb/mediatek,mt6370-tcpc.yaml | 36 +
drivers/iio/adc/Kconfig | 9 +
drivers/iio/adc/Makefile | 1 +
drivers/iio/adc/mt6370-adc.c | 275 +++++
drivers/leds/Kconfig | 11 +
drivers/leds/Makefile | 1 +
drivers/leds/flash/Kconfig | 9 +
drivers/leds/flash/Makefile | 1 +
drivers/leds/flash/leds-mt6370-flash.c | 657 ++++++++++++
drivers/leds/leds-mt6370.c | 989 +++++++++++++++++
drivers/mfd/Kconfig | 13 +
drivers/mfd/Makefile | 1 +
drivers/mfd/mt6370.c | 358 +++++++
drivers/power/supply/Kconfig | 11 +
drivers/power/supply/Makefile | 1 +
drivers/power/supply/mt6370-charger.c | 1132 ++++++++++++++++++++
drivers/regulator/Kconfig | 8 +
drivers/regulator/Makefile | 1 +
drivers/regulator/mt6370-regulator.c | 388 +++++++
drivers/usb/typec/tcpm/Kconfig | 8 +
drivers/usb/typec/tcpm/Makefile | 1 +
drivers/usb/typec/tcpm/tcpci_mt6370.c | 212 ++++
drivers/video/backlight/Kconfig | 9 +
drivers/video/backlight/Makefile | 1 +
drivers/video/backlight/mt6370-backlight.c | 346 ++++++
include/dt-bindings/iio/adc/mediatek,mt6370_adc.h | 18 +
31 files changed, 5074 insertions(+)
create mode 100644 Documentation/devicetree/bindings/leds/backlight/mediatek,mt6370-backlight.yaml
create mode 100644 Documentation/devicetree/bindings/leds/mediatek,mt6370-flashlight.yaml
create mode 100644 Documentation/devicetree/bindings/leds/mediatek,mt6370-indicator.yaml
create mode 100644 Documentation/devicetree/bindings/mfd/mediatek,mt6370.yaml
create mode 100644 Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml
create mode 100644 Documentation/devicetree/bindings/usb/mediatek,mt6370-tcpc.yaml
create mode 100644 drivers/iio/adc/mt6370-adc.c
create mode 100644 drivers/leds/flash/leds-mt6370-flash.c
create mode 100644 drivers/leds/leds-mt6370.c
create mode 100644 drivers/mfd/mt6370.c
create mode 100644 drivers/power/supply/mt6370-charger.c
create mode 100644 drivers/regulator/mt6370-regulator.c
create mode 100644 drivers/usb/typec/tcpm/tcpci_mt6370.c
create mode 100644 drivers/video/backlight/mt6370-backlight.c
create mode 100644 include/dt-bindings/iio/adc/mediatek,mt6370_adc.h
--
2.7.4
[View Less]
Yiqing raised a problem of negative fence refcount for resubmitted jobs
in amdgpu and suggested a workaround in [1]. I took a look myself and discovered
some deeper problems both in amdgpu and scheduler code.
Yiqing helped with testing the new code and also drew a detailed refcount and flow
tracing diagram for parent (HW) fence life cycle and refcount under various
cases for the proposed patchset at [2].
[1] - https://lore.kernel.org/all/731b7ff1-3cc9-e314-df2a-7c51b76d4db0@amd.com/t/…
[2] -…
[View More]https://drive.google.com/file/d/1yEoeW6OQC9WnwmzFW6NBLhFP_jD0xcHm/view?usp=…
Andrey Grodzovsky (5):
drm/amdgpu: Fix possible refcount leak for release of
external_hw_fence
drm/amdgpu: Add put fence in amdgpu_fence_driver_clear_job_fences
drm/amdgpu: Prevent race between late signaled fences and GPU reset.
drm/sched: Partial revert of 'drm/sched: Keep s_fence->parent pointer'
drm/amdgpu: Follow up change to previous drm scheduler change.
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 2 ++
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 27 ++++++++++++----
drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 37 ++++++++++++++++++++--
drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 12 +++----
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 1 +
drivers/gpu/drm/scheduler/sched_main.c | 16 ++++++++--
6 files changed, 78 insertions(+), 17 deletions(-)
--
2.25.1
[View Less]
Hi Linus,
Fixes for this week, bit larger than normal, but I think the last
couple have been quieter, and it's only rc4. There are a lot of small
msm fixes, and a slightly larger set of vc4 fixes. The vc4 fixes clean
up a lot of crashes around the rPI4 hardware differences from earlier
ones, and problems in the page flip and modeset code which assumed
earlier hw, so I thought it would be okay to keep them in.
Otherwise, it's a few amdgpu, i915, sun4i and a panel quirk.
Let me know if there …
[View More]are any issues. Just a headsup as well myself and
danvet will be out the week 4th-10th July so you might not get an rc6
round, rc5 next week should be fine.
Regards,
Dave.
drm-fixes-2022-06-24:
drm fixes for 5.19-rc4
amdgpu:
- Adjust GTT size logic
- eDP fix for RMB
- DCN 3.15 fix
- DP training fix
- Color encoding fix for DCN2+
sun4i:
- multiple suspend fixes
vc4:
- rework driver split for rpi4,
fixes multiple crashers.
panel:
- quirk for Aya Neo Next
i915:
- Revert low voltage SKU check removal to fix display issues
- Apply PLL DCO fraction workaround for ADL-S
- Don't show engine classes not present in client fdinfo
msm:
- Workaround for parade DSI bridge power sequencing
- Fix for multi-planar YUV format offsets
- Limiting WB modes to max sspp linewidth
- Fixing the supported rotations to add 180 back for IGT
- Fix to handle pm_runtime_get_sync() errors to avoid unclocked access
in the bind() path for dpu driver
- Fix the irq_free() without request issue which was a being hit frequently
in CI.
- Fix to add minimum ICC vote in the msm_mdss pm_resume path to address
bootup splats
- Fix to avoid dereferencing without checking in WB encoder
- Fix to avoid crash during suspend in DP driver by ensuring interrupt
mask bits are updated
- Remove unused code from dpu_encoder_virt_atomic_check()
- Fix to remove redundant init of dsc variable
- Fix to ensure mmap offset is initialized to avoid memory corruption
from unpin/evict
- Fix double runpm disable in probe-defer path
- VMA fenced-unpin fixes
- Fix for WB max-width
- Fix for rare dp resolution change issue
The following changes since commit a111daf0c53ae91e71fd2bfe7497862d14132e3e:
Linux 5.19-rc3 (2022-06-19 15:06:47 -0500)
are available in the Git repository at:
git://anongit.freedesktop.org/drm/drm tags/drm-fixes-2022-06-24
for you to fetch changes up to 1e9124df8be0a43e4e9a10c5d1140d6ca8e50132:
Merge tag 'drm-msm-fixes-2022-06-20' of
https://gitlab.freedesktop.org/drm/msm into drm-fixes (2022-06-24
10:11:27 +1000)
----------------------------------------------------------------
drm fixes for 5.19-rc4
amdgpu:
- Adjust GTT size logic
- eDP fix for RMB
- DCN 3.15 fix
- DP training fix
- Color encoding fix for DCN2+
sun4i:
- multiple suspend fixes
vc4:
- rework driver split for rpi4,
fixes multiple crashers.
panel:
- quirk for Aya Neo Next
i915:
- Revert low voltage SKU check removal to fix display issues
- Apply PLL DCO fraction workaround for ADL-S
- Don't show engine classes not present in client fdinfo
msm:
- Workaround for parade DSI bridge power sequencing
- Fix for multi-planar YUV format offsets
- Limiting WB modes to max sspp linewidth
- Fixing the supported rotations to add 180 back for IGT
- Fix to handle pm_runtime_get_sync() errors to avoid unclocked access
in the bind() path for dpu driver
- Fix the irq_free() without request issue which was a being hit frequently
in CI.
- Fix to add minimum ICC vote in the msm_mdss pm_resume path to address
bootup splats
- Fix to avoid dereferencing without checking in WB encoder
- Fix to avoid crash during suspend in DP driver by ensuring interrupt
mask bits are updated
- Remove unused code from dpu_encoder_virt_atomic_check()
- Fix to remove redundant init of dsc variable
- Fix to ensure mmap offset is initialized to avoid memory corruption
from unpin/evict
- Fix double runpm disable in probe-defer path
- VMA fenced-unpin fixes
- Fix for WB max-width
- Fix for rare dp resolution change issue
----------------------------------------------------------------
Abhinav Kumar (1):
drm/msm/dpu: limit wb modes based on max_mixer_width
Alex Deucher (1):
drm/amdgpu: Adjust logic around GTT size (v3)
Dan Carpenter (1):
drm/vc4: fix error code in vc4_check_tex_size()
Dave Airlie (4):
Merge tag 'amd-drm-fixes-5.19-2022-06-22' of
https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
Merge tag 'drm-misc-fixes-2022-06-23' of
git://anongit.freedesktop.org/drm/drm-misc into drm-fixes
Merge tag 'drm-intel-fixes-2022-06-22' of
git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
Merge tag 'drm-msm-fixes-2022-06-20' of
https://gitlab.freedesktop.org/drm/msm into drm-fixes
George Shen (1):
drm/amd/display: Fix typo in override_lane_settings
Jason A. Donenfeld (1):
drm/i915/display: Re-add check for low voltage sku for max dp source rate
Jernej Skrabec (1):
drm/sun4i: Add DMA mask and segment size
Jonathan Marek (1):
drm/msm: use for_each_sgtable_sg to iterate over scatterlist
Joshua Ashton (1):
amd/display/dc: Fix COLOR_ENCODING and COLOR_RANGE doing nothing
for DCN20+
Kuogee Hsieh (2):
drm/msm/dp: check core_initialized before disable interrupts at
dp_display_unbind()
drm/msm/dp: force link training for display resolution change
Mario Limonciello (1):
drm/amd: Revert "drm/amd/display: keep eDP Vdd on when eDP
stream is already enabled"
Maxime Ripard (14):
drm/vc4: plane: Prevent async update if we don't have a dlist
drm/vc4: Consolidate Hardware Revision Check
drm/vc4: bo: Rename vc4_dumb_create
drm/vc4: bo: Split out Dumb buffers fixup
drm/vc4: drv: Register a different driver on BCM2711
drm/vc4: kms: Register a different drm_mode_config_funcs on BCM2711
drm/vc4: plane: Register a different drm_plane_helper_funcs on BCM2711
drm/vc4: drv: Skip BO Backend Initialization on BCM2711
drm/vc4: crtc: Use an union to store the page flip callback
drm/vc4: crtc: Move the BO handling out of common page-flip callback
drm/vc4: crtc: Move the BO Handling out of Common Page-Flip Handler
drm/vc4: crtc: Don't call into BO Handling on Async Page-Flips on BCM2711
drm/vc4: crtc: Fix out of order frames during asynchronous page flips
drm/vc4: Warn if some v3d code is run on BCM2711
Maximilian Luz (1):
drm/msm: Fix double pm_runtime_disable() call
Maya Matuszczyk (1):
drm: panel-orientation-quirks: Add quirk for Aya Neo Next
Miaoqian Lin (1):
drm/msm/mdp4: Fix refcount leak in mdp4_modeset_init_intf
Qingqing Zhuo (1):
drm/amd/display: Fix DC warning at driver load
Rob Clark (7):
Merge tag 'msm-next-5.19-fixes-06-01' of
https://gitlab.freedesktop.org/abhinavk/msm into msm-fixes-staging
drm/msm: Ensure mmap offset is initialized
drm/msm: Switch ordering of runpm put vs devfreq_idle
drm/msm/gem: Separate object and vma unpin
drm/msm/gem: Drop early returns in close/purge vma
drm/msm: Drop update_fences()
drm/msm: Don't overwrite hw fence in hw_init
Samuel Holland (2):
drm/sun4i: dw-hdmi: Fix ddc-en GPIO consumer conflict
drm/sun4i: Fix crash during suspend after component bind failure
Saud Farooqui (2):
drm/vc4: hdmi: Fixed possible integer overflow
drm/sun4i: Return if frontend is not present
Tvrtko Ursulin (1):
drm/i915/fdinfo: Don't show engine classes not present
Ville Syrjälä (1):
drm/i915: Implement w/a 22010492432 for adl-s
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 20 ++-
.../amd/display/dc/clk_mgr/dcn315/dcn315_clk_mgr.c | 2 +-
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 2 +-
.../amd/display/dc/dce110/dce110_hw_sequencer.c | 24 +--
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 3 +
drivers/gpu/drm/amd/display/dc/dcn201/dcn201_dpp.c | 3 +
drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.c | 3 +
drivers/gpu/drm/drm_panel_orientation_quirks.c | 6 +
drivers/gpu/drm/i915/display/intel_dp.c | 32 +++-
drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 4 +-
drivers/gpu/drm/i915/i915_drm_client.c | 5 +-
drivers/gpu/drm/msm/adreno/adreno_gpu.c | 14 +-
drivers/gpu/drm/msm/disp/dpu1/dpu_writeback.c | 9 +-
drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 2 +
drivers/gpu/drm/msm/dp/dp_ctrl.c | 33 +++-
drivers/gpu/drm/msm/dp/dp_ctrl.h | 2 +-
drivers/gpu/drm/msm/dp/dp_display.c | 16 +-
drivers/gpu/drm/msm/msm_drv.c | 2 +-
drivers/gpu/drm/msm/msm_drv.h | 1 +
drivers/gpu/drm/msm/msm_fence.c | 8 +-
drivers/gpu/drm/msm/msm_gem.c | 7 +-
drivers/gpu/drm/msm/msm_gem.h | 11 +-
drivers/gpu/drm/msm/msm_gem_prime.c | 15 ++
drivers/gpu/drm/msm/msm_gem_submit.c | 18 +-
drivers/gpu/drm/msm/msm_gem_vma.c | 6 +-
drivers/gpu/drm/msm/msm_gpu.c | 27 +--
drivers/gpu/drm/msm/msm_iommu.c | 2 +-
drivers/gpu/drm/msm/msm_ringbuffer.c | 2 +-
drivers/gpu/drm/sun4i/sun4i_drv.c | 12 +-
drivers/gpu/drm/sun4i/sun4i_layer.c | 2 +-
drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 54 +-----
drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 2 -
drivers/gpu/drm/vc4/vc4_bo.c | 62 ++++++-
drivers/gpu/drm/vc4/vc4_crtc.c | 196 +++++++++++++++------
drivers/gpu/drm/vc4/vc4_drv.c | 97 ++++++++--
drivers/gpu/drm/vc4/vc4_drv.h | 19 +-
drivers/gpu/drm/vc4/vc4_gem.c | 40 +++++
drivers/gpu/drm/vc4/vc4_hdmi.c | 2 +-
drivers/gpu/drm/vc4/vc4_hvs.c | 18 +-
drivers/gpu/drm/vc4/vc4_irq.c | 16 ++
drivers/gpu/drm/vc4/vc4_kms.c | 24 ++-
drivers/gpu/drm/vc4/vc4_perfmon.c | 47 ++++-
drivers/gpu/drm/vc4/vc4_plane.c | 29 ++-
drivers/gpu/drm/vc4/vc4_render_cl.c | 4 +
drivers/gpu/drm/vc4/vc4_v3d.c | 15 ++
drivers/gpu/drm/vc4/vc4_validate.c | 16 ++
drivers/gpu/drm/vc4/vc4_validate_shaders.c | 4 +
47 files changed, 670 insertions(+), 268 deletions(-)
[View Less]
Hi,
I spent about 2 days trying to figure this out, but I guess not a lot of people do this, so I was not able to find a good example somewhere on the Internet.
How to I use git to gather up new code to be converted to patches?
Specifically, I have 20+ new files in one location (drivers/gpu/drm/via) and a small change to DRM main make file (drivers/gpu/drm/Makefile).
If someone can tell me how to do this, I will post the work on dri-devel.
Regards,
Kevin Brace
Brace Computer Laboratory blog
https://bracecomputerlab.com
The dpi/dpintf driver and the added helper functions are required for
the DisplayPort driver to work.
This series is separated from [1] which is original from Guillaume.
The display port driver is [2].
Changes for v14:
1. Separate a new binding patch to modify mediatek string format.
2. Use GENMASK(4, 0) for INT_MATRIX_SEL_MASK in patch
"Add YUV422 output support"
3. Change kernel doc description of support_direct_pin.
4. Change to use pixels_per_iter to control quantity of transferred
…
[View More]pixels per iterration.
Changes for v13:
1. Change mediatek,mt8195-dp_intf to mediatek,mt8195-dp-intf.
2. Add kernel doc for mtk_dpi_conf.
3. Drop patch of tvd_pll enable.
4. Squash some color format transfer related patches.
5. Add new patch to support setting of direct connection to pins.
6. Change fix tag of "drm/mediatek: dpi: Only enable dpi after the bridge is enabled".
Changes for v12:
1. Remove pll_gate.
2. Add more detailed commit message.
3. Separate tvd_clk patch and yuv422 output support from add dpintf
support patch
4. Remove limit patch and use common driver codes to determine this.
Changes for v11:
1. Rename ck_cg to pll_gate.
2. Add some commit message to clarify the modification reason.
3. Fix some driver order and modify for reviewers' comments.
[1]:https://lore.kernel.org/all/20220523104758.29531-1-granquet@baylibre.com/
[2]:https://lore.kernel.org/all/20220610105522.13449-1-rex-bc.chen@mediatek.…
Bo-Chen Chen (5):
dt-bindings: mediatek,dpi: Revise mediatek strings to correct format
drm/mediatek: dpi: Add kernel document for struct mtk_dpi_conf
drm/mediatek: dpi: Add support for quantization range
drm/mediatek: dpi: Add YUV422 output support
drm/mediatek: dpi: add config to support direct connection to dpi
panels
Guillaume Ranquet (9):
drm/mediatek: dpi: implement a CK/DE pol toggle in SoC config
drm/mediatek: dpi: implement a swap_input toggle in SoC config
drm/mediatek: dpi: move dimension mask to SoC config
drm/mediatek: dpi: move hvsize_mask to SoC config
drm/mediatek: dpi: move swap_shift to SoC config
drm/mediatek: dpi: move the yuv422_en_bit to SoC config
drm/mediatek: dpi: move the csc_enable bit to SoC config
drm/mediatek: dpi: Add dp_intf support
drm/mediatek: dpi: Only enable dpi after the bridge is enabled
Markus Schneider-Pargmann (1):
dt-bindings: mediatek,dpi: Add DP_INTF compatible
.../display/mediatek/mediatek,dpi.yaml | 11 +-
drivers/gpu/drm/mediatek/mtk_dpi.c | 268 +++++++++++++++---
drivers/gpu/drm/mediatek/mtk_dpi_regs.h | 15 +
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 4 +
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 1 +
drivers/gpu/drm/mediatek/mtk_drm_drv.c | 3 +
6 files changed, 252 insertions(+), 50 deletions(-)
--
2.18.0
[View Less]
This series introduces a binding for Type-C data lane switches. These
control the routing and operating modes of USB Type-C data lanes based
on the PD messaging from the Type-C port driver regarding connected
peripherals.
The first 2 patches introduce the new "typec-switch" binding as
well as one user of it (the ANX7625 drm bridge).
Patches 3-5 add functionality to the anx7625 driver to
register the mode-switches, as well as program its crosspoint
switch depending on which Type-C port has a …
[View More]DisplayPort (DP) peripheral
connected to it.
Patch 6-9 add similar bindings update and Type-C switch support to the
it6505 driver.
v4:
https://lore.kernel.org/linux-usb/20220615172129.1314056-8-pmalani@chromium…
Changes in v5:
- Rebased on usb-next, so removed Patch v4 1/7 and Patch v4 2/7 from
this version (v5) since they are already in usb-next.
- Added newer Reviewed-by tags.
- Added new patches (6-9) in this version for a 2nd example (it6505)
of a binding of the user.
Patch submission suggestions:
Option 1:
- Bindings patches 1/9 and 2/9 can go through the USB repo (since they are
already reviewed from v4 [1]).
- Bindings patch 6/9 can go through the USB repo, and the remaining patches
(3-5,7-9) can go through the DRM repo.
<or>
- Patches 3-9 can all go through the DRM repo.
Option 2:
- All patches (1-9) go through the USB repo.
(My apologies if I've made this confusing, and I appreciate any
suggestions for better submission strategy).
[1]: https://lore.kernel.org/linux-usb/YrMxFeMc0tk%2FK1qL@kroah.com/
Pin-Yen Lin (5):
drm/bridge: anx7625: Add typec_mux_set callback function
dt/bindings: drm/bridge: it6505: Add mode-switch support
drm/bridge: it6505: Register number of Type C switches
drm/bridge: it6505: Register Type-C mode switches
drm/bridge: it6505: Add typec_mux_set callback function
Prashant Malani (4):
dt-bindings: usb: Add Type-C switch binding
dt-bindings: drm/bridge: anx7625: Add mode-switch support
drm/bridge: anx7625: Register number of Type C switches
drm/bridge: anx7625: Register Type-C mode switches
.../display/bridge/analogix,anx7625.yaml | 64 +++++++
.../bindings/display/bridge/ite,it6505.yaml | 97 +++++++++-
.../devicetree/bindings/usb/typec-switch.yaml | 74 ++++++++
drivers/gpu/drm/bridge/analogix/anx7625.c | 148 +++++++++++++++
drivers/gpu/drm/bridge/analogix/anx7625.h | 20 ++
drivers/gpu/drm/bridge/ite-it6505.c | 171 +++++++++++++++++-
6 files changed, 569 insertions(+), 5 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/typec-switch.yaml
--
2.37.0.rc0.104.g0611611a94-goog
[View Less]
If drm_connector_init fails, intel_connector_free will be called to take
care of proper free. So it is necessary to drop the refcount of port
before intel_connector_free.
Fixes: 091a4f91942a ("drm/i915: Handle drm-layer errors in intel_dp_add_mst_connector")
Signed-off-by: Hangyu Hua <hbh25y(a)gmail.com>
Reviewed-by: José Roberto de Souza <jose.souza(a)intel.com>
---
drivers/gpu/drm/i915/display/intel_dp_mst.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/…
[View More]i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index 061b277e5ce7..14d2a64193b2 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -839,6 +839,7 @@ static struct drm_connector *intel_dp_add_mst_connector(struct drm_dp_mst_topolo
ret = drm_connector_init(dev, connector, &intel_dp_mst_connector_funcs,
DRM_MODE_CONNECTOR_DisplayPort);
if (ret) {
+ drm_dp_mst_put_port_malloc(port);
intel_connector_free(intel_connector);
return NULL;
}
--
2.25.1
[View Less]