All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v18 00/10] Add Mediatek Soc DRM (vdosys0) support for mt8195
@ 2022-04-12 10:31 ` jason-jh.lin
  0 siblings, 0 replies; 70+ messages in thread
From: jason-jh.lin @ 2022-04-12 10:31 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Matthias Brugger,
	Chun-Kuang Hu, AngeloGioacchino Del Regno
  Cc: fshao, David Airlie, singo.chang, dri-devel, Fabien Parent,
	linux-stm32, roy-cw.yeh, Project_Global_Chrome_Upstream_Group,
	Yongqiang Niu, Rex-BC Chen, devicetree, nancy.lin,
	linux-mediatek, hsinyi, linux-arm-kernel, jason-jhlin,
	jason-jh . lin, linux-kernel, moudy.ho, Maxime Coquelin

From: jason-jhlin <jason-jh.lin@mediatek.corp-partner.google.com>

Change in v18:
- change get driver data by io_start and wrap mmsys driver data into
  mmsys match data structure to support identifying multi mmsys driver
  data with the same compatible name
- change DDP_COMPONENT_DITHER to DDP_CONPONENT_DITHER0

Change in v17:
- change compatible name from 2 vdosys to 1 mmsys
- add get driver data by clk name function to get corresponding
  driver data for mt8195 vdosys0
- add all routing table setting for mt8195 vdosys0
- remove useless mutex define

Change in v16:
- rebase on linu-next tag: 'next-20220303'
- rebase on series: 'Fix MediaTek display dt-bindings issues'

Change in v15:
- remove mt8195-mmsys.h comment for mux settings
- define the mask macro to replace using value as mask
  to fix zero mask problem
- add EOF setting comment for MUTEX sof register

Change in v14:
- rebase on mediatek-drm-next-5.17
- rebase on "Add mmsys and mutex support for MDP" series
- rebase on "media: mediatek: support mdp3 on mt8183 platform" series

Change in v13:
- remove dts patch
- rebase on kernel-5.16-rc1
- rebase on mediatek-drm-next

Change in v12:
- add clock-names property to merge yaml
- using BIT(nr) macro to define the settings of mmsys routing table
- fix clk_get and clk_prepare_enable error handling issue

Change in v11:
- rebase on kernel-5.15-rc1
- change mbox label to gce0 for dts node of vdosys0
- change ovl compatibale to mt8192 to set smi_id_en=true in driver data
- move common module from display folder to common folder,
  such as AAL, COCLOR, CCORR and MUTEX

Change in v10:
- rebase on "drm/mediatek: add support for mediatek SOC MT8192" series
- rebase on "soc: mediatek: mmsys: add mt8192 mmsys support" series
- fix some typo and "mediatek" start with capital in every dt-bindings
- move mutex yaml from dfisplay folder to soc folder
- separate merge additional propoerties to an individual dt-bindings patch

Change in v9:
- separate power and gce properties of mmsys into another dt-binding patch
- rebase on "Separate aal module" series
- keep mtk_ddp_clk_enable/disable in the same place
- change mtk_dsc_start config register to mtk_drm_ddp_write_mask
- remove the 0 setting of merge fifo config function
- add CCORR driver data for mt8195

Change in v8:
- add DP_INTF0 mux into mmsys routing table
- add DP_INTF0 mutex mod and enum into add/remove comp function
- remove bypass DSC enum in mtk_ddp_comp_init

Change in v7:
- add dt=binding of mmsys and disp path into this series
- separate th modidfication of alphabetic order, remove unused define and
  rename the define of register offset to individual patch
- add comment for MERGE ultra and preultra setting

Change in v6:
- adjust alphabetic order for mediatek-drm
- move the patch that add mt8195 support for mediatek-drm as
  the lastest patch
- add MERGE define for const varriable 

Change in v5:
- add power-domain property into vdosys0 and vdosys1 dts node.
- add MT8195 prifix and remove unused VDO1 define in mt8195-mmsys.h

Change in v4:
- extract dt-binding patches to another patch series
- squash DSC module into mtk_drm_ddp_comp.c
- add coment and simplify MERGE config function

Change in v3:
- change mmsys and display dt-bindings document from txt to yaml
- add MERGE additional description in display dt-bindings document
- fix mboxes-cells number of vdosys0 node in dts
- drop mutex eof convert define
- remove pm_runtime apis in DSC and MERGE
- change DSC and MERGE enum to alphabetic order

Change in v2:
- add DSC yaml file
- add mt8195 drm driver porting parts in to one patch
- remove useless define, variable, structure member and function
- simplify DSC and MERGE file and switch threre order

jason-jh.lin (10):
  dt-bindings: arm: mediatek: mmsys: add power and gce properties
  dt-bindings: arm: mediatek: mmsys: add mt8195 SoC binding
  soc: mediatek: add mtk-mmsys support for mt8195 vdosys0
  soc: mediatek: add mtk-mutex support for mt8195 vdosys0
  drm/mediatek: add DSC support for mediatek-drm
  drm/mediatek: add MERGE support for mediatek-drm
  drm/mediatek: add mediatek-drm of vdosys0 support for mt8195
  soc: mediatek: add DDP_DOMPONENT_DITHER0 enum for mt8195 vdosys0
  drm/mediatek: add postfix 0 to DDP_COMPONENT_DITHER for mt8195 vdosys0
  soc: mediatek: remove DDP_DOMPONENT_DITHER enum

 .../bindings/arm/mediatek/mediatek,mmsys.yaml |  32 ++
 drivers/gpu/drm/mediatek/Makefile             |   1 +
 drivers/gpu/drm/mediatek/mtk_disp_drv.h       |   8 +
 drivers/gpu/drm/mediatek/mtk_disp_merge.c     | 246 ++++++++++++
 drivers/gpu/drm/mediatek/mtk_disp_rdma.c      |   6 +
 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c   |  65 ++-
 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h   |   2 +
 drivers/gpu/drm/mediatek/mtk_drm_drv.c        | 136 ++++++-
 drivers/gpu/drm/mediatek/mtk_drm_drv.h        |   7 +
 drivers/soc/mediatek/mt8167-mmsys.h           |   2 +-
 drivers/soc/mediatek/mt8183-mmsys.h           |   2 +-
 drivers/soc/mediatek/mt8186-mmsys.h           |   4 +-
 drivers/soc/mediatek/mt8192-mmsys.h           |   4 +-
 drivers/soc/mediatek/mt8195-mmsys.h           | 370 ++++++++++++++++++
 drivers/soc/mediatek/mt8365-mmsys.h           |   4 +-
 drivers/soc/mediatek/mtk-mmsys.c              | 152 ++++++-
 drivers/soc/mediatek/mtk-mmsys.h              |   6 +
 drivers/soc/mediatek/mtk-mutex.c              |  95 ++++-
 include/linux/soc/mediatek/mtk-mmsys.h        |  13 +-
 19 files changed, 1122 insertions(+), 33 deletions(-)
 create mode 100644 drivers/gpu/drm/mediatek/mtk_disp_merge.c
 create mode 100644 drivers/soc/mediatek/mt8195-mmsys.h

-- 
2.18.0


^ permalink raw reply	[flat|nested] 70+ messages in thread
* Re: [PATCH v18 03/10] soc: mediatek: add mtk-mmsys support for mt8195 vdosys0
  2022-04-12 10:31   ` jason-jh.lin
                   ` (3 preceding siblings ...)
  (?)
@ 2022-04-13  6:07 ` Dan Carpenter
  -1 siblings, 0 replies; 70+ messages in thread
From: kernel test robot @ 2022-04-13  1:51 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 8383 bytes --]

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
In-Reply-To: <20220412103114.19922-4-jason-jh.lin@mediatek.com>
References: <20220412103114.19922-4-jason-jh.lin@mediatek.com>
TO: "jason-jh.lin" <jason-jh.lin@mediatek.com>
TO: Rob Herring <robh+dt@kernel.org>
TO: Krzysztof Kozlowski <krzk@kernel.org>
TO: Matthias Brugger <matthias.bgg@gmail.com>
TO: "Chun-Kuang Hu" <chunkuang.hu@kernel.org>
TO: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
CC: fshao(a)chromium.org
CC: David Airlie <airlied@linux.ie>
CC: singo.chang(a)mediatek.com
CC: dri-devel(a)lists.freedesktop.org
CC: Fabien Parent <fparent@baylibre.com>
CC: linux-stm32(a)st-md-mailman.stormreply.com
CC: roy-cw.yeh(a)mediatek.com
CC: Project_Global_Chrome_Upstream_Group(a)mediatek.com
CC: Yongqiang Niu <yongqiang.niu@mediatek.com>
CC: "Rex-BC Chen" <rex-bc.chen@mediatek.com>
CC: devicetree(a)vger.kernel.org
CC: nancy.lin(a)mediatek.com
CC: linux-mediatek(a)lists.infradead.org
CC: hsinyi(a)chromium.org
CC: linux-arm-kernel(a)lists.infradead.org
CC: "jason-jh . lin" <jason-jh.lin@mediatek.com>
CC: linux-kernel(a)vger.kernel.org
CC: moudy.ho(a)mediatek.com
CC: Maxime Coquelin <mcoquelin.stm32@gmail.com>

Hi "jason-jh.lin",

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm/drm-next]
[also build test WARNING on robh/for-next krzk/for-next linus/master v5.18-rc2 next-20220412]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/intel-lab-lkp/linux/commits/jason-jh-lin/Add-Mediatek-Soc-DRM-vdosys0-support-for-mt8195/20220412-183359
base:   git://anongit.freedesktop.org/drm/drm drm-next
:::::: branch date: 15 hours ago
:::::: commit date: 15 hours ago
config: arc-randconfig-m031-20220411 (https://download.01.org/0day-ci/archive/20220413/202204130935.urqkcDrG-lkp(a)intel.com/config)
compiler: arc-elf-gcc (GCC) 11.2.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/soc/mediatek/mtk-mmsys.c:315 mtk_mmsys_probe() warn: passing zero to 'PTR_ERR'

vim +/PTR_ERR +315 drivers/soc/mediatek/mtk-mmsys.c

f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  280  
13032709e23285 Matthias Brugger       2020-03-25  281  static int mtk_mmsys_probe(struct platform_device *pdev)
13032709e23285 Matthias Brugger       2020-03-25  282  {
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  283  	struct device *dev = &pdev->dev;
13032709e23285 Matthias Brugger       2020-03-25  284  	struct platform_device *clks;
667c769246b01c Enric Balletbo i Serra 2020-03-25  285  	struct platform_device *drm;
8cfc54a36d3e79 jason-jh.lin           2022-04-12  286  	const struct mtk_mmsys_match_data *match_data;
ce15e7faa2fc54 CK Hu                  2021-03-17  287  	struct mtk_mmsys *mmsys;
8cfc54a36d3e79 jason-jh.lin           2022-04-12  288  	struct resource *res;
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  289  	int ret;
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  290  
ce15e7faa2fc54 CK Hu                  2021-03-17  291  	mmsys = devm_kzalloc(dev, sizeof(*mmsys), GFP_KERNEL);
ce15e7faa2fc54 CK Hu                  2021-03-17  292  	if (!mmsys)
ce15e7faa2fc54 CK Hu                  2021-03-17  293  		return -ENOMEM;
ce15e7faa2fc54 CK Hu                  2021-03-17  294  
ce15e7faa2fc54 CK Hu                  2021-03-17  295  	mmsys->regs = devm_platform_ioremap_resource(pdev, 0);
ce15e7faa2fc54 CK Hu                  2021-03-17  296  	if (IS_ERR(mmsys->regs)) {
ce15e7faa2fc54 CK Hu                  2021-03-17  297  		ret = PTR_ERR(mmsys->regs);
cc6576029aedc7 Enric Balletbo i Serra 2020-10-06  298  		dev_err(dev, "Failed to ioremap mmsys registers: %d\n", ret);
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  299  		return ret;
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  300  	}
2c758e301ed95a Enric Balletbo i Serra 2020-03-25  301  
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  302  	spin_lock_init(&mmsys->lock);
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  303  
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  304  	mmsys->rcdev.owner = THIS_MODULE;
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  305  	mmsys->rcdev.nr_resets = 32;
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  306  	mmsys->rcdev.ops = &mtk_mmsys_reset_ops;
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  307  	mmsys->rcdev.of_node = pdev->dev.of_node;
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  308  	ret = devm_reset_controller_register(&pdev->dev, &mmsys->rcdev);
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  309  	if (ret) {
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  310  		dev_err(&pdev->dev, "Couldn't register mmsys reset controller: %d\n", ret);
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  311  		return ret;
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  312  	}
f27ef2856343e2 Enric Balletbo i Serra 2021-09-30  313  
8cfc54a36d3e79 jason-jh.lin           2022-04-12  314  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
8cfc54a36d3e79 jason-jh.lin           2022-04-12 @315  	if (PTR_ERR(res)) {
8cfc54a36d3e79 jason-jh.lin           2022-04-12  316  		dev_err(dev, "Couldn't get mmsys resource\n");
8cfc54a36d3e79 jason-jh.lin           2022-04-12  317  		return -EINVAL;
8cfc54a36d3e79 jason-jh.lin           2022-04-12  318  	}
8cfc54a36d3e79 jason-jh.lin           2022-04-12  319  	mmsys->io_start = res->start;
8cfc54a36d3e79 jason-jh.lin           2022-04-12  320  
8cfc54a36d3e79 jason-jh.lin           2022-04-12  321  	match_data = of_device_get_match_data(dev);
8cfc54a36d3e79 jason-jh.lin           2022-04-12  322  	if (match_data->num_drv_data > 1) {
8cfc54a36d3e79 jason-jh.lin           2022-04-12  323  		/* This SoC has multiple mmsys channels */
8cfc54a36d3e79 jason-jh.lin           2022-04-12  324  		ret = mtk_mmsys_find_match_drvdata(mmsys, match_data);
8cfc54a36d3e79 jason-jh.lin           2022-04-12  325  		if (ret < 0) {
8cfc54a36d3e79 jason-jh.lin           2022-04-12  326  			dev_err(dev, "Couldn't get match driver data\n");
8cfc54a36d3e79 jason-jh.lin           2022-04-12  327  			return ret;
8cfc54a36d3e79 jason-jh.lin           2022-04-12  328  		}
8cfc54a36d3e79 jason-jh.lin           2022-04-12  329  		mmsys->data = match_data->drv_data[ret];
8cfc54a36d3e79 jason-jh.lin           2022-04-12  330  	} else {
8cfc54a36d3e79 jason-jh.lin           2022-04-12  331  		dev_dbg(dev, "Using single mmsys channel\n");
8cfc54a36d3e79 jason-jh.lin           2022-04-12  332  		mmsys->data = match_data->drv_data[0];
8cfc54a36d3e79 jason-jh.lin           2022-04-12  333  	}
8cfc54a36d3e79 jason-jh.lin           2022-04-12  334  
ce15e7faa2fc54 CK Hu                  2021-03-17  335  	platform_set_drvdata(pdev, mmsys);
13032709e23285 Matthias Brugger       2020-03-25  336  
ce15e7faa2fc54 CK Hu                  2021-03-17  337  	clks = platform_device_register_data(&pdev->dev, mmsys->data->clk_driver,
13032709e23285 Matthias Brugger       2020-03-25  338  					     PLATFORM_DEVID_AUTO, NULL, 0);
13032709e23285 Matthias Brugger       2020-03-25  339  	if (IS_ERR(clks))
13032709e23285 Matthias Brugger       2020-03-25  340  		return PTR_ERR(clks);
13032709e23285 Matthias Brugger       2020-03-25  341  
667c769246b01c Enric Balletbo i Serra 2020-03-25  342  	drm = platform_device_register_data(&pdev->dev, "mediatek-drm",
667c769246b01c Enric Balletbo i Serra 2020-03-25  343  					    PLATFORM_DEVID_AUTO, NULL, 0);
ff34e17cf9bce8 Wei Yongjun            2020-05-06  344  	if (IS_ERR(drm)) {
ff34e17cf9bce8 Wei Yongjun            2020-05-06  345  		platform_device_unregister(clks);
667c769246b01c Enric Balletbo i Serra 2020-03-25  346  		return PTR_ERR(drm);
ff34e17cf9bce8 Wei Yongjun            2020-05-06  347  	}
667c769246b01c Enric Balletbo i Serra 2020-03-25  348  
13032709e23285 Matthias Brugger       2020-03-25  349  	return 0;
13032709e23285 Matthias Brugger       2020-03-25  350  }
13032709e23285 Matthias Brugger       2020-03-25  351  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 70+ messages in thread

end of thread, other threads:[~2022-04-19  1:55 UTC | newest]

Thread overview: 70+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-12 10:31 [PATCH v18 00/10] Add Mediatek Soc DRM (vdosys0) support for mt8195 jason-jh.lin
2022-04-12 10:31 ` jason-jh.lin
2022-04-12 10:31 ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 01/10] dt-bindings: arm: mediatek: mmsys: add power and gce properties jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 02/10] dt-bindings: arm: mediatek: mmsys: add mt8195 SoC binding jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-14  3:11   ` Jason-JH Lin
2022-04-14  3:11     ` Jason-JH Lin
2022-04-14  3:11     ` Jason-JH Lin
2022-04-14  3:11     ` Jason-JH Lin
2022-04-18 17:03     ` Krzysztof Kozlowski
2022-04-18 17:03       ` Krzysztof Kozlowski
2022-04-18 17:03       ` Krzysztof Kozlowski
2022-04-19  1:53       ` Jason-JH Lin
2022-04-19  1:53         ` Jason-JH Lin
2022-04-19  1:53         ` Jason-JH Lin
2022-04-12 10:31 ` [PATCH v18 03/10] soc: mediatek: add mtk-mmsys support for mt8195 vdosys0 jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 04/10] soc: mediatek: add mtk-mutex " jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 05/10] drm/mediatek: add DSC support for mediatek-drm jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 06/10] drm/mediatek: add MERGE " jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 07/10] drm/mediatek: add mediatek-drm of vdosys0 support for mt8195 jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-14 15:31   ` kernel test robot
2022-04-14 15:31     ` kernel test robot
2022-04-14 15:31     ` kernel test robot
2022-04-14 15:31     ` kernel test robot
2022-04-15  6:27     ` Jason-JH Lin
2022-04-15  6:27       ` Jason-JH Lin
2022-04-15  6:27       ` Jason-JH Lin
2022-04-15  6:27       ` Jason-JH Lin
2022-04-15  6:27       ` Jason-JH Lin
2022-04-12 10:31 ` [PATCH v18 08/10] soc: mediatek: add DDP_DOMPONENT_DITHER0 enum for mt8195 vdosys0 jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-15  6:24   ` Rex-BC Chen
2022-04-15  6:24     ` Rex-BC Chen
2022-04-15  6:24     ` Rex-BC Chen
2022-04-15  8:13     ` Jason-JH Lin
2022-04-15  8:13       ` Jason-JH Lin
2022-04-15  8:13       ` Jason-JH Lin
2022-04-15  8:13       ` Jason-JH Lin
2022-04-12 10:31 ` [PATCH v18 09/10] drm/mediatek: add postfix 0 to DDP_COMPONENT_DITHER " jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31 ` [PATCH v18 10/10] soc: mediatek: remove DDP_DOMPONENT_DITHER enum jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-12 10:31   ` jason-jh.lin
2022-04-13  1:51 [PATCH v18 03/10] soc: mediatek: add mtk-mmsys support for mt8195 vdosys0 kernel test robot
2022-04-13  6:07 ` Dan Carpenter
2022-04-13  6:07 ` Dan Carpenter
2022-04-13  6:07 ` Dan Carpenter
2022-04-13  6:07 ` Dan Carpenter
2022-04-13  6:07 ` Dan Carpenter
2022-04-13  8:43 ` Jason-JH Lin
2022-04-13  8:43   ` Jason-JH Lin
2022-04-13  8:43   ` Jason-JH Lin
2022-04-13  8:43   ` Jason-JH Lin
2022-04-13  8:43   ` Jason-JH Lin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.