rk: update board.h

move rk30_i2c_platform_data from plat to rk30
move boot mode, usb detect etc API from rk29 to plat
move spi_cs_gpio, rk29xx_spi_platform_data, rk29_bl_info from rk29/rk30 to plat
This commit is contained in:
黄涛 2012-02-20 16:17:16 +08:00
commit c040fd338b
3 changed files with 42 additions and 90 deletions

View file

@ -21,6 +21,7 @@
#include <linux/types.h>
#include <linux/timer.h>
#include <linux/notifier.h>
#include <plat/board.h>
struct led_newton_pwm {
const char *name;
@ -75,23 +76,6 @@ struct rk29_button_light_info{
int (*io_deinit)(void);
};
/*spi*/
struct spi_cs_gpio {
const char *name;
unsigned int cs_gpio;
char *cs_iomux_name;
unsigned int cs_iomux_mode;
};
struct rk29xx_spi_platform_data {
int (*io_init)(struct spi_cs_gpio*, int);
int (*io_deinit)(struct spi_cs_gpio*, int);
int (*io_fix_leakage_bug)(void);
int (*io_resume_leakage_bug)(void);
struct spi_cs_gpio *chipselect_gpios;
u16 num_chipselect;
};
/*vmac*/
struct rk29_vmac_platform_data {
int (*vmac_register_set)(void);
@ -130,17 +114,6 @@ struct rk29fb_info{
int (*io_disable)(void);
};
struct rk29_bl_info{
u32 pwm_id;
u32 bl_ref;
int (*io_init)(void);
int (*io_deinit)(void);
int (*pwm_suspend)(void);
int (*pwm_resume)(void);
int min_brightness; /* 0 ~ 255 */
unsigned int delay_ms; /* in milliseconds */
};
#ifndef _LINUX_WLAN_PLAT_H_
struct wifi_platform_data {
int (*set_power)(int val);
@ -391,16 +364,6 @@ void __init rk29_setup_early_printk(void);
void __init rk29_map_common_io(void);
void __init board_power_init(void);
#define BOOT_MODE_NORMAL 0
#define BOOT_MODE_FACTORY2 1
#define BOOT_MODE_RECOVERY 2
#define BOOT_MODE_CHARGE 3
#define BOOT_MODE_POWER_TEST 4
#define BOOT_MODE_OFFMODE_CHARGING 5
#define BOOT_MODE_REBOOT 6
#define BOOT_MODE_PANIC 7
int board_boot_mode(void);
enum periph_pll {
periph_pll_96mhz = 96000000, /* save more power */
periph_pll_144mhz = 144000000,
@ -425,14 +388,4 @@ enum codec_pll {
void __init rk29_clock_init(enum periph_pll ppll_rate); /* codec pll is 297MHz, has xin27m */
void __init rk29_clock_init2(enum periph_pll ppll_rate, enum codec_pll cpll_rate, bool has_xin27m);
/* for USB detection */
#ifdef CONFIG_USB_GADGET
int board_usb_detect_init(unsigned gpio);
#else
static int inline board_usb_detect_init(unsigned gpio) { return 0; }
#endif
/* for wakeup Android */
void rk28_send_wakeup_key(void);
#endif

View file

@ -10,6 +10,18 @@
#include <asm/setup.h>
#include <plat/board.h>
struct rk30_i2c_platform_data {
char *name;
int bus_num;
#define I2C_RK29_ADAP 0
#define I2C_RK30_ADAP 1
int adap_type:1;
int is_div_from_arm:1;
u32 flags;
int (*io_init)(void);
int (*io_deinit)(void);
};
void __init rk30_map_common_io(void);
void __init rk30_init_irq(void);
void __init rk30_map_io(void);
@ -19,34 +31,4 @@ void __init rk30_clock_init(void);
extern struct sys_timer rk30_timer;
/*spi*/
struct spi_cs_gpio {
const char *name;
unsigned int cs_gpio;
char *cs_iomux_name;
unsigned int cs_iomux_mode;
};
struct rk29xx_spi_platform_data {
int (*io_init)(struct spi_cs_gpio*, int);
int (*io_deinit)(struct spi_cs_gpio*, int);
int (*io_fix_leakage_bug)(void);
int (*io_resume_leakage_bug)(void);
struct spi_cs_gpio *chipselect_gpios;
u16 num_chipselect;
};
struct rk29_bl_info{
u32 pwm_id;
u32 bl_ref;
int (*io_init)(void);
int (*io_deinit)(void);
int (*pwm_suspend)(void);
int (*pwm_resume)(void);
int min_brightness; /* 0 ~ 255 */
unsigned int delay_ms; /* in milliseconds */
};
#endif

View file

@ -3,6 +3,34 @@
#include <linux/types.h>
#include <linux/init.h>
/*spi*/
struct spi_cs_gpio {
const char *name;
unsigned int cs_gpio;
char *cs_iomux_name;
unsigned int cs_iomux_mode;
};
struct rk29xx_spi_platform_data {
int (*io_init)(struct spi_cs_gpio*, int);
int (*io_deinit)(struct spi_cs_gpio*, int);
int (*io_fix_leakage_bug)(void);
int (*io_resume_leakage_bug)(void);
struct spi_cs_gpio *chipselect_gpios;
u16 num_chipselect;
};
struct rk29_bl_info {
u32 pwm_id;
u32 bl_ref;
int (*io_init)(void);
int (*io_deinit)(void);
int (*pwm_suspend)(void);
int (*pwm_resume)(void);
int min_brightness; /* 0 ~ 255 */
unsigned int delay_ms; /* in milliseconds */
};
#define BOOT_MODE_NORMAL 0
#define BOOT_MODE_FACTORY2 1
#define BOOT_MODE_RECOVERY 2
@ -12,18 +40,6 @@
#define BOOT_MODE_REBOOT 6
#define BOOT_MODE_PANIC 7
struct rk30_i2c_platform_data {
char *name;
int bus_num;
#define I2C_RK29_ADAP 0
#define I2C_RK30_ADAP 1
int adap_type:1;
int is_div_from_arm:1;
u32 flags;
int (*io_init)(void);
int (*io_deinit)(void);
};
int board_boot_mode(void);
/* for USB detection */
@ -41,4 +57,5 @@ void rk28_send_wakeup_key(void);
* return value: start address of reserved memory */
phys_addr_t __init board_mem_reserve_add(char *name, size_t size);
void __init board_mem_reserved(void);
#endif