Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
OpenBMC Firmware
talos-obmc-linux
Commits
dd2da6e3
Commit
dd2da6e3
authored
11 years ago
by
Rob Clark
Browse files
Options
Download
Email Patches
Plain Diff
drm/msm: split out msm_kms.h
Signed-off-by:
Rob Clark
<
robdclark@gmail.com
>
parent
10a02eb6
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
60 additions
and
30 deletions
+60
-30
drivers/gpu/drm/msm/hdmi/hdmi_connector.c
drivers/gpu/drm/msm/hdmi/hdmi_connector.c
+1
-0
drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h
drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h
+1
-0
drivers/gpu/drm/msm/msm_drv.c
drivers/gpu/drm/msm/msm_drv.c
+1
-0
drivers/gpu/drm/msm/msm_drv.h
drivers/gpu/drm/msm/msm_drv.h
+0
-30
drivers/gpu/drm/msm/msm_fb.c
drivers/gpu/drm/msm/msm_fb.c
+1
-0
drivers/gpu/drm/msm/msm_kms.h
drivers/gpu/drm/msm/msm_kms.h
+56
-0
No files found.
drivers/gpu/drm/msm/hdmi/hdmi_connector.c
View file @
dd2da6e3
...
...
@@ -17,6 +17,7 @@
#include <linux/gpio.h>
#include "msm_kms.h"
#include "hdmi.h"
struct
hdmi_connector
{
...
...
This diff is collapsed.
Click to expand it.
drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h
View file @
dd2da6e3
...
...
@@ -19,6 +19,7 @@
#define __MDP4_KMS_H__
#include "msm_drv.h"
#include "msm_kms.h"
#include "mdp/mdp_kms.h"
#include "mdp4.xml.h"
...
...
This diff is collapsed.
Click to expand it.
drivers/gpu/drm/msm/msm_drv.c
View file @
dd2da6e3
...
...
@@ -17,6 +17,7 @@
#include "msm_drv.h"
#include "msm_gpu.h"
#include "msm_kms.h"
static
void
msm_fb_output_poll_changed
(
struct
drm_device
*
dev
)
{
...
...
This diff is collapsed.
Click to expand it.
drivers/gpu/drm/msm/msm_drv.h
View file @
dd2da6e3
...
...
@@ -134,36 +134,6 @@ void __msm_fence_worker(struct work_struct *work);
(_cb)->func = _func; \
} while (0)
/* As there are different display controller blocks depending on the
* snapdragon version, the kms support is split out and the appropriate
* implementation is loaded at runtime. The kms module is responsible
* for constructing the appropriate planes/crtcs/encoders/connectors.
*/
struct
msm_kms_funcs
{
/* hw initialization: */
int
(
*
hw_init
)(
struct
msm_kms
*
kms
);
/* irq handling: */
void
(
*
irq_preinstall
)(
struct
msm_kms
*
kms
);
int
(
*
irq_postinstall
)(
struct
msm_kms
*
kms
);
void
(
*
irq_uninstall
)(
struct
msm_kms
*
kms
);
irqreturn_t
(
*
irq
)(
struct
msm_kms
*
kms
);
int
(
*
enable_vblank
)(
struct
msm_kms
*
kms
,
struct
drm_crtc
*
crtc
);
void
(
*
disable_vblank
)(
struct
msm_kms
*
kms
,
struct
drm_crtc
*
crtc
);
/* misc: */
const
struct
msm_format
*
(
*
get_format
)(
struct
msm_kms
*
kms
,
uint32_t
format
);
long
(
*
round_pixclk
)(
struct
msm_kms
*
kms
,
unsigned
long
rate
,
struct
drm_encoder
*
encoder
);
/* cleanup: */
void
(
*
preclose
)(
struct
msm_kms
*
kms
,
struct
drm_file
*
file
);
void
(
*
destroy
)(
struct
msm_kms
*
kms
);
};
struct
msm_kms
{
const
struct
msm_kms_funcs
*
funcs
;
};
struct
msm_kms
*
mdp4_kms_init
(
struct
drm_device
*
dev
);
int
msm_register_mmu
(
struct
drm_device
*
dev
,
struct
msm_mmu
*
mmu
);
int
msm_wait_fence_interruptable
(
struct
drm_device
*
dev
,
uint32_t
fence
,
...
...
This diff is collapsed.
Click to expand it.
drivers/gpu/drm/msm/msm_fb.c
View file @
dd2da6e3
...
...
@@ -16,6 +16,7 @@
*/
#include "msm_drv.h"
#include "msm_kms.h"
#include "drm_crtc.h"
#include "drm_crtc_helper.h"
...
...
This diff is collapsed.
Click to expand it.
drivers/gpu/drm/msm/msm_kms.h
0 → 100644
View file @
dd2da6e3
/*
* Copyright (C) 2013 Red Hat
* Author: Rob Clark <robdclark@gmail.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __MSM_KMS_H__
#define __MSM_KMS_H__
#include <linux/clk.h>
#include <linux/regulator/consumer.h>
#include "msm_drv.h"
/* As there are different display controller blocks depending on the
* snapdragon version, the kms support is split out and the appropriate
* implementation is loaded at runtime. The kms module is responsible
* for constructing the appropriate planes/crtcs/encoders/connectors.
*/
struct
msm_kms_funcs
{
/* hw initialization: */
int
(
*
hw_init
)(
struct
msm_kms
*
kms
);
/* irq handling: */
void
(
*
irq_preinstall
)(
struct
msm_kms
*
kms
);
int
(
*
irq_postinstall
)(
struct
msm_kms
*
kms
);
void
(
*
irq_uninstall
)(
struct
msm_kms
*
kms
);
irqreturn_t
(
*
irq
)(
struct
msm_kms
*
kms
);
int
(
*
enable_vblank
)(
struct
msm_kms
*
kms
,
struct
drm_crtc
*
crtc
);
void
(
*
disable_vblank
)(
struct
msm_kms
*
kms
,
struct
drm_crtc
*
crtc
);
/* misc: */
const
struct
msm_format
*
(
*
get_format
)(
struct
msm_kms
*
kms
,
uint32_t
format
);
long
(
*
round_pixclk
)(
struct
msm_kms
*
kms
,
unsigned
long
rate
,
struct
drm_encoder
*
encoder
);
/* cleanup: */
void
(
*
preclose
)(
struct
msm_kms
*
kms
,
struct
drm_file
*
file
);
void
(
*
destroy
)(
struct
msm_kms
*
kms
);
};
struct
msm_kms
{
const
struct
msm_kms_funcs
*
funcs
;
};
struct
msm_kms
*
mdp4_kms_init
(
struct
drm_device
*
dev
);
#endif
/* __MSM_KMS_H__ */
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment