Commit d397e916 authored by Timur Tabi's avatar Timur Tabi Committed by Florian Tobias Schandinat

drivers/video: fsl-diu-fb: remove broken reference count enabling the display

The functions enable_lcdc() and disable_lcdc() used the variable fb_enable
to keep a reference count of when the display is enabled, but the code is
broken.  The display is always disabled when disable_lcdc(), and it is
always enabled when enable_lcdc() is called, regardless of the value of
fb_enable.  Obviously, we don't need to keep a reference count, so just
remove the variable.
Signed-off-by: default avatarTimur Tabi <timur@freescale.com>
Signed-off-by: default avatarFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>
parent 934dbeeb
...@@ -352,7 +352,6 @@ struct mfb_info { ...@@ -352,7 +352,6 @@ struct mfb_info {
* @fsl_diu_info: fb_info objects, one per AOI * @fsl_diu_info: fb_info objects, one per AOI
* @dev_attr: sysfs structure * @dev_attr: sysfs structure
* @irq: IRQ * @irq: IRQ
* @fb_enabled: TRUE if the DIU is enabled, FALSE if not
* @monitor_port: the monitor port this DIU is connected to * @monitor_port: the monitor port this DIU is connected to
* @diu_reg: pointer to the DIU hardware registers * @diu_reg: pointer to the DIU hardware registers
* @reg_lock: spinlock for register access * @reg_lock: spinlock for register access
...@@ -371,7 +370,6 @@ struct fsl_diu_data { ...@@ -371,7 +370,6 @@ struct fsl_diu_data {
struct mfb_info mfb[NUM_AOIS]; struct mfb_info mfb[NUM_AOIS];
struct device_attribute dev_attr; struct device_attribute dev_attr;
unsigned int irq; unsigned int irq;
int fb_enabled;
enum fsl_diu_monitor_port monitor_port; enum fsl_diu_monitor_port monitor_port;
struct diu __iomem *diu_reg; struct diu __iomem *diu_reg;
spinlock_t reg_lock; spinlock_t reg_lock;
...@@ -619,10 +617,7 @@ static void enable_lcdc(struct fb_info *info) ...@@ -619,10 +617,7 @@ static void enable_lcdc(struct fb_info *info)
struct fsl_diu_data *data = mfbi->parent; struct fsl_diu_data *data = mfbi->parent;
struct diu __iomem *hw = data->diu_reg; struct diu __iomem *hw = data->diu_reg;
if (!data->fb_enabled) {
out_be32(&hw->diu_mode, MFB_MODE1); out_be32(&hw->diu_mode, MFB_MODE1);
data->fb_enabled++;
}
} }
static void disable_lcdc(struct fb_info *info) static void disable_lcdc(struct fb_info *info)
...@@ -631,10 +626,7 @@ static void disable_lcdc(struct fb_info *info) ...@@ -631,10 +626,7 @@ static void disable_lcdc(struct fb_info *info)
struct fsl_diu_data *data = mfbi->parent; struct fsl_diu_data *data = mfbi->parent;
struct diu __iomem *hw = data->diu_reg; struct diu __iomem *hw = data->diu_reg;
if (data->fb_enabled) {
out_be32(&hw->diu_mode, 0); out_be32(&hw->diu_mode, 0);
data->fb_enabled = 0;
}
} }
static void adjust_aoi_size_position(struct fb_var_screeninfo *var, static void adjust_aoi_size_position(struct fb_var_screeninfo *var,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment