staging: sm750fb: Merge ddk750_help.* into ddk750_chip.*.

The file ddk750_help.c contained only one function declaration,
so it was merged into ddk750_chip.c to simplify the driver.

Also, ddk750_help.h was merged into ddk750_chip.h to keep consistency.

With these changes a few global variables are removed and the function
ddk750_set_mmio is rewritten, so its purpose in the code is clearer.

Signed-off-by: Elise Lennion <elise.lennion@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Elise Lennion 2016-10-11 19:43:07 -03:00 committed by Greg Kroah-Hartman
parent 1ffe8bdc09
commit efe9bc08bf
13 changed files with 30 additions and 60 deletions

View file

@ -1,4 +1,4 @@
obj-$(CONFIG_FB_SM750) += sm750fb.o
sm750fb-objs := sm750.o sm750_hw.o sm750_accel.o sm750_cursor.o ddk750_chip.o ddk750_power.o ddk750_mode.o
sm750fb-objs += ddk750_display.o ddk750_help.o ddk750_swi2c.o ddk750_sii164.o ddk750_dvi.o ddk750_hwi2c.o
sm750fb-objs += ddk750_display.o ddk750_swi2c.o ddk750_sii164.o ddk750_dvi.o ddk750_hwi2c.o

View file

@ -16,7 +16,6 @@
#include "ddk750_chip.h"
#include "ddk750_display.h"
#include "ddk750_power.h"
#include "ddk750_help.h"
#ifdef USE_HW_I2C
#include "ddk750_hwi2c.h"
#endif

View file

@ -1,33 +1,32 @@
#include <linux/kernel.h>
#include <linux/sizes.h>
#include "ddk750_help.h"
#include "ddk750_reg.h"
#include "ddk750_chip.h"
#include "ddk750_power.h"
#define MHz(x) ((x) * 1000000)
static logical_chip_type_t chip;
logical_chip_type_t sm750_get_chip_type(void)
{
unsigned short physicalID;
char physicalRev;
logical_chip_type_t chip;
return chip;
}
physicalID = devId750; /* either 0x718 or 0x750 */
physicalRev = revId750;
if (physicalID == 0x718)
void sm750_set_chip_type(unsigned short devId, char revId)
{
if (devId == 0x718)
chip = SM718;
else if (physicalID == 0x750) {
else if (devId == 0x750) {
chip = SM750;
/* SM750 and SM750LE are different in their revision ID only. */
if (physicalRev == SM750LE_REVISION_ID)
if (revId == SM750LE_REVISION_ID) {
chip = SM750LE;
pr_info("found sm750le\n");
}
} else
chip = SM_UNKNOWN;
return chip;
}
static unsigned int get_mxclk_freq(void)

View file

@ -6,6 +6,14 @@
#endif
#include <linux/io.h>
#include <linux/ioport.h>
#include <linux/uaccess.h>
/* software control endianness */
#define PEEK32(addr) readl(addr + mmio750)
#define POKE32(addr, data) writel(data, addr + mmio750)
extern void __iomem *mmio750;
/* This is all the chips recognized by this library */
typedef enum _logical_chip_type_t {
@ -68,9 +76,9 @@ struct initchip_param {
};
logical_chip_type_t sm750_get_chip_type(void);
void sm750_set_chip_type(unsigned short devId, char revId);
unsigned int calcPllValue(unsigned int request, struct pll_value *pll);
unsigned int formatPllReg(struct pll_value *pPLL);
void ddk750_set_mmio(void __iomem *, unsigned short, char);
unsigned int ddk750_getVMSize(void);
int ddk750_initHw(struct initchip_param *);

View file

@ -1,5 +1,5 @@
#include "ddk750_reg.h"
#include "ddk750_help.h"
#include "ddk750_chip.h"
#include "ddk750_display.h"
#include "ddk750_power.h"
#include "ddk750_dvi.h"

View file

@ -1,6 +1,6 @@
#define USE_DVICHIP
#ifdef USE_DVICHIP
#include "ddk750_help.h"
#include "ddk750_chip.h"
#include "ddk750_reg.h"
#include "ddk750_dvi.h"
#include "ddk750_sii164.h"

View file

@ -1,17 +0,0 @@
#include "ddk750_help.h"
void __iomem *mmio750;
char revId750;
unsigned short devId750;
/* after driver mapped io registers, use this function first */
void ddk750_set_mmio(void __iomem *addr, unsigned short devId, char revId)
{
mmio750 = addr;
devId750 = devId;
revId750 = revId;
if (revId == 0xfe)
pr_info("found sm750le\n");
}

View file

@ -1,21 +0,0 @@
#ifndef DDK750_HELP_H__
#define DDK750_HELP_H__
#include "ddk750_chip.h"
#ifndef USE_INTERNAL_REGISTER_ACCESS
#include <linux/ioport.h>
#include <linux/io.h>
#include <linux/uaccess.h>
/* software control endianness */
#define PEEK32(addr) readl(addr + mmio750)
#define POKE32(addr, data) writel(data, addr + mmio750)
extern void __iomem *mmio750;
extern char revId750;
extern unsigned short devId750;
#else
/* implement if you want use it*/
#endif
#endif

View file

@ -1,6 +1,6 @@
#define USE_HW_I2C
#ifdef USE_HW_I2C
#include "ddk750_help.h"
#include "ddk750_chip.h"
#include "ddk750_reg.h"
#include "ddk750_hwi2c.h"
#include "ddk750_power.h"

View file

@ -1,5 +1,4 @@
#include "ddk750_help.h"
#include "ddk750_reg.h"
#include "ddk750_mode.h"
#include "ddk750_chip.h"

View file

@ -1,4 +1,4 @@
#include "ddk750_help.h"
#include "ddk750_chip.h"
#include "ddk750_reg.h"
#include "ddk750_power.h"

View file

@ -10,7 +10,7 @@
* implementation.
*
*******************************************************************/
#include "ddk750_help.h"
#include "ddk750_chip.h"
#include "ddk750_reg.h"
#include "ddk750_swi2c.h"
#include "ddk750_power.h"

View file

@ -23,6 +23,8 @@
#include "ddk750.h"
#include "sm750_accel.h"
void __iomem *mmio750;
int hw_sm750_map(struct sm750_dev *sm750_dev, struct pci_dev *pdev)
{
int ret;
@ -59,7 +61,8 @@ int hw_sm750_map(struct sm750_dev *sm750_dev, struct pci_dev *pdev)
sm750_dev->accel.dprBase = sm750_dev->pvReg + DE_BASE_ADDR_TYPE1;
sm750_dev->accel.dpPortBase = sm750_dev->pvReg + DE_PORT_ADDR_TYPE1;
ddk750_set_mmio(sm750_dev->pvReg, sm750_dev->devid, sm750_dev->revid);
mmio750 = sm750_dev->pvReg;
sm750_set_chip_type(sm750_dev->devid, sm750_dev->revid);
sm750_dev->vidmem_start = pci_resource_start(pdev, 0);
/* don't use pdev_resource[x].end - resource[x].start to