staging: sm750fb: merge sm750_hw.h into sm750.h
There is no actual need to split type definitions and global function declarations between lots of small headers. Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
492bcecfd8
Коммит
05407e153f
|
@ -18,7 +18,6 @@
|
|||
#include <linux/console.h>
|
||||
#include <asm/fb.h>
|
||||
#include "sm750.h"
|
||||
#include "sm750_hw.h"
|
||||
#include "sm750_accel.h"
|
||||
#include "sm750_cursor.h"
|
||||
|
||||
|
|
|
@ -1,12 +1,61 @@
|
|||
#ifndef LYNXDRV_H_
|
||||
#define LYNXDRV_H_
|
||||
|
||||
|
||||
|
||||
#define FB_ACCEL_SMI 0xab
|
||||
|
||||
#define MHZ(x) ((x) * 1000000)
|
||||
|
||||
#define DEFAULT_SM750_CHIP_CLOCK 290
|
||||
#define DEFAULT_SM750LE_CHIP_CLOCK 333
|
||||
#ifndef SM750LE_REVISION_ID
|
||||
#define SM750LE_REVISION_ID ((unsigned char)0xfe)
|
||||
#endif
|
||||
|
||||
enum sm750_pnltype {
|
||||
sm750_24TFT = 0, /* 24bit tft */
|
||||
sm750_dualTFT = 2, /* dual 18 bit tft */
|
||||
sm750_doubleTFT = 1, /* 36 bit double pixel tft */
|
||||
};
|
||||
|
||||
/* vga channel is not concerned */
|
||||
enum sm750_dataflow {
|
||||
sm750_simul_pri, /* primary => all head */
|
||||
sm750_simul_sec, /* secondary => all head */
|
||||
sm750_dual_normal, /* primary => panel head and secondary => crt */
|
||||
sm750_dual_swap, /* primary => crt head and secondary => panel */
|
||||
};
|
||||
|
||||
enum sm750_channel {
|
||||
sm750_primary = 0,
|
||||
/* enum value equal to the register filed data */
|
||||
sm750_secondary = 1,
|
||||
};
|
||||
|
||||
enum sm750_path {
|
||||
sm750_panel = 1,
|
||||
sm750_crt = 2,
|
||||
sm750_pnc = 3, /* panel and crt */
|
||||
};
|
||||
|
||||
struct init_status {
|
||||
ushort powerMode;
|
||||
/* below three clocks are in unit of MHZ*/
|
||||
ushort chip_clk;
|
||||
ushort mem_clk;
|
||||
ushort master_clk;
|
||||
ushort setAllEngOff;
|
||||
ushort resetMemory;
|
||||
};
|
||||
|
||||
struct sm750_state {
|
||||
struct init_status initParm;
|
||||
enum sm750_pnltype pnltype;
|
||||
enum sm750_dataflow dataflow;
|
||||
int nocrt;
|
||||
int xLCD;
|
||||
int yLCD;
|
||||
};
|
||||
|
||||
struct lynx_accel {
|
||||
/* base virtual address of DPR registers */
|
||||
volatile unsigned char __iomem *dprBase;
|
||||
|
@ -58,6 +107,23 @@ struct lynx_share {
|
|||
spinlock_t slock;
|
||||
};
|
||||
|
||||
/*
|
||||
* sm750_share stands for a presentation of two frame buffer
|
||||
* that use one sm750 adaptor
|
||||
*/
|
||||
struct sm750_share {
|
||||
struct lynx_share share;
|
||||
struct sm750_state state;
|
||||
|
||||
/*
|
||||
* 0: no hardware cursor
|
||||
* 1: primary crtc hw cursor enabled,
|
||||
* 2: secondary crtc hw cursor enabled
|
||||
* 3: both ctrc hw cursor enabled
|
||||
*/
|
||||
int hwCursor;
|
||||
};
|
||||
|
||||
struct lynx_cursor {
|
||||
/* cursor width ,height and size */
|
||||
int w;
|
||||
|
@ -133,5 +199,23 @@ static inline unsigned long ps_to_hz(unsigned int psvalue)
|
|||
return (unsigned long)numerator;
|
||||
}
|
||||
|
||||
int hw_sm750_map(struct lynx_share *share, struct pci_dev *pdev);
|
||||
int hw_sm750_inithw(struct lynx_share*, struct pci_dev *);
|
||||
void hw_sm750_initAccel(struct lynx_share *);
|
||||
int hw_sm750_deWait(void);
|
||||
int hw_sm750le_deWait(void);
|
||||
|
||||
resource_size_t hw_sm750_getVMSize(struct lynx_share *);
|
||||
int hw_sm750_output_setMode(struct lynxfb_output*, struct fb_var_screeninfo*,
|
||||
struct fb_fix_screeninfo*);
|
||||
int hw_sm750_crtc_checkMode(struct lynxfb_crtc*, struct fb_var_screeninfo*);
|
||||
int hw_sm750_crtc_setMode(struct lynxfb_crtc*, struct fb_var_screeninfo*,
|
||||
struct fb_fix_screeninfo*);
|
||||
int hw_sm750_setColReg(struct lynxfb_crtc*, ushort, ushort, ushort, ushort);
|
||||
int hw_sm750_setBLANK(struct lynxfb_output*, int);
|
||||
int hw_sm750le_setBLANK(struct lynxfb_output*, int);
|
||||
int hw_sm750_pan_display(struct lynxfb_crtc *crtc,
|
||||
const struct fb_var_screeninfo *var,
|
||||
const struct fb_info *info);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
#include <linux/sizes.h>
|
||||
|
||||
#include "sm750.h"
|
||||
#include "sm750_hw.h"
|
||||
#include "ddk750.h"
|
||||
#include "sm750_accel.h"
|
||||
|
||||
|
|
|
@ -1,98 +0,0 @@
|
|||
#ifndef LYNX_HW750_H__
|
||||
#define LYNX_HW750_H__
|
||||
|
||||
|
||||
#define DEFAULT_SM750_CHIP_CLOCK 290
|
||||
#define DEFAULT_SM750LE_CHIP_CLOCK 333
|
||||
#ifndef SM750LE_REVISION_ID
|
||||
#define SM750LE_REVISION_ID (unsigned char)0xfe
|
||||
#endif
|
||||
|
||||
|
||||
enum sm750_pnltype {
|
||||
|
||||
sm750_24TFT = 0,/* 24bit tft */
|
||||
|
||||
sm750_dualTFT = 2,/* dual 18 bit tft */
|
||||
|
||||
sm750_doubleTFT = 1,/* 36 bit double pixel tft */
|
||||
};
|
||||
|
||||
/* vga channel is not concerned */
|
||||
enum sm750_dataflow {
|
||||
sm750_simul_pri,/* primary => all head */
|
||||
|
||||
sm750_simul_sec,/* secondary => all head */
|
||||
|
||||
sm750_dual_normal,/* primary => panel head and secondary => crt */
|
||||
|
||||
sm750_dual_swap,/* primary => crt head and secondary => panel */
|
||||
};
|
||||
|
||||
|
||||
enum sm750_channel {
|
||||
sm750_primary = 0,
|
||||
/* enum value equal to the register filed data */
|
||||
sm750_secondary = 1,
|
||||
};
|
||||
|
||||
enum sm750_path {
|
||||
sm750_panel = 1,
|
||||
sm750_crt = 2,
|
||||
sm750_pnc = 3,/* panel and crt */
|
||||
};
|
||||
|
||||
struct init_status {
|
||||
ushort powerMode;
|
||||
/* below three clocks are in unit of MHZ*/
|
||||
ushort chip_clk;
|
||||
ushort mem_clk;
|
||||
ushort master_clk;
|
||||
ushort setAllEngOff;
|
||||
ushort resetMemory;
|
||||
};
|
||||
|
||||
struct sm750_state {
|
||||
struct init_status initParm;
|
||||
enum sm750_pnltype pnltype;
|
||||
enum sm750_dataflow dataflow;
|
||||
int nocrt;
|
||||
int xLCD;
|
||||
int yLCD;
|
||||
};
|
||||
|
||||
/* sm750_share stands for a presentation of two frame buffer
|
||||
that use one sm750 adaptor, it is similar to the super class of lynx_share
|
||||
in C++
|
||||
*/
|
||||
|
||||
struct sm750_share {
|
||||
/* it's better to put lynx_share struct to the first place of sm750_share */
|
||||
struct lynx_share share;
|
||||
struct sm750_state state;
|
||||
int hwCursor;
|
||||
/* 0: no hardware cursor
|
||||
1: primary crtc hw cursor enabled,
|
||||
2: secondary crtc hw cursor enabled
|
||||
3: both ctrc hw cursor enabled
|
||||
*/
|
||||
};
|
||||
|
||||
int hw_sm750_map(struct lynx_share *share, struct pci_dev *pdev);
|
||||
int hw_sm750_inithw(struct lynx_share*, struct pci_dev *);
|
||||
void hw_sm750_initAccel(struct lynx_share *);
|
||||
int hw_sm750_deWait(void);
|
||||
int hw_sm750le_deWait(void);
|
||||
|
||||
resource_size_t hw_sm750_getVMSize(struct lynx_share *);
|
||||
int hw_sm750_output_setMode(struct lynxfb_output*, struct fb_var_screeninfo*, struct fb_fix_screeninfo*);
|
||||
int hw_sm750_crtc_checkMode(struct lynxfb_crtc*, struct fb_var_screeninfo*);
|
||||
int hw_sm750_crtc_setMode(struct lynxfb_crtc*, struct fb_var_screeninfo*, struct fb_fix_screeninfo*);
|
||||
int hw_sm750_setColReg(struct lynxfb_crtc*, ushort, ushort, ushort, ushort);
|
||||
int hw_sm750_setBLANK(struct lynxfb_output*, int);
|
||||
int hw_sm750le_setBLANK(struct lynxfb_output*, int);
|
||||
int hw_sm750_pan_display(struct lynxfb_crtc *crtc,
|
||||
const struct fb_var_screeninfo *var,
|
||||
const struct fb_info *info);
|
||||
|
||||
#endif
|
Загрузка…
Ссылка в новой задаче