Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
029af8c7
Commit
029af8c7
authored
Dec 14, 2008
by
Ingo Molnar
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'linus' into perfcounters/core
parents
75f224cf
5279585f
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
794 additions
and
737 deletions
+794
-737
arch/mips/Kconfig.debug
arch/mips/Kconfig.debug
+1
-1
arch/mips/configs/ip32_defconfig
arch/mips/configs/ip32_defconfig
+624
-436
arch/mips/include/asm/asmmacro.h
arch/mips/include/asm/asmmacro.h
+10
-0
arch/mips/mm/dma-default.c
arch/mips/mm/dma-default.c
+3
-0
arch/powerpc/boot/Makefile
arch/powerpc/boot/Makefile
+1
-0
drivers/cdrom/cdrom.c
drivers/cdrom/cdrom.c
+10
-6
drivers/char/cp437.uni
drivers/char/cp437.uni
+6
-6
drivers/char/vt.c
drivers/char/vt.c
+1
-1
drivers/i2c/busses/i2c-highlander.c
drivers/i2c/busses/i2c-highlander.c
+2
-2
drivers/i2c/busses/i2c-pmcmsp.c
drivers/i2c/busses/i2c-pmcmsp.c
+1
-1
drivers/scsi/device_handler/scsi_dh_hp_sw.c
drivers/scsi/device_handler/scsi_dh_hp_sw.c
+8
-4
drivers/video/aty/radeon_accel.c
drivers/video/aty/radeon_accel.c
+86
-209
drivers/video/aty/radeon_backlight.c
drivers/video/aty/radeon_backlight.c
+1
-1
drivers/video/aty/radeon_base.c
drivers/video/aty/radeon_base.c
+15
-31
drivers/video/aty/radeon_pm.c
drivers/video/aty/radeon_pm.c
+3
-3
drivers/video/aty/radeonfb.h
drivers/video/aty/radeonfb.h
+17
-23
include/video/radeon.h
include/video/radeon.h
+5
-13
No files found.
arch/mips/Kconfig.debug
View file @
029af8c7
...
...
@@ -48,7 +48,7 @@ config RUNTIME_DEBUG
help
If you say Y here, some debugging macros will do run-time checking.
If you say N here, those macros will mostly turn to no-ops. See
include/asm-mips/debug.h for debu
ging macros.
arch/mips/include/asm/debug.h for debug
ging macros.
If unsure, say N.
endmenu
arch/mips/configs/ip32_defconfig
View file @
029af8c7
This diff is collapsed.
Click to expand it.
arch/mips/include/asm/asmmacro.h
View file @
029af8c7
...
...
@@ -35,6 +35,16 @@
mtc0
\
reg
,
CP0_TCSTATUS
_ehb
.
endm
#elif defined(CONFIG_CPU_MIPSR2)
.
macro
local_irq_enable
reg
=
t0
ei
irq_enable_hazard
.
endm
.
macro
local_irq_disable
reg
=
t0
di
irq_disable_hazard
.
endm
#else
.
macro
local_irq_enable
reg
=
t0
mfc0
\
reg
,
CP0_STATUS
...
...
arch/mips/mm/dma-default.c
View file @
029af8c7
...
...
@@ -111,6 +111,7 @@ EXPORT_SYMBOL(dma_alloc_coherent);
void
dma_free_noncoherent
(
struct
device
*
dev
,
size_t
size
,
void
*
vaddr
,
dma_addr_t
dma_handle
)
{
plat_unmap_dma_mem
(
dma_handle
);
free_pages
((
unsigned
long
)
vaddr
,
get_order
(
size
));
}
...
...
@@ -121,6 +122,8 @@ void dma_free_coherent(struct device *dev, size_t size, void *vaddr,
{
unsigned
long
addr
=
(
unsigned
long
)
vaddr
;
plat_unmap_dma_mem
(
dma_handle
);
if
(
!
plat_device_is_coherent
(
dev
))
addr
=
CAC_ADDR
(
addr
);
...
...
arch/powerpc/boot/Makefile
View file @
029af8c7
...
...
@@ -41,6 +41,7 @@ $(obj)/4xx.o: BOOTCFLAGS += -mcpu=405
$(obj)/ebony.o
:
BOOTCFLAGS += -mcpu=405
$(obj)/cuboot-taishan.o
:
BOOTCFLAGS += -mcpu=405
$(obj)/cuboot-katmai.o
:
BOOTCFLAGS += -mcpu=405
$(obj)/cuboot-acadia.o
:
BOOTCFLAGS += -mcpu=405
$(obj)/treeboot-walnut.o
:
BOOTCFLAGS += -mcpu=405
$(obj)/virtex405-head.o
:
BOOTAFLAGS += -mcpu=405
...
...
drivers/cdrom/cdrom.c
View file @
029af8c7
...
...
@@ -2081,10 +2081,6 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf,
if
(
!
q
)
return
-
ENXIO
;
rq
=
blk_get_request
(
q
,
READ
,
GFP_KERNEL
);
if
(
!
rq
)
return
-
ENOMEM
;
cdi
->
last_sense
=
0
;
while
(
nframes
)
{
...
...
@@ -2096,9 +2092,17 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf,
len
=
nr
*
CD_FRAMESIZE_RAW
;
rq
=
blk_get_request
(
q
,
READ
,
GFP_KERNEL
);
if
(
!
rq
)
{
ret
=
-
ENOMEM
;
break
;
}
ret
=
blk_rq_map_user
(
q
,
rq
,
NULL
,
ubuf
,
len
,
GFP_KERNEL
);
if
(
ret
)
if
(
ret
)
{
blk_put_request
(
rq
);
break
;
}
rq
->
cmd
[
0
]
=
GPCMD_READ_CD
;
rq
->
cmd
[
1
]
=
1
<<
2
;
...
...
@@ -2124,6 +2128,7 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf,
if
(
blk_rq_unmap_user
(
bio
))
ret
=
-
EFAULT
;
blk_put_request
(
rq
);
if
(
ret
)
break
;
...
...
@@ -2133,7 +2138,6 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf,
ubuf
+=
len
;
}
blk_put_request
(
rq
);
return
ret
;
}
...
...
drivers/char/cp437.uni
View file @
029af8c7
...
...
@@ -27,7 +27,7 @@
0x0c U+2640
0x0d U+266a
0x0e U+266b
0x0f U+263c
0x0f U+263c
U+00a4
0x10 U+25b6 U+25ba
0x11 U+25c0 U+25c4
0x12 U+2195
...
...
@@ -55,7 +55,7 @@
0x24 U+0024
0x25 U+0025
0x26 U+0026
0x27 U+0027
0x27 U+0027
U+00b4
0x28 U+0028
0x29 U+0029
0x2a U+002a
...
...
@@ -84,7 +84,7 @@
0x41 U+0041 U+00c0 U+00c1 U+00c2 U+00c3
0x42 U+0042
0x43 U+0043 U+00a9
0x44 U+0044
0x44 U+0044
U+00d0
0x45 U+0045 U+00c8 U+00ca U+00cb
0x46 U+0046
0x47 U+0047
...
...
@@ -140,7 +140,7 @@
0x79 U+0079 U+00fd
0x7a U+007a
0x7b U+007b
0x7c U+007c U+00a
5
0x7c U+007c U+00a
6
0x7d U+007d
0x7e U+007e
#
...
...
@@ -263,10 +263,10 @@
0xe8 U+03a6 U+00d8
0xe9 U+0398
0xea U+03a9 U+2126
0xeb U+03b4
0xeb U+03b4
U+00f0
0xec U+221e
0xed U+03c6 U+00f8
0xee U+03b5
0xee U+03b5
U+2208
0xef U+2229
0xf0 U+2261
0xf1 U+00b1
...
...
drivers/char/vt.c
View file @
029af8c7
...
...
@@ -2274,7 +2274,7 @@ rescan_last_byte:
continue
;
/* nothing to display */
}
/* Glyph not found */
if
((
!
(
vc
->
vc_utf
&&
!
vc
->
vc_disp_ctrl
)
||
c
<
128
)
&&
!
(
c
&
~
charmask
))
{
if
((
!
(
vc
->
vc_utf
&&
!
vc
->
vc_disp_ctrl
)
&&
c
<
128
)
&&
!
(
c
&
~
charmask
))
{
/* In legacy mode use the glyph we get by a 1:1 mapping.
This would make absolutely no sense with Unicode in mind,
but do this for ASCII characters since a font may lack
...
...
drivers/i2c/busses/i2c-highlander.c
View file @
029af8c7
...
...
@@ -92,7 +92,7 @@ static void highlander_i2c_setup(struct highlander_i2c_dev *dev)
static
void
smbus_write_data
(
u8
*
src
,
u16
*
dst
,
int
len
)
{
for
(;
len
>
1
;
len
-=
2
)
{
*
dst
++
=
be16_to_cpup
((
u
16
*
)
src
);
*
dst
++
=
be16_to_cpup
((
__be
16
*
)
src
);
src
+=
2
;
}
...
...
@@ -103,7 +103,7 @@ static void smbus_write_data(u8 *src, u16 *dst, int len)
static
void
smbus_read_data
(
u16
*
src
,
u8
*
dst
,
int
len
)
{
for
(;
len
>
1
;
len
-=
2
)
{
*
(
u
16
*
)
dst
=
cpu_to_be16p
(
src
++
);
*
(
__be
16
*
)
dst
=
cpu_to_be16p
(
src
++
);
dst
+=
2
;
}
...
...
drivers/i2c/busses/i2c-pmcmsp.c
View file @
029af8c7
...
...
@@ -486,7 +486,7 @@ static enum pmcmsptwi_xfer_result pmcmsptwi_xfer_cmd(
if
(
cmd
->
type
==
MSP_TWI_CMD_WRITE
||
cmd
->
type
==
MSP_TWI_CMD_WRITE_READ
)
{
__be64
tmp
=
cpu_to_be64p
((
u
64
*
)
cmd
->
write_data
);
u64
tmp
=
be64_to_cpup
((
__be
64
*
)
cmd
->
write_data
);
tmp
>>=
(
MSP_MAX_BYTES_PER_RW
-
cmd
->
write_len
)
*
8
;
dev_dbg
(
&
pmcmsptwi_adapter
.
dev
,
"Writing 0x%016llx
\n
"
,
tmp
);
pmcmsptwi_writel
(
tmp
&
0x00000000ffffffffLL
,
...
...
drivers/scsi/device_handler/scsi_dh_hp_sw.c
View file @
029af8c7
...
...
@@ -107,6 +107,7 @@ static int hp_sw_tur(struct scsi_device *sdev, struct hp_sw_dh_data *h)
struct
request
*
req
;
int
ret
;
retry:
req
=
blk_get_request
(
sdev
->
request_queue
,
WRITE
,
GFP_NOIO
);
if
(
!
req
)
return
SCSI_DH_RES_TEMP_UNAVAIL
;
...
...
@@ -121,7 +122,6 @@ static int hp_sw_tur(struct scsi_device *sdev, struct hp_sw_dh_data *h)
memset
(
req
->
sense
,
0
,
SCSI_SENSE_BUFFERSIZE
);
req
->
sense_len
=
0
;
retry:
ret
=
blk_execute_rq
(
req
->
q
,
NULL
,
req
,
1
);
if
(
ret
==
-
EIO
)
{
if
(
req
->
sense_len
>
0
)
{
...
...
@@ -136,8 +136,10 @@ retry:
h
->
path_state
=
HP_SW_PATH_ACTIVE
;
ret
=
SCSI_DH_OK
;
}
if
(
ret
==
SCSI_DH_IMM_RETRY
)
if
(
ret
==
SCSI_DH_IMM_RETRY
)
{
blk_put_request
(
req
);
goto
retry
;
}
if
(
ret
==
SCSI_DH_DEV_OFFLINED
)
{
h
->
path_state
=
HP_SW_PATH_PASSIVE
;
ret
=
SCSI_DH_OK
;
...
...
@@ -200,6 +202,7 @@ static int hp_sw_start_stop(struct scsi_device *sdev, struct hp_sw_dh_data *h)
struct
request
*
req
;
int
ret
,
retry
;
retry:
req
=
blk_get_request
(
sdev
->
request_queue
,
WRITE
,
GFP_NOIO
);
if
(
!
req
)
return
SCSI_DH_RES_TEMP_UNAVAIL
;
...
...
@@ -216,7 +219,6 @@ static int hp_sw_start_stop(struct scsi_device *sdev, struct hp_sw_dh_data *h)
req
->
sense_len
=
0
;
retry
=
h
->
retries
;
retry:
ret
=
blk_execute_rq
(
req
->
q
,
NULL
,
req
,
1
);
if
(
ret
==
-
EIO
)
{
if
(
req
->
sense_len
>
0
)
{
...
...
@@ -231,8 +233,10 @@ retry:
ret
=
SCSI_DH_OK
;
if
(
ret
==
SCSI_DH_RETRY
)
{
if
(
--
retry
)
if
(
--
retry
)
{
blk_put_request
(
req
);
goto
retry
;
}
ret
=
SCSI_DH_IO
;
}
...
...
drivers/video/aty/radeon_accel.c
View file @
029af8c7
This diff is collapsed.
Click to expand it.
drivers/video/aty/radeon_backlight.c
View file @
029af8c7
...
...
@@ -66,7 +66,7 @@ static int radeon_bl_update_status(struct backlight_device *bd)
level
=
bd
->
props
.
brightness
;
del_timer_sync
(
&
rinfo
->
lvds_timer
);
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
lvds_gen_cntl
=
INREG
(
LVDS_GEN_CNTL
);
if
(
level
>
0
)
{
...
...
drivers/video/aty/radeon_base.c
View file @
029af8c7
...
...
@@ -282,8 +282,6 @@ static int backlight = 1;
static
int
backlight
=
0
;
#endif
int
accel_cexp
=
0
;
/*
* prototypes
*/
...
...
@@ -854,6 +852,7 @@ static int radeonfb_pan_display (struct fb_var_screeninfo *var,
if
(
rinfo
->
asleep
)
return
0
;
radeon_fifo_wait
(
2
);
OUTREG
(
CRTC_OFFSET
,
((
var
->
yoffset
*
var
->
xres_virtual
+
var
->
xoffset
)
*
var
->
bits_per_pixel
/
8
)
&
~
7
);
return
0
;
...
...
@@ -883,6 +882,7 @@ static int radeonfb_ioctl (struct fb_info *info, unsigned int cmd,
if
(
rc
)
return
rc
;
radeon_fifo_wait
(
2
);
if
(
value
&
0x01
)
{
tmp
=
INREG
(
LVDS_GEN_CNTL
);
...
...
@@ -940,7 +940,7 @@ int radeon_screen_blank(struct radeonfb_info *rinfo, int blank, int mode_switch)
if
(
rinfo
->
lock_blank
)
return
0
;
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
val
=
INREG
(
CRTC_EXT_CNTL
);
val
&=
~
(
CRTC_DISPLAY_DIS
|
CRTC_HSYNC_DIS
|
...
...
@@ -1048,7 +1048,7 @@ static int radeonfb_blank (int blank, struct fb_info *info)
if
(
rinfo
->
asleep
)
return
0
;
return
radeon_screen_blank
(
rinfo
,
blank
,
0
);
}
...
...
@@ -1074,6 +1074,8 @@ static int radeon_setcolreg (unsigned regno, unsigned red, unsigned green,
pindex
=
regno
;
if
(
!
rinfo
->
asleep
)
{
radeon_fifo_wait
(
9
);
if
(
rinfo
->
bpp
==
16
)
{
pindex
=
regno
*
8
;
...
...
@@ -1242,6 +1244,8 @@ static void radeon_write_pll_regs(struct radeonfb_info *rinfo, struct radeon_reg
{
int
i
;
radeon_fifo_wait
(
20
);
/* Workaround from XFree */
if
(
rinfo
->
is_mobility
)
{
/* A temporal workaround for the occational blanking on certain laptop
...
...
@@ -1337,7 +1341,7 @@ static void radeon_lvds_timer_func(unsigned long data)
{
struct
radeonfb_info
*
rinfo
=
(
struct
radeonfb_info
*
)
data
;
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
OUTREG
(
LVDS_GEN_CNTL
,
rinfo
->
pending_lvds_gen_cntl
);
}
...
...
@@ -1355,11 +1359,10 @@ void radeon_write_mode (struct radeonfb_info *rinfo, struct radeon_regs *mode,
if
(
nomodeset
)
return
;
radeon_engine_idle
(
rinfo
);
if
(
!
regs_only
)
radeon_screen_blank
(
rinfo
,
FB_BLANK_NORMAL
,
0
);
radeon_fifo_wait
(
31
);
for
(
i
=
0
;
i
<
10
;
i
++
)
OUTREG
(
common_regs
[
i
].
reg
,
common_regs
[
i
].
val
);
...
...
@@ -1387,6 +1390,7 @@ void radeon_write_mode (struct radeonfb_info *rinfo, struct radeon_regs *mode,
radeon_write_pll_regs
(
rinfo
,
mode
);
if
((
primary_mon
==
MT_DFP
)
||
(
primary_mon
==
MT_LCD
))
{
radeon_fifo_wait
(
10
);
OUTREG
(
FP_CRTC_H_TOTAL_DISP
,
mode
->
fp_crtc_h_total_disp
);
OUTREG
(
FP_CRTC_V_TOTAL_DISP
,
mode
->
fp_crtc_v_total_disp
);
OUTREG
(
FP_H_SYNC_STRT_WID
,
mode
->
fp_h_sync_strt_wid
);
...
...
@@ -1401,6 +1405,7 @@ void radeon_write_mode (struct radeonfb_info *rinfo, struct radeon_regs *mode,
if
(
!
regs_only
)
radeon_screen_blank
(
rinfo
,
FB_BLANK_UNBLANK
,
0
);
radeon_fifo_wait
(
2
);
OUTPLL
(
VCLK_ECP_CNTL
,
mode
->
vclk_ecp_cntl
);
return
;
...
...
@@ -1551,7 +1556,7 @@ static int radeonfb_set_par(struct fb_info *info)
/* We always want engine to be idle on a mode switch, even
* if we won't actually change the mode
*/
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
hSyncStart
=
mode
->
xres
+
mode
->
right_margin
;
hSyncEnd
=
hSyncStart
+
mode
->
hsync_len
;
...
...
@@ -1846,6 +1851,7 @@ static int radeonfb_set_par(struct fb_info *info)
return
0
;
}
static
struct
fb_ops
radeonfb_ops
=
{
.
owner
=
THIS_MODULE
,
.
fb_check_var
=
radeonfb_check_var
,
...
...
@@ -1869,7 +1875,6 @@ static int __devinit radeon_set_fbinfo (struct radeonfb_info *rinfo)
info
->
par
=
rinfo
;
info
->
pseudo_palette
=
rinfo
->
pseudo_palette
;
info
->
flags
=
FBINFO_DEFAULT
|
FBINFO_HWACCEL_IMAGEBLIT
|
FBINFO_HWACCEL_COPYAREA
|
FBINFO_HWACCEL_FILLRECT
|
FBINFO_HWACCEL_XPAN
...
...
@@ -1877,7 +1882,6 @@ static int __devinit radeon_set_fbinfo (struct radeonfb_info *rinfo)
info
->
fbops
=
&
radeonfb_ops
;
info
->
screen_base
=
rinfo
->
fb_base
;
info
->
screen_size
=
rinfo
->
mapped_vram
;
/* Fill fix common fields */
strlcpy
(
info
->
fix
.
id
,
rinfo
->
name
,
sizeof
(
info
->
fix
.
id
));
info
->
fix
.
smem_start
=
rinfo
->
fb_base_phys
;
...
...
@@ -1892,25 +1896,8 @@ static int __devinit radeon_set_fbinfo (struct radeonfb_info *rinfo)
info
->
fix
.
mmio_len
=
RADEON_REGSIZE
;
info
->
fix
.
accel
=
FB_ACCEL_ATI_RADEON
;
/* Allocate colormap */
fb_alloc_cmap
(
&
info
->
cmap
,
256
,
0
);
/* Setup pixmap used for acceleration */
#define PIXMAP_SIZE (2048 * 4)
info
->
pixmap
.
addr
=
kmalloc
(
PIXMAP_SIZE
,
GFP_KERNEL
);
if
(
!
info
->
pixmap
.
addr
)
{
printk
(
KERN_ERR
"radeonfb: Failed to allocate pixmap !
\n
"
);
noaccel
=
1
;
goto
bail
;
}
info
->
pixmap
.
size
=
PIXMAP_SIZE
;
info
->
pixmap
.
flags
=
FB_PIXMAP_SYSTEM
;
info
->
pixmap
.
scan_align
=
4
;
info
->
pixmap
.
buf_align
=
4
;
info
->
pixmap
.
access_align
=
32
;
bail:
if
(
noaccel
)
info
->
flags
|=
FBINFO_HWACCEL_DISABLED
;
...
...
@@ -2019,6 +2006,7 @@ static void radeon_identify_vram(struct radeonfb_info *rinfo)
u32
tom
=
INREG
(
NB_TOM
);
tmp
=
((((
tom
>>
16
)
-
(
tom
&
0xffff
)
+
1
)
<<
6
)
*
1024
);
radeon_fifo_wait
(
6
);
OUTREG
(
MC_FB_LOCATION
,
tom
);
OUTREG
(
DISPLAY_BASE_ADDR
,
(
tom
&
0xffff
)
<<
16
);
OUTREG
(
CRTC2_DISPLAY_BASE_ADDR
,
(
tom
&
0xffff
)
<<
16
);
...
...
@@ -2522,8 +2510,6 @@ static int __init radeonfb_setup (char *options)
}
else
if
(
!
strncmp
(
this_opt
,
"ignore_devlist"
,
14
))
{
ignore_devlist
=
1
;
#endif
}
else
if
(
!
strncmp
(
this_opt
,
"accel_cexp"
,
12
))
{
accel_cexp
=
1
;
}
else
mode_option
=
this_opt
;
}
...
...
@@ -2571,8 +2557,6 @@ module_param(monitor_layout, charp, 0);
MODULE_PARM_DESC
(
monitor_layout
,
"Specify monitor mapping (like XFree86)"
);
module_param
(
force_measure_pll
,
bool
,
0
);
MODULE_PARM_DESC
(
force_measure_pll
,
"Force measurement of PLL (debug)"
);
module_param
(
accel_cexp
,
bool
,
0
);
MODULE_PARM_DESC
(
accel_cexp
,
"Use acceleration engine for color expansion"
);
#ifdef CONFIG_MTRR
module_param
(
nomtrr
,
bool
,
0
);
MODULE_PARM_DESC
(
nomtrr
,
"bool: disable use of MTRR registers"
);
...
...
drivers/video/aty/radeon_pm.c
View file @
029af8c7
...
...
@@ -2653,9 +2653,9 @@ int radeonfb_pci_suspend(struct pci_dev *pdev, pm_message_t mesg)
if
(
!
(
info
->
flags
&
FBINFO_HWACCEL_DISABLED
))
{
/* Make sure engine is reset */
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
radeonfb_engine_reset
(
rinfo
);
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
}
/* Blank display and LCD */
...
...
@@ -2767,7 +2767,7 @@ int radeonfb_pci_resume(struct pci_dev *pdev)
rinfo
->
asleep
=
0
;
}
else
radeon_engine_idle
(
rinfo
);
radeon_engine_idle
();
/* Restore display & engine */
radeon_write_mode
(
rinfo
,
&
rinfo
->
state
,
1
);
...
...
drivers/video/aty/radeonfb.h
View file @
029af8c7
...
...
@@ -336,15 +336,7 @@ struct radeonfb_info {
int
mon2_type
;
u8
*
mon2_EDID
;
/* accel bits */
u32
dp_gui_mc_base
;
u32
dp_gui_mc_cache
;
u32
dp_cntl_cache
;
u32
dp_brush_fg_cache
;
u32
dp_brush_bg_cache
;
u32
dp_src_fg_cache
;
u32
dp_src_bg_cache
;
u32
fifo_free
;
u32
dp_gui_master_cntl
;
struct
pll_info
pll
;
...
...
@@ -356,7 +348,6 @@ struct radeonfb_info {
int
lock_blank
;
int
dynclk
;
int
no_schedule
;
int
gfx_mode
;
enum
radeon_pm_mode
pm_mode
;
reinit_function_ptr
reinit_func
;
...
...
@@ -401,14 +392,8 @@ static inline void _radeon_msleep(struct radeonfb_info *rinfo, unsigned long ms)
#define OUTREG8(addr,val) writeb(val, (rinfo->mmio_base)+addr)
#define INREG16(addr) readw((rinfo->mmio_base)+addr)
#define OUTREG16(addr,val) writew(val, (rinfo->mmio_base)+addr)
#ifdef CONFIG_PPC
#define INREG(addr) ({ eieio(); ld_le32(rinfo->mmio_base+(addr)); })
#define OUTREG(addr,val) do { eieio(); st_le32(rinfo->mmio_base+(addr),(val)); } while(0)
#else
#define INREG(addr) readl((rinfo->mmio_base)+addr)
#define OUTREG(addr,val) writel(val, (rinfo->mmio_base)+addr)
#endif
static
inline
void
_OUTREGP
(
struct
radeonfb_info
*
rinfo
,
u32
addr
,
u32
val
,
u32
mask
)
...
...
@@ -550,7 +535,17 @@ static inline u32 radeon_get_dstbpp(u16 depth)
* 2D Engine helper routines
*/
extern
void
radeon_fifo_update_and_wait
(
struct
radeonfb_info
*
rinfo
,
int
entries
);
static
inline
void
_radeon_fifo_wait
(
struct
radeonfb_info
*
rinfo
,
int
entries
)
{
int
i
;
for
(
i
=
0
;
i
<
2000000
;
i
++
)
{
if
((
INREG
(
RBBM_STATUS
)
&
0x7f
)
>=
entries
)
return
;
udelay
(
1
);
}
printk
(
KERN_ERR
"radeonfb: FIFO Timeout !
\n
"
);
}
static
inline
void
radeon_engine_flush
(
struct
radeonfb_info
*
rinfo
)
{
...
...
@@ -563,7 +558,7 @@ static inline void radeon_engine_flush (struct radeonfb_info *rinfo)
/* Ensure FIFO is empty, ie, make sure the flush commands
* has reached the cache
*/
radeon_fifo_update_and_wait
(
rinfo
,
64
);
_radeon_fifo_wait
(
rinfo
,
64
);
/* Wait for the flush to complete */
for
(
i
=
0
;
i
<
2000000
;
i
++
)
{
...
...
@@ -575,12 +570,12 @@ static inline void radeon_engine_flush (struct radeonfb_info *rinfo)
}
static
inline
void
radeon_engine_idle
(
struct
radeonfb_info
*
rinfo
)
static
inline
void
_
radeon_engine_idle
(
struct
radeonfb_info
*
rinfo
)
{
int
i
;
/* ensure FIFO is empty before waiting for idle */
radeon_fifo_update_and
_wait
(
rinfo
,
64
);
_radeon_fifo
_wait
(
rinfo
,
64
);
for
(
i
=
0
;
i
<
2000000
;
i
++
)
{
if
(((
INREG
(
RBBM_STATUS
)
&
GUI_ACTIVE
))
==
0
)
{
...
...
@@ -593,6 +588,8 @@ static inline void radeon_engine_idle(struct radeonfb_info *rinfo)
}
#define radeon_engine_idle() _radeon_engine_idle(rinfo)
#define radeon_fifo_wait(entries) _radeon_fifo_wait(rinfo,entries)
#define radeon_msleep(ms) _radeon_msleep(rinfo,ms)
...
...
@@ -622,7 +619,6 @@ extern void radeonfb_imageblit(struct fb_info *p, const struct fb_image *image);
extern
int
radeonfb_sync
(
struct
fb_info
*
info
);
extern
void
radeonfb_engine_init
(
struct
radeonfb_info
*
rinfo
);
extern
void
radeonfb_engine_reset
(
struct
radeonfb_info
*
rinfo
);
extern
void
radeon_fixup_mem_offset
(
struct
radeonfb_info
*
rinfo
);
/* Other functions */
extern
int
radeon_screen_blank
(
struct
radeonfb_info
*
rinfo
,
int
blank
,
int
mode_switch
);
...
...
@@ -638,6 +634,4 @@ static inline void radeonfb_bl_init(struct radeonfb_info *rinfo) {}
static
inline
void
radeonfb_bl_exit
(
struct
radeonfb_info
*
rinfo
)
{}
#endif
extern
int
accel_cexp
;
#endif
/* __RADEONFB_H__ */
include/video/radeon.h
View file @
029af8c7
...
...
@@ -525,9 +525,6 @@
#define CRTC_DISPLAY_DIS (1 << 10)
#define CRTC_CRT_ON (1 << 15)
/* DSTCACHE_MODE bits constants */
#define RB2D_DC_AUTOFLUSH_ENABLE (1 << 8)
#define RB2D_DC_DC_DISABLE_IGNORE_PE (1 << 17)
/* DSTCACHE_CTLSTAT bit constants */
#define RB2D_DC_FLUSH_2D (1 << 0)
...
...
@@ -869,10 +866,15 @@
#define GMC_DST_16BPP_YVYU422 0x00000c00
#define GMC_DST_32BPP_AYUV444 0x00000e00
#define GMC_DST_16BPP_ARGB4444 0x00000f00
#define GMC_SRC_MONO 0x00000000
#define GMC_SRC_MONO_LBKGD 0x00001000
#define GMC_SRC_DSTCOLOR 0x00003000
#define GMC_BYTE_ORDER_MSB_TO_LSB 0x00000000
#define GMC_BYTE_ORDER_LSB_TO_MSB 0x00004000
#define GMC_DP_CONVERSION_TEMP_9300 0x00008000
#define GMC_DP_CONVERSION_TEMP_6500 0x00000000
#define GMC_DP_SRC_RECT 0x02000000
#define GMC_DP_SRC_HOST 0x03000000
#define GMC_DP_SRC_HOST_BYTEALIGN 0x04000000
#define GMC_3D_FCN_EN_CLR 0x00000000
#define GMC_3D_FCN_EN_SET 0x08000000
...
...
@@ -883,9 +885,6 @@
#define GMC_WRITE_MASK_LEAVE 0x00000000
#define GMC_WRITE_MASK_SET 0x40000000
#define GMC_CLR_CMP_CNTL_DIS (1 << 28)
#define GMC_SRC_DATATYPE_MASK (3 << 12)
#define GMC_SRC_DATATYPE_MONO_FG_BG (0 << 12)
#define GMC_SRC_DATATYPE_MONO_FG_LA (1 << 12)
#define GMC_SRC_DATATYPE_COLOR (3 << 12)
#define ROP3_S 0x00cc0000
#define ROP3_SRCCOPY 0x00cc0000
...
...
@@ -894,7 +893,6 @@
#define DP_SRC_SOURCE_MASK (7 << 24)
#define GMC_BRUSH_NONE (15 << 4)
#define DP_SRC_SOURCE_MEMORY (2 << 24)
#define DP_SRC_SOURCE_HOST_DATA (3 << 24)
#define GMC_BRUSH_SOLIDCOLOR 0x000000d0
/* DP_MIX bit constants */
...
...
@@ -980,12 +978,6 @@
#define DISP_PWR_MAN_TV_ENABLE_RST (1 << 25)
#define DISP_PWR_MAN_AUTO_PWRUP_EN (1 << 26)
/* RBBM_GUICNTL constants */
#define RBBM_GUICNTL_HOST_DATA_SWAP_NONE (0 << 0)
#define RBBM_GUICNTL_HOST_DATA_SWAP_16BIT (1 << 0)
#define RBBM_GUICNTL_HOST_DATA_SWAP_32BIT (2 << 0)
#define RBBM_GUICNTL_HOST_DATA_SWAP_HDW (3 << 0)
/* masks */
#define CONFIG_MEMSIZE_MASK 0x1f000000
...
...
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