Home
last modified time | relevance | path

Searched full:dcss (Results 1 – 24 of 24) sorted by relevance

/linux/drivers/gpu/drm/imx/dcss/
H A Ddcss-dev.c16 #include "dcss-dev.h"
17 #include "dcss-kms.h"
19 static void dcss_clocks_enable(struct dcss_dev *dcss) in dcss_clocks_enable() argument
21 clk_prepare_enable(dcss->axi_clk); in dcss_clocks_enable()
22 clk_prepare_enable(dcss->apb_clk); in dcss_clocks_enable()
23 clk_prepare_enable(dcss->rtrm_clk); in dcss_clocks_enable()
24 clk_prepare_enable(dcss->dtrc_clk); in dcss_clocks_enable()
25 clk_prepare_enable(dcss->pix_clk); in dcss_clocks_enable()
28 static void dcss_clocks_disable(struct dcss_dev *dcss) in dcss_clocks_disable() argument
30 clk_disable_unprepare(dcss->pix_clk); in dcss_clocks_disable()
[all …]
H A DMakefile1 imx-dcss-objs := dcss-drv.o dcss-dev.o dcss-blkctl.o dcss-ctxld.o dcss-dtg.o \
2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
3 dcss-plane.o
5 obj-$(CONFIG_DRM_IMX_DCSS) += imx-dcss.o
H A Ddcss-drv.c13 #include "dcss-dev.h"
14 #include "dcss-kms.h"
17 struct dcss_dev *dcss; member
25 return mdrv ? mdrv->dcss : NULL; in dcss_drv_dev_to_dcss()
58 mdrv->dcss = dcss_dev_create(dev, hdmi_output); in dcss_drv_platform_probe()
59 if (IS_ERR(mdrv->dcss)) in dcss_drv_platform_probe()
60 return PTR_ERR(mdrv->dcss); in dcss_drv_platform_probe()
64 mdrv->kms = dcss_kms_attach(mdrv->dcss); in dcss_drv_platform_probe()
74 dcss_dev_destroy(mdrv->dcss); in dcss_drv_platform_probe()
84 dcss_dev_destroy(mdrv->dcss); in dcss_drv_platform_remove()
[all …]
H A Ddcss-blkctl.c10 #include "dcss-dev.h"
25 struct dcss_dev *dcss; member
31 if (blkctl->dcss->hdmi_output) in dcss_blkctl_cfg()
41 int dcss_blkctl_init(struct dcss_dev *dcss, unsigned long blkctl_base) in dcss_blkctl_init() argument
45 blkctl = devm_kzalloc(dcss->dev, sizeof(*blkctl), GFP_KERNEL); in dcss_blkctl_init()
49 blkctl->base_reg = devm_ioremap(dcss->dev, blkctl_base, SZ_4K); in dcss_blkctl_init()
51 dev_err(dcss->dev, "unable to remap BLK CTRL base\n"); in dcss_blkctl_init()
55 dcss->blkctl = blkctl; in dcss_blkctl_init()
56 blkctl->dcss = dcss; in dcss_blkctl_init()
H A Ddcss-plane.c14 #include "dcss-dev.h"
15 #include "dcss-kms.h"
147 struct dcss_dev *dcss = plane->dev->dev_private; in dcss_plane_atomic_check() local
175 dcss_scaler_get_min_max_ratios(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_check()
218 struct dcss_dev *dcss = plane->dev->dev_private; in dcss_plane_atomic_set_base() local
244 dcss_dpr_addr_set(dcss->dpr, dcss_plane->ch_num, p1_ba, p2_ba, in dcss_plane_atomic_set_base()
276 struct dcss_dev *dcss = plane->dev->dev_private; in dcss_plane_atomic_update() local
312 dcss_dpr_format_set(dcss->dpr, dcss_plane->ch_num, in dcss_plane_atomic_update()
316 dcss_dpr_set_res(dcss->dpr, dcss_plane->ch_num, src_w, src_h); in dcss_plane_atomic_update()
317 dcss_dpr_set_rotation(dcss->dpr, dcss_plane->ch_num, in dcss_plane_atomic_update()
[all …]
H A Ddcss-ctxld.c12 #include "dcss-dev.h"
91 struct dcss_dev *dcss = dcss_drv_dev_to_dcss(ctxld->dev); in dcss_ctxld_irq_handler() local
100 if (dcss && dcss->disable_callback) in dcss_ctxld_irq_handler()
101 dcss->disable_callback(dcss); in dcss_ctxld_irq_handler()
200 int dcss_ctxld_init(struct dcss_dev *dcss, unsigned long ctxld_base) in dcss_ctxld_init() argument
205 ctxld = devm_kzalloc(dcss->dev, sizeof(*ctxld), GFP_KERNEL); in dcss_ctxld_init()
209 dcss->ctxld = ctxld; in dcss_ctxld_init()
210 ctxld->dev = dcss->dev; in dcss_ctxld_init()
216 dev_err(dcss->dev, "ctxld: cannot allocate context memory.\n"); in dcss_ctxld_init()
220 ctxld->ctxld_reg = devm_ioremap(dcss->dev, ctxld_base, SZ_4K); in dcss_ctxld_init()
[all …]
H A Ddcss-dev.h98 void dcss_dev_destroy(struct dcss_dev *dcss);
99 void dcss_enable_dtg_and_ss(struct dcss_dev *dcss);
100 void dcss_disable_dtg_and_ss(struct dcss_dev *dcss);
105 int dcss_blkctl_init(struct dcss_dev *dcss, unsigned long blkctl_base);
109 int dcss_ctxld_init(struct dcss_dev *dcss, unsigned long ctxld_base);
125 int dcss_dpr_init(struct dcss_dev *dcss, unsigned long dpr_base);
137 int dcss_dtg_init(struct dcss_dev *dcss, unsigned long dtg_base);
156 int dcss_ss_init(struct dcss_dev *dcss, unsigned long subsam_base);
165 int dcss_scaler_init(struct dcss_dev *dcss, unsigned long scaler_base);
H A Ddcss-ss.c9 #include "dcss-dev.h"
82 int dcss_ss_init(struct dcss_dev *dcss, unsigned long ss_base) in dcss_ss_init() argument
86 ss = devm_kzalloc(dcss->dev, sizeof(*ss), GFP_KERNEL); in dcss_ss_init()
90 dcss->ss = ss; in dcss_ss_init()
91 ss->dev = dcss->dev; in dcss_ss_init()
92 ss->ctxld = dcss->ctxld; in dcss_ss_init()
H A DKconfig2 tristate "i.MX8MQ DCSS"
13 Display Controller Subsystem. This option enables DCSS support.
H A Ddcss-dpr.c9 #include "dcss-dev.h"
154 int dcss_dpr_init(struct dcss_dev *dcss, unsigned long dpr_base) in dcss_dpr_init() argument
158 dpr = devm_kzalloc(dcss->dev, sizeof(*dpr), GFP_KERNEL); in dcss_dpr_init()
162 dcss->dpr = dpr; in dcss_dpr_init()
163 dpr->dev = dcss->dev; in dcss_dpr_init()
164 dpr->ctxld = dcss->ctxld; in dcss_dpr_init()
H A Ddcss-kms.h35 struct dcss_kms_dev *dcss_kms_attach(struct dcss_dev *dcss);
/linux/Documentation/arch/s390/
H A Dmonreader.rst23 IUCV `*MONITOR` statement in its user entry. If the monitor DCSS to be used is
24 restricted (likely), you also need the NAMESAVE <DCSS NAME> statement.
28 There are two options for being able to load the monitor DCSS (examples assume
29 that the monitor DCSS begins at 144 MB and ends at 152 MB). You can query the
30 location of the monitor DCSS with the Class E privileged CP command Q NSS MAP
40 guest virtual storage around the address range of the DCSS.
51 Your guest virtual storage has to end below the starting address of the DCSS
53 value greater than the ending address of the DCSS.
68 to specify the name of the monitor DCSS. If the module is compiled into the
69 kernel, the kernel parameter "monreader.mondcss=<DCSS NAME>" can be specified
[all …]
/linux/Documentation/devicetree/bindings/display/imx/
H A Dnxp,imx8mq-dcss.yaml5 $id: http://devicetree.org/schemas/display/imx/nxp,imx8mq-dcss.yaml#
8 title: iMX8MQ Display Controller Subsystem (DCSS)
15 The DCSS (display controller sub system) is used to source up to three
17 2.2) or MIPI-DSI. The DCSS is intended to support up to 4kp60 displays. HDR10
23 const: nxp,imx8mq-dcss
27 - description: DCSS base address and size, up to IRQ steer start
28 - description: DCSS BLKCTL base address and size
86 dcss: display-controller@32e00000 {
87 compatible = "nxp,imx8mq-dcss";
/linux/drivers/gpu/drm/imx/
H A DMakefile3 obj-$(CONFIG_DRM_IMX_DCSS) += dcss/
H A DKconfig3 source "drivers/gpu/drm/imx/dcss/Kconfig"
/linux/drivers/s390/char/
H A Dmonreader.c71 /* DCSS name in EBCDIC, 8 bytes padded with blanks */
85 * Create the 8 bytes EBCDIC DCSS segment name from
481 pr_err("The specified *MONITOR DCSS %s does not have the " in mon_init()
525 MODULE_PARM_DESC(mondcss, "Name of DCSS segment to be used for *MONITOR "
/linux/arch/s390/include/asm/
H A Dextmem.h12 * DCSS segment is defined as a contiguous range of pages using DEFSEG command.
/linux/drivers/s390/block/
H A DKconfig12 Support for dcss block device
/linux/Documentation/devicetree/bindings/display/bridge/
H A Dnwl-dsi.yaml103 description: sub-node describing the input from DCSS
/linux/Documentation/filesystems/
H A Ddax.rst210 - dcssblk: s390 dcss block device driver
/linux/arch/s390/boot/
H A Dstartup.c342 /* maximum address for which linear mapping could be created (DCSS, memory) */ in setup_kernel_memory_layout()
/linux/drivers/video/fbdev/
H A Dffb.c227 u32 dcss; member
/linux/drivers/gpu/drm/bridge/
H A Dnwl-dsi.c1110 (use_dcss) ? "DCSS" : "LCDIF"); in nwl_dsi_select_input()
/linux/
H A DMAINTAINERS16861 NXP i.MX 8MQ DCSS DRIVER
16867 F: Documentation/devicetree/bindings/display/imx/nxp,imx8mq-dcss.yaml
16868 F: drivers/gpu/drm/imx/dcss/