Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
4c5b1fb8
Commit
4c5b1fb8
authored
Jul 25, 2012
by
Florian Tobias Schandinat
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'for-next' of
git://linuxtv.org/pinchartl/fbdev
into fbdev-next
parents
a2c81bc1
a4aa25f6
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
293 additions
and
227 deletions
+293
-227
drivers/video/sh_mobile_lcdcfb.c
drivers/video/sh_mobile_lcdcfb.c
+107
-102
drivers/video/sh_mobile_lcdcfb.h
drivers/video/sh_mobile_lcdcfb.h
+3
-2
drivers/video/sh_mobile_meram.c
drivers/video/sh_mobile_meram.c
+132
-103
include/video/sh_mobile_meram.h
include/video/sh_mobile_meram.h
+51
-20
No files found.
drivers/video/sh_mobile_lcdcfb.c
View file @
4c5b1fb8
This diff is collapsed.
Click to expand it.
drivers/video/sh_mobile_lcdcfb.h
View file @
4c5b1fb8
...
...
@@ -47,6 +47,7 @@ struct sh_mobile_lcdc_entity {
/*
* struct sh_mobile_lcdc_chan - LCDC display channel
*
* @pan_y_offset: Panning linear offset in bytes (luma component)
* @base_addr_y: Frame buffer viewport base address (luma component)
* @base_addr_c: Frame buffer viewport base address (chroma component)
* @pitch: Frame buffer line pitch
...
...
@@ -59,7 +60,7 @@ struct sh_mobile_lcdc_chan {
unsigned
long
*
reg_offs
;
unsigned
long
ldmt1r_value
;
unsigned
long
enabled
;
/* ME and SE in LDCNT2R */
void
*
meram
;
void
*
cache
;
struct
mutex
open_lock
;
/* protects the use counter */
int
use_count
;
...
...
@@ -68,7 +69,7 @@ struct sh_mobile_lcdc_chan {
unsigned
long
fb_size
;
dma_addr_t
dma_handle
;
unsigned
long
pan_offset
;
unsigned
long
pan_
y_
offset
;
unsigned
long
frame_end
;
wait_queue_head_t
frame_end_wait
;
...
...
drivers/video/sh_mobile_meram.c
View file @
4c5b1fb8
This diff is collapsed.
Click to expand it.
include/video/sh_mobile_meram.h
View file @
4c5b1fb8
...
...
@@ -15,7 +15,6 @@ enum {
struct
sh_mobile_meram_priv
;
struct
sh_mobile_meram_ops
;
/*
* struct sh_mobile_meram_info - MERAM platform data
...
...
@@ -24,7 +23,6 @@ struct sh_mobile_meram_ops;
struct
sh_mobile_meram_info
{
int
addr_mode
;
u32
reserved_icbs
;
struct
sh_mobile_meram_ops
*
ops
;
struct
sh_mobile_meram_priv
*
priv
;
struct
platform_device
*
pdev
;
};
...
...
@@ -38,26 +36,59 @@ struct sh_mobile_meram_cfg {
struct
sh_mobile_meram_icb_cfg
icb
[
2
];
};
struct
module
;
struct
sh_mobile_meram_ops
{
struct
module
*
module
;
/* register usage of meram */
void
*
(
*
meram_register
)(
struct
sh_mobile_meram_info
*
meram_dev
,
const
struct
sh_mobile_meram_cfg
*
cfg
,
unsigned
int
xres
,
unsigned
int
yres
,
unsigned
int
pixelformat
,
unsigned
int
*
pitch
);
/* unregister usage of meram */
void
(
*
meram_unregister
)(
struct
sh_mobile_meram_info
*
meram_dev
,
void
*
data
);
/* update meram settings */
void
(
*
meram_update
)(
struct
sh_mobile_meram_info
*
meram_dev
,
void
*
data
,
#if defined(CONFIG_FB_SH_MOBILE_MERAM) || \
defined(CONFIG_FB_SH_MOBILE_MERAM_MODULE)
unsigned
long
sh_mobile_meram_alloc
(
struct
sh_mobile_meram_info
*
meram_dev
,
size_t
size
);
void
sh_mobile_meram_free
(
struct
sh_mobile_meram_info
*
meram_dev
,
unsigned
long
mem
,
size_t
size
);
void
*
sh_mobile_meram_cache_alloc
(
struct
sh_mobile_meram_info
*
dev
,
const
struct
sh_mobile_meram_cfg
*
cfg
,
unsigned
int
xres
,
unsigned
int
yres
,
unsigned
int
pixelformat
,
unsigned
int
*
pitch
);
void
sh_mobile_meram_cache_free
(
struct
sh_mobile_meram_info
*
dev
,
void
*
data
);
void
sh_mobile_meram_cache_update
(
struct
sh_mobile_meram_info
*
dev
,
void
*
data
,
unsigned
long
base_addr_y
,
unsigned
long
base_addr_c
,
unsigned
long
*
icb_addr_y
,
unsigned
long
*
icb_addr_c
);
#else
static
inline
unsigned
long
sh_mobile_meram_alloc
(
struct
sh_mobile_meram_info
*
meram_dev
,
size_t
size
)
{
return
0
;
}
static
inline
void
sh_mobile_meram_free
(
struct
sh_mobile_meram_info
*
meram_dev
,
unsigned
long
mem
,
size_t
size
)
{
}
static
inline
void
*
sh_mobile_meram_cache_alloc
(
struct
sh_mobile_meram_info
*
dev
,
const
struct
sh_mobile_meram_cfg
*
cfg
,
unsigned
int
xres
,
unsigned
int
yres
,
unsigned
int
pixelformat
,
unsigned
int
*
pitch
)
{
return
ERR_PTR
(
-
ENODEV
);
}
static
inline
void
sh_mobile_meram_cache_free
(
struct
sh_mobile_meram_info
*
dev
,
void
*
data
)
{
}
static
inline
void
sh_mobile_meram_cache_update
(
struct
sh_mobile_meram_info
*
dev
,
void
*
data
,
unsigned
long
base_addr_y
,
unsigned
long
base_addr_c
,
unsigned
long
*
icb_addr_y
,
unsigned
long
*
icb_addr_c
);
};
unsigned
long
*
icb_addr_c
)
{
}
#endif
#endif
/* __VIDEO_SH_MOBILE_MERAM_H__ */
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