.. | .. |
---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
---|
1 | 2 | /* |
---|
2 | 3 | * |
---|
3 | 4 | * (C) COPYRIGHT 2012-2013 ARM Limited. All rights reserved. |
---|
4 | | - * |
---|
5 | 5 | * |
---|
6 | 6 | * Parts of this file were based on sources as follows: |
---|
7 | 7 | * |
---|
8 | 8 | * Copyright (c) 2006-2008 Intel Corporation |
---|
9 | 9 | * Copyright (c) 2007 Dave Airlie <airlied@linux.ie> |
---|
10 | 10 | * Copyright (C) 2011 Texas Instruments |
---|
11 | | - * |
---|
12 | | - * This program is free software and is provided to you under the terms of the |
---|
13 | | - * GNU General Public License version 2 as published by the Free Software |
---|
14 | | - * Foundation, and any use by you of this program is subject to the terms of |
---|
15 | | - * such GNU licence. |
---|
16 | | - * |
---|
17 | 11 | */ |
---|
18 | 12 | |
---|
19 | 13 | #ifndef _PL111_DRM_H_ |
---|
20 | 14 | #define _PL111_DRM_H_ |
---|
21 | 15 | |
---|
22 | | -#include <drm/drm_gem.h> |
---|
23 | | -#include <drm/drm_simple_kms_helper.h> |
---|
24 | | -#include <drm/drm_connector.h> |
---|
25 | | -#include <drm/drm_encoder.h> |
---|
26 | | -#include <drm/drm_panel.h> |
---|
27 | | -#include <drm/drm_bridge.h> |
---|
28 | 16 | #include <linux/clk-provider.h> |
---|
29 | 17 | #include <linux/interrupt.h> |
---|
| 18 | + |
---|
| 19 | +#include <drm/drm_bridge.h> |
---|
| 20 | +#include <drm/drm_connector.h> |
---|
| 21 | +#include <drm/drm_encoder.h> |
---|
| 22 | +#include <drm/drm_gem.h> |
---|
| 23 | +#include <drm/drm_panel.h> |
---|
| 24 | +#include <drm/drm_simple_kms_helper.h> |
---|
| 25 | + |
---|
| 26 | +/* |
---|
| 27 | + * CLCD Controller Internal Register addresses |
---|
| 28 | + */ |
---|
| 29 | +#define CLCD_TIM0 0x00000000 |
---|
| 30 | +#define CLCD_TIM1 0x00000004 |
---|
| 31 | +#define CLCD_TIM2 0x00000008 |
---|
| 32 | +#define CLCD_TIM3 0x0000000c |
---|
| 33 | +#define CLCD_UBAS 0x00000010 |
---|
| 34 | +#define CLCD_LBAS 0x00000014 |
---|
| 35 | + |
---|
| 36 | +#define CLCD_PL110_IENB 0x00000018 |
---|
| 37 | +#define CLCD_PL110_CNTL 0x0000001c |
---|
| 38 | +#define CLCD_PL110_STAT 0x00000020 |
---|
| 39 | +#define CLCD_PL110_INTR 0x00000024 |
---|
| 40 | +#define CLCD_PL110_UCUR 0x00000028 |
---|
| 41 | +#define CLCD_PL110_LCUR 0x0000002C |
---|
| 42 | + |
---|
| 43 | +#define CLCD_PL111_CNTL 0x00000018 |
---|
| 44 | +#define CLCD_PL111_IENB 0x0000001c |
---|
| 45 | +#define CLCD_PL111_RIS 0x00000020 |
---|
| 46 | +#define CLCD_PL111_MIS 0x00000024 |
---|
| 47 | +#define CLCD_PL111_ICR 0x00000028 |
---|
| 48 | +#define CLCD_PL111_UCUR 0x0000002c |
---|
| 49 | +#define CLCD_PL111_LCUR 0x00000030 |
---|
| 50 | + |
---|
| 51 | +#define CLCD_PALL 0x00000200 |
---|
| 52 | +#define CLCD_PALETTE 0x00000200 |
---|
| 53 | + |
---|
| 54 | +#define TIM2_PCD_LO_MASK GENMASK(4, 0) |
---|
| 55 | +#define TIM2_PCD_LO_BITS 5 |
---|
| 56 | +#define TIM2_CLKSEL (1 << 5) |
---|
| 57 | +#define TIM2_ACB_MASK GENMASK(10, 6) |
---|
| 58 | +#define TIM2_IVS (1 << 11) |
---|
| 59 | +#define TIM2_IHS (1 << 12) |
---|
| 60 | +#define TIM2_IPC (1 << 13) |
---|
| 61 | +#define TIM2_IOE (1 << 14) |
---|
| 62 | +#define TIM2_BCD (1 << 26) |
---|
| 63 | +#define TIM2_PCD_HI_MASK GENMASK(31, 27) |
---|
| 64 | +#define TIM2_PCD_HI_BITS 5 |
---|
| 65 | +#define TIM2_PCD_HI_SHIFT 27 |
---|
| 66 | + |
---|
| 67 | +#define CNTL_LCDEN (1 << 0) |
---|
| 68 | +#define CNTL_LCDBPP1 (0 << 1) |
---|
| 69 | +#define CNTL_LCDBPP2 (1 << 1) |
---|
| 70 | +#define CNTL_LCDBPP4 (2 << 1) |
---|
| 71 | +#define CNTL_LCDBPP8 (3 << 1) |
---|
| 72 | +#define CNTL_LCDBPP16 (4 << 1) |
---|
| 73 | +#define CNTL_LCDBPP16_565 (6 << 1) |
---|
| 74 | +#define CNTL_LCDBPP16_444 (7 << 1) |
---|
| 75 | +#define CNTL_LCDBPP24 (5 << 1) |
---|
| 76 | +#define CNTL_LCDBW (1 << 4) |
---|
| 77 | +#define CNTL_LCDTFT (1 << 5) |
---|
| 78 | +#define CNTL_LCDMONO8 (1 << 6) |
---|
| 79 | +#define CNTL_LCDDUAL (1 << 7) |
---|
| 80 | +#define CNTL_BGR (1 << 8) |
---|
| 81 | +#define CNTL_BEBO (1 << 9) |
---|
| 82 | +#define CNTL_BEPO (1 << 10) |
---|
| 83 | +#define CNTL_LCDPWR (1 << 11) |
---|
| 84 | +#define CNTL_LCDVCOMP(x) ((x) << 12) |
---|
| 85 | +#define CNTL_LDMAFIFOTIME (1 << 15) |
---|
| 86 | +#define CNTL_WATERMARK (1 << 16) |
---|
| 87 | + |
---|
| 88 | +/* ST Microelectronics variant bits */ |
---|
| 89 | +#define CNTL_ST_1XBPP_444 0x0 |
---|
| 90 | +#define CNTL_ST_1XBPP_5551 (1 << 17) |
---|
| 91 | +#define CNTL_ST_1XBPP_565 (1 << 18) |
---|
| 92 | +#define CNTL_ST_CDWID_12 0x0 |
---|
| 93 | +#define CNTL_ST_CDWID_16 (1 << 19) |
---|
| 94 | +#define CNTL_ST_CDWID_18 (1 << 20) |
---|
| 95 | +#define CNTL_ST_CDWID_24 ((1 << 19) | (1 << 20)) |
---|
| 96 | +#define CNTL_ST_CEAEN (1 << 21) |
---|
| 97 | +#define CNTL_ST_LCDBPP24_PACKED (6 << 1) |
---|
30 | 98 | |
---|
31 | 99 | #define CLCD_IRQ_NEXTBASE_UPDATE BIT(2) |
---|
32 | 100 | |
---|
.. | .. |
---|
89 | 157 | |
---|
90 | 158 | int pl111_display_init(struct drm_device *dev); |
---|
91 | 159 | irqreturn_t pl111_irq(int irq, void *data); |
---|
92 | | -int pl111_debugfs_init(struct drm_minor *minor); |
---|
| 160 | +void pl111_debugfs_init(struct drm_minor *minor); |
---|
93 | 161 | |
---|
94 | 162 | #endif /* _PL111_DRM_H_ */ |
---|