114 lines
3.5 KiB
C
114 lines
3.5 KiB
C
/* arch/arm/mach-msm/include/mach/BOARD_HTC.h
|
|
* Copyright (C) 2007-2009 HTC Corporation.
|
|
* Author: Thomas Tsai <thomas_tsai@htc.com>
|
|
*
|
|
* This software is licensed under the terms of the GNU General Public
|
|
* License version 2, as published by the Free Software Foundation, and
|
|
* may be copied, distributed, and modified under those terms.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
#ifndef __ASM_ARCH_MSM_BOARD_HTC_H
|
|
#define __ASM_ARCH_MSM_BOARD_HTC_H
|
|
|
|
#include <linux/types.h>
|
|
#include <linux/list.h>
|
|
#include <asm/setup.h>
|
|
#include <mach/msm_hsusb.h>
|
|
|
|
struct msm_pmem_setting{
|
|
resource_size_t pmem_start;
|
|
resource_size_t pmem_size;
|
|
resource_size_t pmem_adsp_start;
|
|
resource_size_t pmem_adsp_size;
|
|
resource_size_t pmem_gpu0_start;
|
|
resource_size_t pmem_gpu0_size;
|
|
resource_size_t pmem_gpu1_start;
|
|
resource_size_t pmem_gpu1_size;
|
|
resource_size_t pmem_camera_start;
|
|
resource_size_t pmem_camera_size;
|
|
resource_size_t ram_console_start;
|
|
resource_size_t ram_console_size;
|
|
resource_size_t kgsl_start;
|
|
resource_size_t kgsl_size;
|
|
#ifdef CONFIG_BUILD_CIQ
|
|
resource_size_t pmem_ciq_start;
|
|
resource_size_t pmem_ciq_size;
|
|
resource_size_t pmem_ciq1_start;
|
|
resource_size_t pmem_ciq1_size;
|
|
resource_size_t pmem_ciq2_start;
|
|
resource_size_t pmem_ciq2_size;
|
|
resource_size_t pmem_ciq3_start;
|
|
resource_size_t pmem_ciq3_size;
|
|
#endif
|
|
};
|
|
|
|
enum {
|
|
MSM_SERIAL_UART1 = 0,
|
|
MSM_SERIAL_UART2,
|
|
MSM_SERIAL_UART3,
|
|
#ifdef CONFIG_SERIAL_MSM_HS
|
|
MSM_SERIAL_UART1DM,
|
|
MSM_SERIAL_UART2DM,
|
|
#endif
|
|
MSM_SERIAL_NUM,
|
|
};
|
|
|
|
|
|
/* common init routines for use by arch/arm/mach-msm/board-*.c */
|
|
|
|
void __init msm_add_usb_devices(void (*phy_reset) (void), void (*phy_shutdown) (void));
|
|
void __init msm_add_usb_id_pin_function(void (*config_usb_id_gpios)(bool enable));
|
|
void __init msm_add_usb_id_pin_gpio(int usb_id_pin_io);
|
|
void __init msm_enable_car_kit_detect(bool enable);
|
|
void __init msm_change_usb_id(__u16 vendor_id, __u16 product_id);
|
|
void __init msm_add_mem_devices(struct msm_pmem_setting *setting);
|
|
void __init msm_init_pmic_vibrator(void);
|
|
#ifdef CONFIG_USB_FUNCTION
|
|
void __init msm_register_uart_usb_switch(void (*usb_uart_switch) (int));
|
|
void __init msm_register_usb_phy_init_seq(int *int_seq);
|
|
void __init msm_init_ums_lun(int lun_num);
|
|
void __init msm_set_ums_device_id(int id);
|
|
void __init msm_hsusb_set_product(struct msm_hsusb_product *product, int num_products);
|
|
#endif
|
|
|
|
struct mmc_platform_data;
|
|
int __init msm_add_sdcc_devices(unsigned int controller, struct mmc_platform_data *plat);
|
|
int __init msm_add_serial_devices(unsigned uart);
|
|
|
|
int board_mfg_mode(void);
|
|
int __init board_mcp_monodie(void);
|
|
int __init parse_tag_smi(const struct tag *tags);
|
|
int __init parse_tag_hwid(const struct tag *tags);
|
|
int __init parse_tag_monodie(const struct tag *tags);
|
|
/* Move these two into board.h
|
|
int __init parse_tag_skuid(const struct tag * tags);
|
|
int parse_tag_engineerid(const struct tag * tags);
|
|
*/
|
|
void board_get_keycaps_tag(char **);
|
|
void board_get_cid_tag(char **);
|
|
void board_get_carrier_tag(char **);
|
|
void board_get_mid_tag(char **);
|
|
int board_emmc_boot(void);
|
|
|
|
void notify_usb_connected(int online);
|
|
|
|
char *board_serialno(void);
|
|
|
|
/*
|
|
* Obviously, we need these in all project.
|
|
* To export a function to get these is too lousy.
|
|
* Each BSP can include board.h to get these.
|
|
*
|
|
* Jay, 15/May/09'
|
|
* */
|
|
extern int panel_type;
|
|
extern unsigned engineer_id;
|
|
extern int usb_phy_error;
|
|
|
|
|
|
#endif
|