Merge remote-tracking branch 'u-boot/master' into u-boot-arm-merged
Conflicts: README arch/arm/cpu/armv7/exynos/clock.c board/samsung/universal_c210/universal.c drivers/misc/Makefile drivers/power/power_fsl.c include/configs/mx35pdk.h include/configs/mx53loco.h include/configs/seaboard.h
This commit is contained in:
@@ -42,10 +42,11 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* Request ownership of a GPIO.
|
||||
* Request a gpio. This should be called before any of the other functions
|
||||
* are used on this gpio.
|
||||
*
|
||||
* @param gpio GPIO number
|
||||
* @param label Name given to the GPIO
|
||||
* @param gp GPIO number
|
||||
* @param label User label for this GPIO
|
||||
* @return 0 if ok, -1 on error
|
||||
*/
|
||||
int gpio_request(unsigned gpio, const char *label);
|
||||
@@ -93,14 +94,4 @@ int gpio_get_value(unsigned gpio);
|
||||
* @return 0 if ok, -1 on error
|
||||
*/
|
||||
int gpio_set_value(unsigned gpio, int value);
|
||||
|
||||
/**
|
||||
* Request a gpio. This should be called before any of the other functions
|
||||
* are used on this gpio.
|
||||
*
|
||||
* @param gp GPIO number
|
||||
* @param label User label for this GPIO
|
||||
* @return 0 if ok, -1 on error
|
||||
*/
|
||||
int gpio_request(unsigned gpio, const char *label);
|
||||
#endif /* _ASM_GENERIC_GPIO_H_ */
|
||||
|
||||
@@ -217,6 +217,13 @@ struct atmel_hlcd_regs {
|
||||
#define LCDC_BASECFG3_RDEF(value) \
|
||||
((LCDC_BASECFG3_RDEF_Msk & ((value) << LCDC_BASECFG3_RDEF_Pos)))
|
||||
|
||||
#define LCDC_BASECLUT_BCLUT_Pos 0
|
||||
#define LCDC_BASECLUT_BCLUT_Msk (0xff << LCDC_BASECLUT_BCLUT_Pos)
|
||||
#define LCDC_BASECLUT_GCLUT_Pos 8
|
||||
#define LCDC_BASECLUT_GCLUT_Msk (0xff << LCDC_BASECLUT_GCLUT_Pos)
|
||||
#define LCDC_BASECLUT_RCLUT_Pos 16
|
||||
#define LCDC_BASECLUT_RCLUT_Msk (0xff << LCDC_BASECLUT_RCLUT_Pos)
|
||||
|
||||
#define LCDC_BASECFG4_DMA (0x1 << 8)
|
||||
#define LCDC_BASECFG4_REP (0x1 << 9)
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
#ifndef __INCLUDE_BOUNCEBUF_H__
|
||||
#define __INCLUDE_BOUNCEBUF_H__
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/*
|
||||
* GEN_BB_READ -- Data are read from the buffer eg. by DMA hardware.
|
||||
* The source buffer is copied into the bounce buffer (if unaligned, otherwise
|
||||
@@ -51,37 +53,36 @@
|
||||
*/
|
||||
#define GEN_BB_RW (GEN_BB_READ | GEN_BB_WRITE)
|
||||
|
||||
#ifdef CONFIG_BOUNCE_BUFFER
|
||||
struct bounce_buffer {
|
||||
/* Copy of data parameter passed to start() */
|
||||
void *user_buffer;
|
||||
/*
|
||||
* DMA-aligned buffer. This field is always set to the value that
|
||||
* should be used for DMA; either equal to .user_buffer, or to a
|
||||
* freshly allocated aligned buffer.
|
||||
*/
|
||||
void *bounce_buffer;
|
||||
/* Copy of len parameter passed to start() */
|
||||
size_t len;
|
||||
/* DMA-aligned buffer length */
|
||||
size_t len_aligned;
|
||||
/* Copy of flags parameter passed to start() */
|
||||
unsigned int flags;
|
||||
};
|
||||
|
||||
/**
|
||||
* bounce_buffer_start() -- Start the bounce buffer session
|
||||
* state: stores state passed between bounce_buffer_{start,stop}
|
||||
* data: pointer to buffer to be aligned
|
||||
* len: length of the buffer
|
||||
* backup: pointer to backup buffer (the original value is stored here if
|
||||
* needed
|
||||
* flags: flags describing the transaction, see above.
|
||||
*/
|
||||
int bounce_buffer_start(void **data, size_t len, void **backup, uint8_t flags);
|
||||
int bounce_buffer_start(struct bounce_buffer *state, void *data,
|
||||
size_t len, unsigned int flags);
|
||||
/**
|
||||
* bounce_buffer_stop() -- Finish the bounce buffer session
|
||||
* data: pointer to buffer that was aligned
|
||||
* len: length of the buffer
|
||||
* backup: pointer to backup buffer (the original value is stored here if
|
||||
* needed
|
||||
* flags: flags describing the transaction, see above.
|
||||
* state: stores state passed between bounce_buffer_{start,stop}
|
||||
*/
|
||||
int bounce_buffer_stop(void **data, size_t len, void **backup, uint8_t flags);
|
||||
#else
|
||||
static inline int bounce_buffer_start(void **data, size_t len, void **backup,
|
||||
uint8_t flags)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int bounce_buffer_stop(void **data, size_t len, void **backup,
|
||||
uint8_t flags)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
int bounce_buffer_stop(struct bounce_buffer *state);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
@@ -77,46 +74,47 @@ struct cbfs_cachenode {
|
||||
|
||||
extern enum cbfs_result file_cbfs_result;
|
||||
|
||||
/*
|
||||
* Return a string describing the most recent error condition.
|
||||
/**
|
||||
* file_cbfs_error() - Return a string describing the most recent error
|
||||
* condition.
|
||||
*
|
||||
* @return A pointer to the constant string.
|
||||
*/
|
||||
const char *file_cbfs_error(void);
|
||||
|
||||
/*
|
||||
* Initialize the CBFS driver and load metadata into RAM.
|
||||
/**
|
||||
* file_cbfs_init() - Initialize the CBFS driver and load metadata into RAM.
|
||||
*
|
||||
* @param end_of_rom Points to the end of the ROM the CBFS should be read
|
||||
* @end_of_rom: Points to the end of the ROM the CBFS should be read
|
||||
* from.
|
||||
*/
|
||||
void file_cbfs_init(uintptr_t end_of_rom);
|
||||
|
||||
/*
|
||||
* Get the header structure for the current CBFS.
|
||||
/**
|
||||
* file_cbfs_get_header() - Get the header structure for the current CBFS.
|
||||
*
|
||||
* @return A pointer to the constant structure, or NULL if there is none.
|
||||
*/
|
||||
const struct cbfs_header *file_cbfs_get_header(void);
|
||||
|
||||
/*
|
||||
* Get a handle for the first file in CBFS.
|
||||
/**
|
||||
* file_cbfs_get_first() - Get a handle for the first file in CBFS.
|
||||
*
|
||||
* @return A handle for the first file in CBFS, NULL on error.
|
||||
*/
|
||||
const struct cbfs_cachenode *file_cbfs_get_first(void);
|
||||
|
||||
/*
|
||||
* Get a handle to the file after this one in CBFS.
|
||||
/**
|
||||
* file_cbfs_get_next() - Get a handle to the file after this one in CBFS.
|
||||
*
|
||||
* @param file A pointer to the handle to advance.
|
||||
* @file: A pointer to the handle to advance.
|
||||
*/
|
||||
void file_cbfs_get_next(const struct cbfs_cachenode **file);
|
||||
|
||||
/*
|
||||
* Find a file with a particular name in CBFS.
|
||||
/**
|
||||
* file_cbfs_find() - Find a file with a particular name in CBFS.
|
||||
*
|
||||
* @param name The name to search for.
|
||||
* @name: The name to search for.
|
||||
*
|
||||
* @return A handle to the file, or NULL on error.
|
||||
*/
|
||||
@@ -127,53 +125,55 @@ const struct cbfs_cachenode *file_cbfs_find(const char *name);
|
||||
/* All of the functions below can be used without first initializing CBFS. */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* Find a file with a particular name in CBFS without using the heap.
|
||||
/**
|
||||
* file_cbfs_find_uncached() - Find a file with a particular name in CBFS
|
||||
* without using the heap.
|
||||
*
|
||||
* @param end_of_rom Points to the end of the ROM the CBFS should be read
|
||||
* @end_of_rom: Points to the end of the ROM the CBFS should be read
|
||||
* from.
|
||||
* @param name The name to search for.
|
||||
* @name: The name to search for.
|
||||
*
|
||||
* @return A handle to the file, or NULL on error.
|
||||
*/
|
||||
const struct cbfs_cachenode *file_cbfs_find_uncached(uintptr_t end_of_rom,
|
||||
const char *name);
|
||||
|
||||
/*
|
||||
* Get the name of a file in CBFS.
|
||||
/**
|
||||
* file_cbfs_name() - Get the name of a file in CBFS.
|
||||
*
|
||||
* @param file The handle to the file.
|
||||
* @file: The handle to the file.
|
||||
*
|
||||
* @return The name of the file, NULL on error.
|
||||
*/
|
||||
const char *file_cbfs_name(const struct cbfs_cachenode *file);
|
||||
|
||||
/*
|
||||
* Get the size of a file in CBFS.
|
||||
/**
|
||||
* file_cbfs_size() - Get the size of a file in CBFS.
|
||||
*
|
||||
* @param file The handle to the file.
|
||||
* @file: The handle to the file.
|
||||
*
|
||||
* @return The size of the file, zero on error.
|
||||
*/
|
||||
u32 file_cbfs_size(const struct cbfs_cachenode *file);
|
||||
|
||||
/*
|
||||
* Get the type of a file in CBFS.
|
||||
/**
|
||||
* file_cbfs_type() - Get the type of a file in CBFS.
|
||||
*
|
||||
* @param file The handle to the file.
|
||||
* @file: The handle to the file.
|
||||
*
|
||||
* @return The type of the file, zero on error.
|
||||
*/
|
||||
u32 file_cbfs_type(const struct cbfs_cachenode *file);
|
||||
|
||||
/*
|
||||
* Read a file from CBFS into RAM
|
||||
/**
|
||||
* file_cbfs_read() - Read a file from CBFS into RAM
|
||||
*
|
||||
* @param file A handle to the file to read.
|
||||
* @param buffer Where to read it into memory.
|
||||
* @file: A handle to the file to read.
|
||||
* @buffer: Where to read it into memory.
|
||||
* @maxsize: Maximum number of bytes to read
|
||||
*
|
||||
* @return If positive or zero, the number of characters read. If negative, an
|
||||
* error occurred.
|
||||
* error occurred.
|
||||
*/
|
||||
long file_cbfs_read(const struct cbfs_cachenode *file, void *buffer,
|
||||
unsigned long maxsize);
|
||||
|
||||
@@ -89,10 +89,10 @@ extern int cmd_auto_complete(const char *const prompt, char *buf, int *np, int *
|
||||
*/
|
||||
|
||||
#if defined(CONFIG_CMD_MEMORY) \
|
||||
|| defined(CONFIG_CMD_I2C) \
|
||||
|| defined(CONFIG_CMD_ITEST) \
|
||||
|| defined(CONFIG_CMD_PCI) \
|
||||
|| defined(CONFIG_CMD_PORTIO)
|
||||
|| defined(CONFIG_CMD_I2C) \
|
||||
|| defined(CONFIG_CMD_ITEST) \
|
||||
|| defined(CONFIG_CMD_PCI) \
|
||||
|| defined(CONFIG_CMD_PORTIO)
|
||||
#define CMD_DATA_SIZE
|
||||
extern int cmd_get_data_size(char* arg, int default_size);
|
||||
#endif
|
||||
|
||||
@@ -340,6 +340,11 @@ int envmatch (uchar *, int);
|
||||
char *getenv (const char *);
|
||||
int getenv_f (const char *name, char *buf, unsigned len);
|
||||
ulong getenv_ulong(const char *name, int base, ulong default_val);
|
||||
/*
|
||||
* Read an environment variable as a boolean
|
||||
* Return -1 if variable does not exist (default to true)
|
||||
*/
|
||||
int getenv_yesno(const char *var);
|
||||
int saveenv (void);
|
||||
int setenv (const char *, const char *);
|
||||
int setenv_ulong(const char *varname, ulong value);
|
||||
|
||||
@@ -40,12 +40,15 @@
|
||||
#define CONFIG_CMD_FDOS /* Floppy DOS support */
|
||||
#define CONFIG_CMD_FLASH /* flinfo, erase, protect */
|
||||
#define CONFIG_CMD_FPGA /* FPGA configuration Support */
|
||||
#define CONFIG_CMD_GETTIME /* Get time since boot */
|
||||
#define CONFIG_CMD_HASH /* calculate hash / digest */
|
||||
#define CONFIG_CMD_HWFLOW /* RTS/CTS hw flow control */
|
||||
#define CONFIG_CMD_I2C /* I2C serial bus support */
|
||||
#define CONFIG_CMD_IDE /* IDE harddisk support */
|
||||
#define CONFIG_CMD_IMI /* iminfo */
|
||||
#define CONFIG_CMD_IMLS /* List all found images */
|
||||
#define CONFIG_CMD_IMMAP /* IMMR dump support */
|
||||
#define CONFIG_CMD_IO /* Access to X86 IO space */
|
||||
#define CONFIG_CMD_IRQ /* irqinfo */
|
||||
#define CONFIG_CMD_ITEST /* Integer (and string) test */
|
||||
#define CONFIG_CMD_JFFS2 /* JFFS2 Support */
|
||||
@@ -70,6 +73,7 @@
|
||||
#define CONFIG_CMD_REGINFO /* Register dump */
|
||||
#define CONFIG_CMD_REISER /* Reiserfs support */
|
||||
#define CONFIG_CMD_RARP /* rarpboot support */
|
||||
#define CONFIG_CMD_READ /* Read data from partition */
|
||||
#define CONFIG_CMD_RUN /* run command in env variable */
|
||||
#define CONFIG_CMD_SAVEENV /* saveenv */
|
||||
#define CONFIG_CMD_SAVES /* save S record dump */
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
#define CONFIG_SYS_PCI_PTM1PCI 0x00000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2LA 0xffc00000 /* point to flash */
|
||||
#define CONFIG_SYS_PCI_PTM2MS 0xffc00001 /* 4MB, enable */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI 0x04000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI (bd->bi_memsize) /* host use this pci address */
|
||||
|
||||
#define CONFIG_PCI_4xx_PTM_OVERWRITE 1 /* overwrite PTMx settings by env */
|
||||
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
#define CONFIG_SYS_PCI_PTM1PCI 0x00000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2LA 0xffc00000 /* point to flash */
|
||||
#define CONFIG_SYS_PCI_PTM2MS 0xffc00001 /* 4MB, enable */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI 0x04000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI (bd->bi_memsize) /* host use this pci address */
|
||||
|
||||
#define CONFIG_PCI_4xx_PTM_OVERWRITE 1 /* overwrite PTMx settings by env */
|
||||
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
#define CONFIG_SYS_PCI_PTM1PCI 0x00000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2LA 0xffc00000 /* point to flash */
|
||||
#define CONFIG_SYS_PCI_PTM2MS 0xffc00001 /* 4MB, enable */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI 0x04000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI (bd->bi_memsize) /* host use this pci address */
|
||||
|
||||
#define CONFIG_PCI_4xx_PTM_OVERWRITE 1 /* overwrite PTMx settings by env */
|
||||
|
||||
|
||||
@@ -196,7 +196,7 @@
|
||||
#define CONFIG_SYS_PCI_PTM1PCI 0x00000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2LA 0xffc00000 /* point to flash */
|
||||
#define CONFIG_SYS_PCI_PTM2MS 0xffc00001 /* 4MB, enable */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI 0x04000000 /* Host: use this pci address */
|
||||
#define CONFIG_SYS_PCI_PTM2PCI (bd->bi_memsize) /* host use this pci address */
|
||||
|
||||
#define CONFIG_PCI_4xx_PTM_OVERWRITE 1 /* overwrite PTMx settings by env */
|
||||
|
||||
|
||||
@@ -153,7 +153,6 @@
|
||||
|
||||
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x100000 /* where to load what we get from TFTP */
|
||||
#define CONFIG_SYS_TFTP_LOADADDR CONFIG_SYS_LOAD_ADDR
|
||||
#define CONFIG_SYS_EXTBDINFO 1 /* To use extended board_into (bd_t) */
|
||||
#define CONFIG_SYS_DRAM_TEST 1
|
||||
|
||||
|
||||
@@ -95,11 +95,6 @@
|
||||
#undef CONFIG_LOADS_ECHO
|
||||
#define CONFIG_SYS_LOADS_BAUD_CHANGE
|
||||
|
||||
/*
|
||||
* Set default load address for tftp network downloads
|
||||
*/
|
||||
#define CONFIG_SYS_TFTP_LOADADDR 0x01000000
|
||||
|
||||
/*
|
||||
* Turn off the watchdog timer
|
||||
*/
|
||||
|
||||
@@ -553,6 +553,7 @@ extern unsigned long get_sdram_size(void);
|
||||
|
||||
/* SATA */
|
||||
#define CONFIG_FSL_SATA
|
||||
#define CONFIG_FSL_SATA_V2
|
||||
#define CONFIG_LIBATA
|
||||
|
||||
#ifdef CONFIG_FSL_SATA
|
||||
|
||||
@@ -360,6 +360,7 @@
|
||||
/* SATA */
|
||||
#define CONFIG_LIBATA
|
||||
#define CONFIG_FSL_SATA
|
||||
#define CONFIG_FSL_SATA_V2
|
||||
|
||||
#define CONFIG_SYS_SATA_MAX_DEVICE 2
|
||||
#define CONFIG_SATA1
|
||||
|
||||
@@ -524,7 +524,7 @@ extern unsigned long get_clock_freq(void);
|
||||
/* Default address of microcode for the Linux Fman driver */
|
||||
/* QE microcode/firmware address */
|
||||
#define CONFIG_SYS_QE_FMAN_FW_IN_NOR
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEF000000
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEFF40000
|
||||
#else
|
||||
#define CONFIG_SYS_QE_FMAN_FW_IN_NAND
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0x1f00000
|
||||
|
||||
@@ -202,15 +202,21 @@ unsigned long get_board_sys_clk(unsigned long dummy);
|
||||
/* Set the local bus clock 1/8 of platform clock */
|
||||
#define CONFIG_SYS_LBC_LCRR LCRR_CLKDIV_8
|
||||
|
||||
#define CONFIG_SYS_FLASH_BASE 0xe8000000 /* Start of PromJet */
|
||||
/*
|
||||
* This board doesn't have a promjet connector.
|
||||
* However, it uses commone corenet board LAW and TLB.
|
||||
* It is necessary to use the same start address with proper offset.
|
||||
*/
|
||||
#define CONFIG_SYS_FLASH_BASE 0xe0000000
|
||||
#ifdef CONFIG_PHYS_64BIT
|
||||
#define CONFIG_SYS_FLASH_BASE_PHYS 0xfe8000000ull
|
||||
#define CONFIG_SYS_FLASH_BASE_PHYS 0xfe0000000ull
|
||||
#else
|
||||
#define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE
|
||||
#endif
|
||||
|
||||
#define CONFIG_SYS_FLASH_BR_PRELIM \
|
||||
(BR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | BR_PS_16 | BR_V)
|
||||
(BR_PHYS_ADDR((CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000)) | \
|
||||
BR_PS_16 | BR_V)
|
||||
#define CONFIG_SYS_FLASH_OR_PRELIM \
|
||||
((0xf8000ff7 & ~OR_GPCM_SCY & ~OR_GPCM_EHTR) \
|
||||
| OR_GPCM_SCY_8 | OR_GPCM_EHTR_CLEAR)
|
||||
@@ -294,7 +300,7 @@ unsigned long get_board_sys_clk(unsigned long dummy);
|
||||
|
||||
#define CONFIG_SYS_FLASH_EMPTY_INFO
|
||||
#define CONFIG_SYS_FLASH_AMD_CHECK_DQ7
|
||||
#define CONFIG_SYS_FLASH_BANKS_LIST {CONFIG_SYS_FLASH_BASE_PHYS}
|
||||
#define CONFIG_SYS_FLASH_BANKS_LIST {CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000}
|
||||
|
||||
#define CONFIG_BOARD_EARLY_INIT_F
|
||||
#define CONFIG_BOARD_EARLY_INIT_R /* call board_early_init_r function */
|
||||
@@ -539,7 +545,7 @@ unsigned long get_board_sys_clk(unsigned long dummy);
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xFFE00000
|
||||
#else
|
||||
#define CONFIG_SYS_QE_FMAN_FW_IN_NOR
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEF000000
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEFF40000
|
||||
#endif
|
||||
#define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000
|
||||
#define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
|
||||
@@ -560,8 +566,10 @@ unsigned long get_board_sys_clk(unsigned long dummy);
|
||||
#endif /* CONFIG_PCI */
|
||||
|
||||
/* SATA */
|
||||
#define CONFIG_FSL_SATA_V2
|
||||
|
||||
#ifdef CONFIG_FSL_SATA_V2
|
||||
#define CONFIG_FSL_SATA
|
||||
#ifdef CONFIG_FSL_SATA
|
||||
#define CONFIG_LIBATA
|
||||
|
||||
#define CONFIG_SYS_SATA_MAX_DEVICE 2
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_NAND_FSL_ELBC
|
||||
#define CONFIG_FSL_SATA_V2
|
||||
#define CONFIG_PCIE3
|
||||
#define CONFIG_PCIE4
|
||||
#define CONFIG_SYS_DPAA_RMAN
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_NAND_FSL_ELBC
|
||||
#define CONFIG_FSL_SATA_V2
|
||||
#define CONFIG_PCIE3
|
||||
#define CONFIG_PCIE4
|
||||
#define CONFIG_SYS_FSL_RAID_ENGINE
|
||||
|
||||
40
include/configs/P5040DS.h
Normal file
40
include/configs/P5040DS.h
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright 2009-2011 Freescale Semiconductor, Inc.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
/*
|
||||
* P5040 DS board configuration file
|
||||
*
|
||||
*/
|
||||
#define CONFIG_P5040DS
|
||||
#define CONFIG_PHYS_64BIT
|
||||
#define CONFIG_PPC_P5040
|
||||
|
||||
#define CONFIG_FSL_NGPIXIS /* use common ngPIXIS code */
|
||||
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_NAND_FSL_ELBC
|
||||
#define CONFIG_PCIE3
|
||||
#define CONFIG_SYS_FSL_RAID_ENGINE
|
||||
|
||||
#define CONFIG_ICS307_REFCLK_HZ 25000000 /* ICS307 ref clk freq */
|
||||
|
||||
#include "corenet_ds.h"
|
||||
@@ -142,6 +142,7 @@
|
||||
*----------------------------------------------------------------------*/
|
||||
#define CONFIG_SYS_LEDPIO_ADDR 0x02120870 /* LED PIO base addr */
|
||||
#define CONFIG_STATUS_LED /* Enable status driver */
|
||||
#define CONFIG_BOARD_SPECIFIC_LED
|
||||
|
||||
#define STATUS_LED_BIT 1 /* Bit-0 on PIO */
|
||||
#define STATUS_LED_STATE 1 /* Blinking */
|
||||
|
||||
@@ -416,7 +416,6 @@
|
||||
#define CONFIG_IPADDR 10.0.4.111
|
||||
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x00100000 /* default load address */
|
||||
#define CONFIG_SYS_TFTP_LOADADDR 0x00100000
|
||||
|
||||
/*
|
||||
* For booting Linux, the board info and command line data
|
||||
|
||||
380
include/configs/a3m071.h
Normal file
380
include/configs/a3m071.h
Normal file
@@ -0,0 +1,380 @@
|
||||
/*
|
||||
* Copyright 2012 Stefan Roese <sr@denx.de>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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 __CONFIG_H
|
||||
#define __CONFIG_H
|
||||
|
||||
/*
|
||||
* High Level Configuration Options
|
||||
* (easy to change)
|
||||
*/
|
||||
|
||||
#define CONFIG_MPC5200
|
||||
#define CONFIG_MPC5xxx 1 /* This is an MPC5xxx CPU */
|
||||
#define CONFIG_A3M071 /* ... on A3M071 board */
|
||||
#define CONFIG_MPC5200_DDR /* ... use DDR RAM */
|
||||
|
||||
#define CONFIG_SYS_TEXT_BASE 0x01000000 /* boot low for 32 MiB boards */
|
||||
|
||||
#define CONFIG_SYS_MPC5XXX_CLKIN 33000000 /* ... running at 33MHz */
|
||||
|
||||
#define CONFIG_MISC_INIT_R
|
||||
#define CONFIG_SYS_LOWBOOT /* Enable lowboot */
|
||||
|
||||
/*
|
||||
* Serial console configuration
|
||||
*/
|
||||
#define CONFIG_PSC_CONSOLE 1 /* console is on PSC1 */
|
||||
#define CONFIG_BAUDRATE 115200 /* ... at 115200 bps */
|
||||
#define CONFIG_SYS_BAUDRATE_TABLE \
|
||||
{ 9600, 19200, 38400, 57600, 115200, 230400 }
|
||||
|
||||
/*
|
||||
* Command line configuration.
|
||||
*/
|
||||
#include <config_cmd_default.h>
|
||||
|
||||
#define CONFIG_CMD_BSP
|
||||
#define CONFIG_CMD_CACHE
|
||||
#define CONFIG_CMD_DATE
|
||||
#define CONFIG_CMD_EEPROM
|
||||
#define CONFIG_CMD_I2C
|
||||
#define CONFIG_CMD_MII
|
||||
#define CONFIG_CMD_REGINFO
|
||||
|
||||
/*
|
||||
* IPB Bus clocking configuration.
|
||||
*/
|
||||
#define CONFIG_SYS_IPBCLK_EQUALS_XLBCLK /* define for 133MHz speed */
|
||||
/* define for 66MHz speed - undef for 33MHz PCI clock speed */
|
||||
#undef CONFIG_SYS_PCICLK_EQUALS_IPBCLK_DIV2
|
||||
|
||||
/* pass open firmware flat tree */
|
||||
#define CONFIG_OF_LIBFDT
|
||||
#define CONFIG_OF_BOARD_SETUP
|
||||
|
||||
/* maximum size of the flat tree (8K) */
|
||||
#define OF_FLAT_TREE_MAX_SIZE 8192
|
||||
|
||||
#define OF_CPU "PowerPC,5200@0"
|
||||
#define OF_SOC "soc5200@f0000000"
|
||||
#define OF_TBCLK (bd->bi_busfreq / 4)
|
||||
#define OF_STDOUT_PATH "/soc5200@f0000000/serial@2000"
|
||||
|
||||
/*
|
||||
* I2C configuration
|
||||
*/
|
||||
#define CONFIG_HARD_I2C /* I2C with hardware support */
|
||||
#define CONFIG_SYS_I2C_MODULE 2 /* Select I2C module #1 or #2 */
|
||||
|
||||
#define CONFIG_SYS_I2C_SPEED 100000 /* 100 kHz */
|
||||
#define CONFIG_SYS_I2C_SLAVE 0x7F
|
||||
|
||||
/*
|
||||
* EEPROM configuration
|
||||
*/
|
||||
#define CONFIG_SYS_I2C_EEPROM_ADDR 0x53
|
||||
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
|
||||
#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 6
|
||||
#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
|
||||
|
||||
/*
|
||||
* RTC configuration
|
||||
*/
|
||||
#define CONFIG_RTC_PCF8563
|
||||
#define CONFIG_SYS_I2C_RTC_ADDR 0x51
|
||||
|
||||
/*
|
||||
* NOR flash configuration
|
||||
*/
|
||||
#define CONFIG_SYS_FLASH_BASE 0xfc000000
|
||||
#define CONFIG_SYS_FLASH_SIZE 0x01000000
|
||||
#define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x40000)
|
||||
|
||||
#define CONFIG_SYS_MAX_FLASH_BANKS 1
|
||||
#define CONFIG_SYS_MAX_FLASH_SECT 256
|
||||
#define CONFIG_SYS_FLASH_ERASE_TOUT 240000
|
||||
#define CONFIG_SYS_FLASH_WRITE_TOUT 500
|
||||
#define CONFIG_SYS_FLASH_LOCK_TOUT 5
|
||||
#define CONFIG_SYS_FLASH_UNLOCK_TOUT 10000
|
||||
#define CONFIG_SYS_FLASH_PROTECTION
|
||||
#define CONFIG_FLASH_CFI_DRIVER
|
||||
#define CONFIG_SYS_FLASH_CFI
|
||||
#define CONFIG_SYS_FLASH_EMPTY_INFO
|
||||
#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
|
||||
|
||||
/*
|
||||
* Environment settings
|
||||
*/
|
||||
#define CONFIG_ENV_IS_IN_FLASH
|
||||
#define CONFIG_ENV_SIZE 0x10000
|
||||
#define CONFIG_ENV_SECT_SIZE 0x20000
|
||||
#define CONFIG_ENV_OVERWRITE
|
||||
|
||||
/*
|
||||
* Memory map
|
||||
*/
|
||||
#define CONFIG_SYS_MBAR 0xf0000000
|
||||
#define CONFIG_SYS_SDRAM_BASE 0x00000000
|
||||
#define CONFIG_SYS_DEFAULT_MBAR 0x80000000
|
||||
|
||||
/* Use SRAM until RAM will be available */
|
||||
#define CONFIG_SYS_INIT_RAM_ADDR MPC5XXX_SRAM
|
||||
#define CONFIG_SYS_INIT_RAM_END MPC5XXX_SRAM_SIZE
|
||||
|
||||
|
||||
#define CONFIG_SYS_GBL_DATA_SIZE 128
|
||||
#define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - \
|
||||
CONFIG_SYS_GBL_DATA_SIZE)
|
||||
#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET
|
||||
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
|
||||
|
||||
#define CONFIG_SYS_MONITOR_LEN (256 << 10)
|
||||
#define CONFIG_SYS_MALLOC_LEN (1 << 20)
|
||||
#define CONFIG_SYS_BOOTMAPSZ (8 << 20)
|
||||
|
||||
/*
|
||||
* Ethernet configuration
|
||||
*/
|
||||
#define CONFIG_MPC5xxx_FEC
|
||||
#define CONFIG_MPC5xxx_FEC_MII100
|
||||
#define CONFIG_PHY_ADDR 0x00
|
||||
|
||||
/*
|
||||
* GPIO configuration
|
||||
*/
|
||||
|
||||
/*
|
||||
* GPIO-config depends on failsave-level
|
||||
* failsave 0 means just MPX-config, no digiboard, no fpga
|
||||
* 1 means digiboard ok
|
||||
* 2 means fpga ok
|
||||
*/
|
||||
|
||||
/* for failsave-level 0 - full failsave */
|
||||
#define CONFIG_SYS_GPS_PORT_CONFIG 0x1005C005
|
||||
/* for failsave-level 1 - only digiboard ok */
|
||||
#define CONFIG_SYS_GPS_PORT_CONFIG_1 0x1005C005
|
||||
/* for failsave-level 2 - all ok */
|
||||
#define CONFIG_SYS_GPS_PORT_CONFIG_2 0x1005C005
|
||||
|
||||
/*
|
||||
* Configuration matrix
|
||||
* MSB LSB
|
||||
* failsave 0 0x1005C005 00010000000001011100000001100101 ( full failsave )
|
||||
* failsave 1 0x1005C005 00010000000001011100000001100101 ( digib.-ver ok )
|
||||
* failsave 2 0x1005C005 00010000000001011100000001100101 ( all ok )
|
||||
* || ||| || | ||| | | | |
|
||||
* || ||| || | ||| | | | | bit rev name
|
||||
* ++-+++-++--+---+++-+---+---+---+- 0 31 CS1
|
||||
* +-+++-++--+---+++-+---+---+---+- 1 30 LPTZ
|
||||
* ||| || | ||| | | | | 2 29 ALTs
|
||||
* +++-++--+---+++-+---+---+---+- 3 28 ALTs
|
||||
* ++-++--+---+++-+---+---+---+- 4 27 CS7
|
||||
* +-++--+---+++-+---+---+---+- 5 26 CS6
|
||||
* || | ||| | | | | 6 25 ATA
|
||||
* ++--+---+++-+---+---+---+- 7 24 ATA
|
||||
* +--+---+++-+---+---+---+- 8 23 IR_USB_CLK
|
||||
* | ||| | | | | 9 22 IRDA
|
||||
* | ||| | | | | 10 21 IRDA
|
||||
* +---+++-+---+---+---+- 11 20 IRDA
|
||||
* ||| | | | | 12 19 Ether
|
||||
* ||| | | | | 13 18 Ether
|
||||
* ||| | | | | 14 17 Ether
|
||||
* +++-+---+---+---+- 15 16 Ether
|
||||
* ++-+---+---+---+- 16 15 PCI_DIS
|
||||
* +-+---+---+---+- 17 14 USB_SE
|
||||
* | | | | 18 13 USB
|
||||
* +---+---+---+- 19 12 USB
|
||||
* | | | 20 11 PSC3
|
||||
* | | | 21 10 PSC3
|
||||
* | | | 22 9 PSC3
|
||||
* +---+---+- 23 8 PSC3
|
||||
* | | 24 7 -
|
||||
* | | 25 6 PSC2
|
||||
* | | 26 5 PSC2
|
||||
* +---+- 27 4 PSC2
|
||||
* | 28 3 -
|
||||
* | 29 2 PSC1
|
||||
* | 30 1 PSC1
|
||||
* +- 31 0 PSC1
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Miscellaneous configurable options
|
||||
*/
|
||||
#define CONFIG_SYS_LONGHELP
|
||||
#define CONFIG_SYS_PROMPT "=> "
|
||||
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
#define CONFIG_SYS_HUSH_PARSER
|
||||
#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
|
||||
|
||||
#if defined(CONFIG_CMD_KGDB)
|
||||
#define CONFIG_SYS_CBSIZE 1024
|
||||
#else
|
||||
#define CONFIG_SYS_CBSIZE 256
|
||||
#endif
|
||||
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
|
||||
#define CONFIG_SYS_MAXARGS 16
|
||||
#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
|
||||
|
||||
#define CONFIG_SYS_MEMTEST_START 0x00100000
|
||||
#define CONFIG_SYS_MEMTEST_END 0x00f00000
|
||||
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x00100000
|
||||
|
||||
#define CONFIG_SYS_HZ 1000
|
||||
#define CONFIG_LOOPW
|
||||
#define CONFIG_SYS_CONSOLE_INFO_QUIET /* don't print console @ startup*/
|
||||
|
||||
/*
|
||||
* Various low-level settings
|
||||
*/
|
||||
#define CONFIG_SYS_HID0_INIT (HID0_ICE | HID0_ICFI)
|
||||
#define CONFIG_SYS_HID0_FINAL HID0_ICE
|
||||
|
||||
#define CONFIG_SYS_BOOTCS_START CONFIG_SYS_FLASH_BASE
|
||||
#define CONFIG_SYS_BOOTCS_SIZE CONFIG_SYS_FLASH_SIZE
|
||||
#define CONFIG_SYS_CS0_START CONFIG_SYS_FLASH_BASE
|
||||
#define CONFIG_SYS_CS0_SIZE CONFIG_SYS_FLASH_SIZE
|
||||
#define CONFIG_SYS_CS2_START 0xe0000000
|
||||
#define CONFIG_SYS_CS2_SIZE 0x00100000
|
||||
|
||||
/* FPGA slave io (512kiB) - see ticket #66 */
|
||||
#define CONFIG_SYS_CS3_START 0xE9000000
|
||||
#define CONFIG_SYS_CS3_SIZE 0x00080000
|
||||
/* 00000000 00110010 1 0 1 1 10 01 00 00 0 0 0 0 = 0x0032B900 */
|
||||
#define CONFIG_SYS_CS3_CFG 0x0032B900
|
||||
|
||||
/* Diagnosis Interface - see ticket #63 */
|
||||
#define CONFIG_SYS_CS4_START 0xEA000000
|
||||
#define CONFIG_SYS_CS4_SIZE 0x00000001
|
||||
/* 00000000 00000010 1 0 1 1 10 01 00 00 0 0 0 0 = 0x0002B900 */
|
||||
#define CONFIG_SYS_CS4_CFG 0x0002B900
|
||||
|
||||
/* FPGA master io (64kiB) - see ticket #66 */
|
||||
#define CONFIG_SYS_CS5_START 0xE8000000
|
||||
#define CONFIG_SYS_CS5_SIZE 0x00010000
|
||||
/* 00000000 00110010 1 0 1 1 10 01 00 00 0 0 0 0 = 0x0032B900 */
|
||||
#define CONFIG_SYS_CS5_CFG 0x0032B900
|
||||
|
||||
#ifdef CONFIG_SYS_PCICLK_EQUALS_IPBCLK_DIV2 /* for pci_clk = 66 MHz */
|
||||
#define CONFIG_SYS_BOOTCS_CFG 0x0006F900
|
||||
#define CONFIG_SYS_CS1_CFG 0x0004FB00
|
||||
#define CONFIG_SYS_CS2_CFG 0x0006F90C
|
||||
#else /* for pci_clk = 33 MHz */
|
||||
#define CONFIG_SYS_BOOTCS_CFG 0x0002F900
|
||||
#define CONFIG_SYS_CS1_CFG 0x0001FB00
|
||||
#define CONFIG_SYS_CS2_CFG 0x0002F90C
|
||||
#endif
|
||||
|
||||
#define CONFIG_SYS_CS_BURST 0x00000000
|
||||
/* set DC for FPGA CS5 and CS3 to 0 - see ticket #66 */
|
||||
/* R 7 R 6 R 5 R 4 R 3 R 2 R 1 R 0 */
|
||||
/* 00 11 00 11 00 00 00 11 00 00 00 00 00 00 00 00 */
|
||||
#define CONFIG_SYS_CS_DEADCYCLE 0x33030000
|
||||
|
||||
#define CONFIG_SYS_RESET_ADDRESS 0xff000000
|
||||
|
||||
/*
|
||||
* Environment Configuration
|
||||
*/
|
||||
|
||||
#define CONFIG_BOOTDELAY 0 /* -1 disables auto-boot */
|
||||
#undef CONFIG_BOOTARGS
|
||||
#define CONFIG_ZERO_BOOTDELAY_CHECK
|
||||
|
||||
#define CONFIG_PREBOOT "echo;" \
|
||||
"echo Type \"run flash_mtd\" to boot from flash with mtd filesystem;" \
|
||||
"echo Type \"run net_nfs\" to boot from tftp with nfs filesystem;" \
|
||||
"echo"
|
||||
|
||||
#undef CONFIG_BOOTARGS
|
||||
|
||||
#define CONFIG_SYS_OS_BASE 0xfc080000
|
||||
#define CONFIG_SYS_FDT_BASE 0xfc060000
|
||||
|
||||
#define xstr(s) str(s)
|
||||
#define str(s) #s
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"netdev=eth0\0" \
|
||||
"verify=no\0" \
|
||||
"consoledev=ttyPSC0\0" \
|
||||
"nfsargs=setenv bootargs root=/dev/nfs rw " \
|
||||
"nfsroot=${serverip}:${rootpath}\0" \
|
||||
"ramargs=setenv bootargs root=/dev/ram rw\0" \
|
||||
"mtdargs=setenv bootargs root=/dev/mtdblock4 rw rootfstype=jffs2\0"\
|
||||
"addip=setenv bootargs ${bootargs} " \
|
||||
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
|
||||
":${hostname}:${netdev}:off panic=1\0" \
|
||||
"addtty=setenv bootargs ${bootargs} " \
|
||||
"console=${consoledev},${baudrate}\0" \
|
||||
"flash_nfs=run nfsargs addip addtty;" \
|
||||
"bootm ${kernel_addr} - ${fdtaddr}\0" \
|
||||
"flash_mtd=run mtdargs addip addtty;" \
|
||||
"bootm ${kernel_addr} - ${fdtaddr}\0" \
|
||||
"flash_self=run ramargs addip addtty;" \
|
||||
"bootm ${kernel_addr} ${ramdisk_addr} ${fdtaddr}\0" \
|
||||
"net_nfs=sleep 2; tftp ${loadaddr} ${bootfile};" \
|
||||
"tftp c00000 ${fdtfile};" \
|
||||
"run nfsargs addip addtty;" \
|
||||
"bootm ${loadaddr} - c00000\0" \
|
||||
"load=tftp ${loadaddr} u-boot.bin\0" \
|
||||
"update=protect off fc000000 fc03ffff; " \
|
||||
"era fc000000 fc03ffff; cp.b ${loadaddr} fc000000 40000\0"\
|
||||
"upd=run load;run update\0" \
|
||||
"fdtaddr=" xstr(CONFIG_SYS_FDT_BASE) "\0" \
|
||||
"fdtfile=dtbFile\0" \
|
||||
"kernel_addr=" xstr(CONFIG_SYS_OS_BASE) "\0" \
|
||||
""
|
||||
|
||||
#define CONFIG_BOOTCOMMAND "run flash_mtd"
|
||||
|
||||
/*
|
||||
* SPL related defines
|
||||
*/
|
||||
#define CONFIG_SPL
|
||||
#define CONFIG_SPL_FRAMEWORK
|
||||
#define CONFIG_SPL_NOR_SUPPORT
|
||||
#define CONFIG_SPL_TEXT_BASE 0xfc000000
|
||||
#define CONFIG_SPL_START_S_PATH "arch/powerpc/cpu/mpc5xxx"
|
||||
#define CONFIG_SPL_LDSCRIPT "arch/powerpc/cpu/mpc5xxx/u-boot-spl.lds"
|
||||
#define CONFIG_SPL_LIBCOMMON_SUPPORT /* image.c */
|
||||
#define CONFIG_SPL_LIBGENERIC_SUPPORT /* string.c */
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
|
||||
/* Place BSS for SPL near end of SDRAM */
|
||||
#define CONFIG_SPL_BSS_START_ADDR ((128 - 1) << 20)
|
||||
#define CONFIG_SPL_BSS_MAX_SIZE (64 << 10)
|
||||
|
||||
#define CONFIG_SPL_OS_BOOT
|
||||
/* Place patched DT blob (fdt) at this address */
|
||||
#define CONFIG_SYS_SPL_ARGS_ADDR 0x01800000
|
||||
|
||||
/* Settings for real U-Boot to be loaded from NOR flash */
|
||||
#ifndef __ASSEMBLY__
|
||||
extern char __spl_flash_end[];
|
||||
#endif
|
||||
#define CONFIG_SYS_UBOOT_BASE __spl_flash_end
|
||||
#define CONFIG_SYS_SPL_MAX_LEN (32 << 10)
|
||||
#define CONFIG_SYS_UBOOT_START 0x1000100
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
@@ -257,6 +257,33 @@
|
||||
#define CONFIG_SKIP_LOWLEVEL_INIT
|
||||
#endif
|
||||
|
||||
/*
|
||||
* USB configuration
|
||||
*/
|
||||
#define CONFIG_USB_MUSB_DSPS
|
||||
#define CONFIG_ARCH_MISC_INIT
|
||||
#define CONFIG_MUSB_GADGET
|
||||
#define CONFIG_MUSB_PIO_ONLY
|
||||
#define CONFIG_USB_GADGET_DUALSPEED
|
||||
#define CONFIG_MUSB_HOST
|
||||
#define CONFIG_AM335X_USB0
|
||||
#define CONFIG_AM335X_USB0_MODE MUSB_PERIPHERAL
|
||||
#define CONFIG_AM335X_USB1
|
||||
#define CONFIG_AM335X_USB1_MODE MUSB_HOST
|
||||
|
||||
#ifdef CONFIG_MUSB_HOST
|
||||
#define CONFIG_CMD_USB
|
||||
#define CONFIG_USB_STORAGE
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MUSB_GADGET
|
||||
#define CONFIG_USB_ETHER
|
||||
#define CONFIG_USB_ETH_RNDIS
|
||||
#endif /* CONFIG_MUSB_GADGET */
|
||||
|
||||
/* Unsupported features */
|
||||
#undef CONFIG_USE_IRQ
|
||||
|
||||
#define CONFIG_CMD_NET
|
||||
#define CONFIG_CMD_DHCP
|
||||
#define CONFIG_CMD_PING
|
||||
|
||||
@@ -337,6 +337,9 @@
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
|
||||
@@ -97,15 +97,16 @@
|
||||
|
||||
/*
|
||||
* USB configuration
|
||||
* Enable CONFIG_MUSB_HCD for Host functionalities MSC, keyboard
|
||||
* Enable CONFIG_MUSB_UDC for Device functionalities.
|
||||
* Enable CONFIG_MUSB_HOST for Host functionalities MSC, keyboard
|
||||
* Enable CONFIG_MUSB_GADGET for Device functionalities.
|
||||
*/
|
||||
#define CONFIG_USB_AM35X 1
|
||||
#define CONFIG_MUSB_HCD 1
|
||||
#define CONFIG_USB_MUSB_AM35X
|
||||
#define CONFIG_MUSB_HOST
|
||||
#define CONFIG_MUSB_PIO_ONLY
|
||||
|
||||
#ifdef CONFIG_USB_AM35X
|
||||
#ifdef CONFIG_USB_MUSB_AM35X
|
||||
|
||||
#ifdef CONFIG_MUSB_HCD
|
||||
#ifdef CONFIG_MUSB_HOST
|
||||
#define CONFIG_CMD_USB
|
||||
|
||||
#define CONFIG_USB_STORAGE
|
||||
@@ -117,21 +118,15 @@
|
||||
#define CONFIG_PREBOOT "usb start"
|
||||
#endif /* CONFIG_USB_KEYBOARD */
|
||||
|
||||
#endif /* CONFIG_MUSB_HCD */
|
||||
#endif /* CONFIG_MUSB_HOST */
|
||||
|
||||
#ifdef CONFIG_MUSB_UDC
|
||||
/* USB device configuration */
|
||||
#define CONFIG_USB_DEVICE 1
|
||||
#define CONFIG_USB_TTY 1
|
||||
#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
|
||||
/* Change these to suit your needs */
|
||||
#define CONFIG_USBD_VENDORID 0x0451
|
||||
#define CONFIG_USBD_PRODUCTID 0x5678
|
||||
#define CONFIG_USBD_MANUFACTURER "Texas Instruments"
|
||||
#define CONFIG_USBD_PRODUCT_NAME "AM3517EVM"
|
||||
#endif /* CONFIG_MUSB_UDC */
|
||||
#ifdef CONFIG_MUSB_GADGET
|
||||
#define CONFIG_USB_GADGET_DUALSPEED
|
||||
#define CONFIG_USB_ETHER
|
||||
#define CONFIG_USB_ETH_RNDIS
|
||||
#endif /* CONFIG_MUSB_GADGET */
|
||||
|
||||
#endif /* CONFIG_USB_AM35X */
|
||||
#endif /* CONFIG_USB_MUSB_AM35X */
|
||||
|
||||
/* commands to include */
|
||||
#include <config_cmd_default.h>
|
||||
@@ -336,6 +331,9 @@
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
|
||||
@@ -168,8 +168,7 @@
|
||||
#define CONFIG_BOOTCOMMAND "nand read " \
|
||||
"0x22000000 0x200000 0x300000; " \
|
||||
"bootm 0x22000000"
|
||||
#else
|
||||
#ifdef CONFIG_SYS_USE_SPIFLASH
|
||||
#elif defined(CONFIG_SYS_USE_SPIFLASH)
|
||||
/* bootstrap + u-boot + env + linux in spi flash */
|
||||
#define CONFIG_ENV_IS_IN_SPI_FLASH
|
||||
#define CONFIG_ENV_OFFSET 0x5000
|
||||
@@ -179,14 +178,28 @@
|
||||
#define CONFIG_BOOTCOMMAND "sf probe 0; " \
|
||||
"sf read 0x22000000 0x100000 0x300000; " \
|
||||
"bootm 0x22000000"
|
||||
#endif
|
||||
#else /* CONFIG_SYS_USE_MMC */
|
||||
/* bootstrap + u-boot + env + linux in mmc */
|
||||
#define CONFIG_ENV_IS_IN_MMC
|
||||
/* For FAT system, most cases it should be in the reserved sector */
|
||||
#define CONFIG_ENV_OFFSET 0x2000
|
||||
#define CONFIG_ENV_SIZE 0x1000
|
||||
#define CONFIG_SYS_MMC_ENV_DEV 0
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SYS_USE_MMC
|
||||
#define CONFIG_BOOTARGS "mem=128M console=ttyS0,115200 " \
|
||||
"mtdparts=atmel_nand:" \
|
||||
"8M(bootstrap/uboot/kernel)ro,-(rootfs) " \
|
||||
"root=/dev/mmcblk0p2 " \
|
||||
"rw rootfstype=ext4 rootwait"
|
||||
#else
|
||||
#define CONFIG_BOOTARGS "mem=128M console=ttyS0,115200 " \
|
||||
"mtdparts=atmel_nand:" \
|
||||
"8M(bootstrap/uboot/kernel)ro,-(rootfs) " \
|
||||
"root=/dev/mtdblock1 rw " \
|
||||
"rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs"
|
||||
#endif
|
||||
|
||||
#define CONFIG_BAUDRATE 115200
|
||||
|
||||
|
||||
@@ -219,6 +219,9 @@
|
||||
#define CONFIG_SPL_BOARD_INIT
|
||||
#define CONFIG_SPL_LIBGENERIC_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_NAND_SIMPLE
|
||||
#define CONFIG_SYS_NAND_HW_ECC_OOBFIRST
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
|
||||
@@ -35,9 +35,13 @@
|
||||
* (easy to change)
|
||||
*/
|
||||
#define CONFIG_SYS_COREBOOT
|
||||
#undef CONFIG_SHOW_BOOT_PROGRESS
|
||||
#define CONFIG_SHOW_BOOT_PROGRESS
|
||||
#define CONFIG_LAST_STAGE_INIT
|
||||
|
||||
#define CONFIG_X86_NO_RESET_VECTOR
|
||||
#define CONFIG_SYS_VSNPRINTF
|
||||
#define CONFIG_INTEL_CORE_ARCH /* Sandy bridge and ivy bridge chipsets. */
|
||||
#define CONFIG_ZBOOT_32
|
||||
#define CONFIG_PHYSMEM
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Watchdog Configuration
|
||||
@@ -67,11 +71,16 @@
|
||||
CONFIG_SYS_SCSI_MAX_LUN)
|
||||
#endif
|
||||
|
||||
/* Generic TPM interfaced through LPC bus */
|
||||
#define CONFIG_GENERIC_LPC_TPM
|
||||
#define CONFIG_TPM_TIS_BASE_ADDRESS 0xfed40000
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Real Time Clock Configuration
|
||||
*/
|
||||
#define CONFIG_RTC_MC146818
|
||||
#define CONFIG_SYS_ISA_IO_BASE_ADDRESS 0
|
||||
#define CONFIG_SYS_ISA_IO CONFIG_SYS_ISA_IO_BASE_ADDRESS
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Serial Configuration
|
||||
@@ -88,18 +97,18 @@
|
||||
#define CONFIG_SYS_NS16550_COM2 UART1_BASE
|
||||
#define CONFIG_SYS_NS16550_PORT_MAPPED
|
||||
|
||||
/* max. 1 IDE bus */
|
||||
#define CONFIG_SYS_IDE_MAXBUS 1
|
||||
/* max. 1 drive per IDE bus */
|
||||
#define CONFIG_SYS_IDE_MAXDEVICE (CONFIG_SYS_IDE_MAXBUS * 1)
|
||||
#define CONFIG_STD_DEVICES_SETTINGS "stdin=usbkbd,vga,eserial0\0" \
|
||||
"stdout=vga,eserial0,cbmem\0" \
|
||||
"stderr=vga,eserial0,cbmem\0"
|
||||
|
||||
#define CONFIG_SYS_ATA_BASE_ADDR CONFIG_SYS_ISA_IO_BASE_ADDRESS
|
||||
#define CONFIG_SYS_ATA_IDE0_OFFSET 0x01f0
|
||||
#define CONFIG_SYS_ATA_IDE1_OFFSET 0x0170
|
||||
#define CONFIG_SYS_ATA_DATA_OFFSET 0
|
||||
#define CONFIG_SYS_ATA_REG_OFFSET 0
|
||||
#define CONFIG_SYS_ATA_ALT_OFFSET 0x200
|
||||
#define CONFIG_CONSOLE_MUX
|
||||
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
|
||||
#define CONFIG_SYS_STDIO_DEREGISTER
|
||||
#define CONFIG_CBMEM_CONSOLE
|
||||
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
#define CONFIG_COMMAND_HISTORY
|
||||
#define CONFIG_AUTOCOMPLETE
|
||||
|
||||
#define CONFIG_SUPPORT_VFAT
|
||||
/************************************************************
|
||||
@@ -110,19 +119,30 @@
|
||||
/************************************************************
|
||||
* DISK Partition support
|
||||
************************************************************/
|
||||
#define CONFIG_EFI_PARTITION
|
||||
#define CONFIG_DOS_PARTITION
|
||||
#define CONFIG_MAC_PARTITION
|
||||
#define CONFIG_ISO_PARTITION /* Experimental */
|
||||
|
||||
#define CONFIG_CMD_PART
|
||||
#define CONFIG_CMD_CBFS
|
||||
#define CONFIG_CMD_EXT4
|
||||
#define CONFIG_CMD_EXT4_WRITE
|
||||
#define CONFIG_PARTITION_UUIDS
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Video Configuration
|
||||
*/
|
||||
#undef CONFIG_VIDEO
|
||||
#undef CONFIG_CFB_CONSOLE
|
||||
#define CONFIG_VIDEO
|
||||
#define CONFIG_VIDEO_COREBOOT
|
||||
#define CONFIG_VIDEO_SW_CURSOR
|
||||
#define VIDEO_FB_16BPP_WORD_SWAP
|
||||
#define CONFIG_I8042_KBD
|
||||
#define CONFIG_CFB_CONSOLE
|
||||
#define CONFIG_SYS_CONSOLE_INFO_QUIET
|
||||
|
||||
/* x86 GPIOs are accessed through a PCI device */
|
||||
#define CONFIG_INTEL_ICH6_GPIO
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Command line configuration.
|
||||
@@ -136,6 +156,7 @@
|
||||
#define CONFIG_CMD_ECHO
|
||||
#undef CONFIG_CMD_FLASH
|
||||
#define CONFIG_CMD_FPGA
|
||||
#define CONFIG_CMD_GPIO
|
||||
#define CONFIG_CMD_IMI
|
||||
#undef CONFIG_CMD_IMLS
|
||||
#define CONFIG_CMD_IRQ
|
||||
@@ -153,12 +174,19 @@
|
||||
#define CONFIG_CMD_SETGETDCR
|
||||
#define CONFIG_CMD_SOURCE
|
||||
#define CONFIG_CMD_XIMG
|
||||
#define CONFIG_CMD_IDE
|
||||
#define CONFIG_CMD_SCSI
|
||||
|
||||
#define CONFIG_CMD_FAT
|
||||
#define CONFIG_CMD_EXT2
|
||||
|
||||
#define CONFIG_CMD_ZBOOT
|
||||
|
||||
#define CONFIG_BOOTDELAY 2
|
||||
#define CONFIG_BOOTARGS "root=/dev/mtdblock0 console=ttyS0,9600"
|
||||
#define CONFIG_BOOTARGS \
|
||||
"root=/dev/sdb3 init=/sbin/init rootwait ro"
|
||||
#define CONFIG_BOOTCOMMAND \
|
||||
"ext2load scsi 0:3 01000000 /boot/vmlinuz; zboot 01000000"
|
||||
|
||||
|
||||
#if defined(CONFIG_CMD_KGDB)
|
||||
#define CONFIG_KGDB_BAUDRATE 115200
|
||||
@@ -210,12 +238,11 @@
|
||||
* (128kB + Environment Sector Size) malloc pool
|
||||
*/
|
||||
#define CONFIG_SYS_STACK_SIZE (32 * 1024)
|
||||
#define CONFIG_SYS_INIT_SP_ADDR (256 * 1024 + 16 * 1024)
|
||||
#define CONFIG_SYS_CAR_ADDR 0x19200000
|
||||
#define CONFIG_SYS_CAR_SIZE (16 * 1024)
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
|
||||
#define CONFIG_SYS_MONITOR_LEN (256 * 1024)
|
||||
#define CONFIG_SYS_MALLOC_LEN (0x20000 + 128 * 1024)
|
||||
/* Address of temporary Global Data */
|
||||
#define CONFIG_SYS_INIT_GD_ADDR (256 * 1024)
|
||||
|
||||
|
||||
/* allow to overwrite serial and ethaddr */
|
||||
@@ -240,4 +267,7 @@
|
||||
*/
|
||||
#define CONFIG_PCI
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
CONFIG_STD_DEVICES_SETTINGS
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
|
||||
@@ -549,7 +549,7 @@
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xFFE00000
|
||||
#else
|
||||
#define CONFIG_SYS_QE_FMAN_FW_IN_NOR
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEF000000
|
||||
#define CONFIG_SYS_QE_FMAN_FW_ADDR 0xEFF40000
|
||||
#endif
|
||||
#define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000
|
||||
#define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
|
||||
|
||||
@@ -227,6 +227,9 @@
|
||||
#define CONFIG_SYS_NAND_ECCBYTES 10
|
||||
#define CONFIG_SYS_NAND_OOBSIZE 64
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_NAND_SIMPLE
|
||||
#define CONFIG_SPL_NAND_LOAD
|
||||
#endif
|
||||
|
||||
@@ -316,6 +316,9 @@
|
||||
#define CONFIG_SPL_GPIO_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_MMC_SUPPORT
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
@@ -168,16 +168,10 @@
|
||||
#define CONFIG_SYS_STACK_SIZE (32 * 1024)
|
||||
#define CONFIG_SYS_CAR_ADDR 0x19200000
|
||||
#define CONFIG_SYS_CAR_SIZE (16 * 1024)
|
||||
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_CAR_ADDR + \
|
||||
CONFIG_SYS_CAR_SIZE)
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
|
||||
#define CONFIG_SYS_MONITOR_LEN (256 * 1024)
|
||||
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SECT_SIZE + \
|
||||
128*1024)
|
||||
/* Address of temporary Global Data */
|
||||
#define CONFIG_SYS_INIT_GD_ADDR CONFIG_SYS_CAR_ADDR
|
||||
|
||||
|
||||
/* allow to overwrite serial and ethaddr */
|
||||
#define CONFIG_ENV_OVERWRITE
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
|
||||
#define CONFIG_MCFUART
|
||||
#define CONFIG_SYS_UART_PORT (0)
|
||||
#define CONFIG_BAUDRATE 9600
|
||||
#define CONFIG_BAUDRATE 115200
|
||||
|
||||
#undef CONFIG_MONITOR_IS_IN_RAM /* starts uboot direct */
|
||||
|
||||
@@ -52,20 +52,24 @@
|
||||
#define CONFIG_RESET_TO_RETRY
|
||||
#define CONFIG_SPLASH_SCREEN
|
||||
|
||||
#define CONFIG_HW_WATCHDOG
|
||||
|
||||
#define CONFIG_STATUS_LED
|
||||
#define CONFIG_BOARD_SPECIFIC_LED
|
||||
#define STATUS_LED_ACTIVE 0
|
||||
#define STATUS_LED_BIT 0x0008 /* Timer7 GPIO */
|
||||
#define STATUS_LED_BOOT 0
|
||||
#define STATUS_LED_PERIOD (CONFIG_SYS_HZ / 2)
|
||||
#define STATUS_LED_STATE STATUS_LED_OFF
|
||||
|
||||
/*----------------------------------------------------------------------*
|
||||
* Configuration for environment *
|
||||
* Environment is in the second sector of the first 256k of flash *
|
||||
*----------------------------------------------------------------------*/
|
||||
|
||||
#ifndef CONFIG_MONITOR_IS_IN_RAM
|
||||
#define CONFIG_ENV_ADDR 0xF003C000 /* End of 256K */
|
||||
#define CONFIG_ENV_SECT_SIZE 0x4000
|
||||
#define CONFIG_ENV_ADDR 0xFF040000
|
||||
#define CONFIG_ENV_SECT_SIZE 0x00020000
|
||||
#define CONFIG_ENV_IS_IN_FLASH 1
|
||||
#else
|
||||
#define CONFIG_ENV_ADDR 0xFFE04000
|
||||
#define CONFIG_ENV_SECT_SIZE 0x2000
|
||||
#define CONFIG_ENV_IS_IN_FLASH 1
|
||||
#endif
|
||||
|
||||
/*
|
||||
* BOOTP options
|
||||
@@ -78,26 +82,24 @@
|
||||
/*
|
||||
* Command line configuration.
|
||||
*/
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
#include <config_cmd_default.h>
|
||||
|
||||
#undef CONFIG_CMD_LOADB
|
||||
#define CONFIG_CMD_DATE
|
||||
#define CONFIG_CMD_DHCP
|
||||
#define CONFIG_CMD_I2C
|
||||
#define CONFIG_CMD_LED
|
||||
#define CONFIG_CMD_MII
|
||||
#define CONFIG_CMD_NET
|
||||
|
||||
#define CONFIG_MCFTMR
|
||||
|
||||
|
||||
#define CONFIG_BOOTDELAY 5
|
||||
#define CONFIG_SYS_HUSH_PARSER
|
||||
#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
|
||||
#define CONFIG_SYS_PROMPT "\nEB+CPU5282> "
|
||||
#define CONFIG_SYS_LONGHELP 1
|
||||
|
||||
#if defined(CONFIG_CMD_KGDB)
|
||||
#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
|
||||
#else
|
||||
#define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */
|
||||
#endif
|
||||
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
|
||||
#define CONFIG_SYS_MAXARGS 16 /* max number of command args */
|
||||
#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
|
||||
@@ -112,12 +114,12 @@
|
||||
/*----------------------------------------------------------------------*
|
||||
* Clock and PLL Configuration *
|
||||
*----------------------------------------------------------------------*/
|
||||
#define CONFIG_SYS_HZ 10000000
|
||||
#define CONFIG_SYS_CLK 58982400 /* 9,8304MHz * 6 */
|
||||
#define CONFIG_SYS_HZ 1000
|
||||
#define CONFIG_SYS_CLK 80000000 /* 8MHz * 8 */
|
||||
|
||||
/* PLL Configuration: Ext Clock * 6 (see table 9-4 of MCF user manual) */
|
||||
/* PLL Configuration: Ext Clock * 8 (see table 9-4 of MCF user manual) */
|
||||
|
||||
#define CONFIG_SYS_MFD 0x01 /* PLL Multiplication Factor Devider */
|
||||
#define CONFIG_SYS_MFD 0x02 /* PLL Multiplication Factor Devider */
|
||||
#define CONFIG_SYS_RFD 0x00 /* PLL Reduce Frecuency Devider */
|
||||
|
||||
/*----------------------------------------------------------------------*
|
||||
@@ -135,7 +137,6 @@
|
||||
#define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE
|
||||
#define MCFFEC_TOUT_LOOP 50000
|
||||
|
||||
#define CONFIG_ETHADDR 00:CF:52:82:EB:01
|
||||
#define CONFIG_OVERWRITE_ETHADDR_ONCE
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
@@ -151,7 +152,7 @@
|
||||
*-----------------------------------------------------------------------*/
|
||||
|
||||
#define CONFIG_SYS_INIT_RAM_ADDR 0x20000000
|
||||
#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
|
||||
#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
|
||||
#define CONFIG_SYS_GBL_DATA_OFFSET \
|
||||
(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
|
||||
#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET
|
||||
@@ -161,12 +162,11 @@
|
||||
* (Set up by the startup code)
|
||||
* Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
|
||||
*/
|
||||
#define CONFIG_SYS_SDRAM_BASE1 0x00000000
|
||||
#define CONFIG_SYS_SDRAM_SIZE1 16 /* SDRAM size in MB */
|
||||
|
||||
#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_BASE1
|
||||
#define CONFIG_SYS_SDRAM_SIZE CONFIG_SYS_SDRAM_SIZE1
|
||||
#define CONFIG_SYS_SDRAM_BASE0 0x00000000
|
||||
#define CONFIG_SYS_SDRAM_SIZE0 16 /* SDRAM size in MB */
|
||||
|
||||
#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_BASE0
|
||||
#define CONFIG_SYS_SDRAM_SIZE CONFIG_SYS_SDRAM_SIZE0
|
||||
|
||||
/* If M5282 port is fully implemented the monitor base will be behind
|
||||
* the vector table. */
|
||||
@@ -190,16 +190,24 @@
|
||||
/*-----------------------------------------------------------------------
|
||||
* FLASH organization
|
||||
*/
|
||||
#define CONFIG_FLASH_SHOW_PROGRESS 45
|
||||
|
||||
#define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE
|
||||
#define CONFIG_SYS_INT_FLASH_BASE 0xF0000000
|
||||
#define CONFIG_SYS_INT_FLASH_ENABLE 0x21
|
||||
|
||||
#define CONFIG_SYS_MAX_FLASH_SECT 35
|
||||
#define CONFIG_SYS_MAX_FLASH_BANKS 2
|
||||
#define CONFIG_SYS_MAX_FLASH_SECT 128
|
||||
#define CONFIG_SYS_MAX_FLASH_BANKS 1
|
||||
#define CONFIG_SYS_FLASH_ERASE_TOUT 10000000
|
||||
#define CONFIG_SYS_FLASH_PROTECTION
|
||||
|
||||
#define CONFIG_SYS_FLASH_CFI
|
||||
#define CONFIG_FLASH_CFI_DRIVER
|
||||
#define CONFIG_SYS_FLASH_SIZE 16*1024*1024
|
||||
#define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT
|
||||
|
||||
#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Cache Configuration
|
||||
*/
|
||||
@@ -221,12 +229,16 @@
|
||||
* Memory bank definitions
|
||||
*/
|
||||
|
||||
#define CONFIG_SYS_CS0_BASE 0xFFE00000
|
||||
#define CONFIG_SYS_CS0_BASE 0xFF000000
|
||||
#define CONFIG_SYS_CS0_CTRL 0x00001980
|
||||
#define CONFIG_SYS_CS0_MASK 0x001F0001
|
||||
#define CONFIG_SYS_CS0_MASK 0x00FF0001
|
||||
|
||||
#define CONFIG_SYS_CS3_BASE 0xE0000000
|
||||
#define CONFIG_SYS_CS0_CTRL 0x00001980
|
||||
#define CONFIG_SYS_CS2_BASE 0xE0000000
|
||||
#define CONFIG_SYS_CS2_CTRL 0x00001980
|
||||
#define CONFIG_SYS_CS2_MASK 0x000F0001
|
||||
|
||||
#define CONFIG_SYS_CS3_BASE 0xE0100000
|
||||
#define CONFIG_SYS_CS3_CTRL 0x00001980
|
||||
#define CONFIG_SYS_CS3_MASK 0x000F0001
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
@@ -248,11 +260,30 @@
|
||||
#define CONFIG_SYS_PCDDR 0x0000000
|
||||
#define CONFIG_SYS_PCDAT 0x0000000
|
||||
|
||||
#define CONFIG_SYS_PASPAR 0x0F0F
|
||||
#define CONFIG_SYS_PEHLPAR 0xC0
|
||||
#define CONFIG_SYS_PUAPAR 0x0F
|
||||
#define CONFIG_SYS_DDRUA 0x05
|
||||
#define CONFIG_SYS_PJPAR 0xFF
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* I2C
|
||||
*/
|
||||
|
||||
#define CONFIG_HARD_I2C
|
||||
#define CONFIG_FSL_I2C
|
||||
|
||||
#define CONFIG_SYS_I2C_OFFSET 0x00000300
|
||||
#define CONFIG_SYS_IMMR CONFIG_SYS_MBAR
|
||||
|
||||
#define CONFIG_SYS_I2C_SPEED 100000
|
||||
#define CONFIG_SYS_I2C_SLAVE 0
|
||||
|
||||
#ifdef CONFIG_CMD_DATE
|
||||
#define CONFIG_RTC_DS1338
|
||||
#define CONFIG_I2C_RTC_ADDR 0x68
|
||||
#endif
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* VIDEO configuration
|
||||
*/
|
||||
@@ -260,12 +291,11 @@
|
||||
#define CONFIG_VIDEO
|
||||
|
||||
#ifdef CONFIG_VIDEO
|
||||
#define CONFIG_VIDEO_VCXK 1
|
||||
#define CONFIG_VIDEO_VCXK 1
|
||||
|
||||
#define CONFIG_SYS_VCXK_DEFAULT_LINEALIGN 2
|
||||
#define CONFIG_SYS_VCXK_DOUBLEBUFFERED 1
|
||||
#define CONFIG_SYS_VCXK_BASE CONFIG_SYS_CS3_BASE
|
||||
#define CONFIG_SYS_VCXK_AUTODETECT 1
|
||||
#define CONFIG_SYS_VCXK_BASE CONFIG_SYS_CS2_BASE
|
||||
|
||||
#define CONFIG_SYS_VCXK_ACKNOWLEDGE_PORT MCFGPTB_GPTPORT
|
||||
#define CONFIG_SYS_VCXK_ACKNOWLEDGE_DDR MCFGPTB_GPTDDR
|
||||
|
||||
@@ -371,7 +371,6 @@
|
||||
#define CONFIG_CLOCKS_IN_MHZ 1 /* clocks passsed to Linux in MHz */
|
||||
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x00100000 /* default load address */
|
||||
#define CONFIG_SYS_TFTP_LOADADDR 0x00100000 /* default load address for network file downloads */
|
||||
|
||||
#define CONFIG_SYS_HZ 1000 /* decrementer freq: 1 ms ticks */
|
||||
|
||||
|
||||
@@ -63,6 +63,9 @@
|
||||
#define CONFIG_SPL_FRAMEWORK
|
||||
#define CONFIG_SPL_BOARD_INIT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_NAND_SIMPLE
|
||||
#define CONFIG_SPL_LIBGENERIC_SUPPORT /* for udelay and __div64_32 for NAND */
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* Copyright (C) 2011-2012
|
||||
* Gerald Kerma <dreagle@doukki.net>
|
||||
* Luka Perkov <uboot@lukaperkov.net>
|
||||
* Luka Perkov <luka@openwrt.org>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* (C) Copyright 2009-2012
|
||||
* Wojciech Dubowik <wojciech.dubowik@neratec.com>
|
||||
* Luka Perkov <uboot@lukaperkov.net>
|
||||
* Luka Perkov <luka@openwrt.org>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
|
||||
@@ -338,6 +338,9 @@
|
||||
|
||||
#ifdef CONFIG_BOOT_NAND
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
|
||||
/* NAND boot config */
|
||||
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
|
||||
|
||||
@@ -72,9 +72,9 @@
|
||||
#define CONFIG_DEFAULT_SPI_MODE (SPI_MODE_0 | SPI_CS_HIGH)
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 1
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
#define CONFIG_FSL_PMIC_CLK 1000000
|
||||
|
||||
@@ -401,7 +401,6 @@
|
||||
#define CONFIG_USB_EHCI /* Enable EHCI USB support */
|
||||
#define CONFIG_USB_EHCI_PPC4XX /* on PPC4xx platform */
|
||||
#define CONFIG_SYS_PPC4XX_USB_ADDR 0xe0000300
|
||||
#define CONFIG_EHCI_DCACHE /* with dcache handling support */
|
||||
#define CONFIG_EHCI_MMIO_BIG_ENDIAN
|
||||
#define CONFIG_EHCI_DESC_BIG_ENDIAN
|
||||
#define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* re-init HCD after CMD_RESET */
|
||||
|
||||
@@ -297,7 +297,7 @@
|
||||
"if tftp ${update_nand_full_filename} ; then " \
|
||||
"run update_nand_get_fcb_size ; " \
|
||||
"nand scrub -y 0x0 ${filesize} ; " \
|
||||
"nand write.raw ${loadaddr} 0x0 ${update_nand_fcb} ; " \
|
||||
"nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; " \
|
||||
"setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \
|
||||
"setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \
|
||||
"nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \
|
||||
|
||||
@@ -114,7 +114,6 @@
|
||||
#define CONFIG_USB_EHCI_OMAP
|
||||
#define CONFIG_USB_ULPI
|
||||
#define CONFIG_USB_ULPI_VIEWPORT_OMAP
|
||||
/*#define CONFIG_EHCI_DCACHE*/ /* leave it disabled for now */
|
||||
#define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 57
|
||||
#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3
|
||||
|
||||
@@ -379,6 +378,9 @@
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
|
||||
|
||||
@@ -263,7 +263,7 @@
|
||||
"if tftp ${update_nand_full_filename} ; then " \
|
||||
"run update_nand_get_fcb_size ; " \
|
||||
"nand scrub -y 0x0 ${filesize} ; " \
|
||||
"nand write.raw ${loadaddr} 0x0 ${update_nand_fcb} ; " \
|
||||
"nand write.raw ${loadaddr} 0x0 ${fcb_sz} ; " \
|
||||
"setexpr update_off ${loadaddr} + ${update_nand_fcb} ; " \
|
||||
"setexpr update_sz ${filesize} - ${update_nand_fcb} ; " \
|
||||
"nand write ${update_off} ${update_nand_fcb} ${update_sz} ; " \
|
||||
|
||||
@@ -68,9 +68,9 @@
|
||||
#define CONFIG_MXC_GPIO
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 1
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
#define CONFIG_FSL_PMIC_CLK 1000000
|
||||
|
||||
@@ -69,9 +69,9 @@
|
||||
#define CONFIG_DEFAULT_SPI_MODE (SPI_MODE_0 | SPI_CS_HIGH)
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 1
|
||||
#define CONFIG_FSL_PMIC_CS 2
|
||||
#define CONFIG_FSL_PMIC_CLK 1000000
|
||||
|
||||
@@ -65,10 +65,9 @@
|
||||
/*
|
||||
* PMIC Configs
|
||||
*/
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_PMIC_FSL_MC13892
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x08
|
||||
#define CONFIG_RTC_MC13XXX
|
||||
|
||||
|
||||
@@ -127,9 +127,9 @@
|
||||
#endif
|
||||
|
||||
/* SPI PMIC */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 0
|
||||
#define CONFIG_FSL_PMIC_CS (0 | 120 << 8)
|
||||
#define CONFIG_FSL_PMIC_CLK 25000000
|
||||
|
||||
@@ -69,9 +69,9 @@
|
||||
#define CONFIG_MXC_SPI
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 0
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
#define CONFIG_FSL_PMIC_CLK 2500000
|
||||
|
||||
@@ -55,9 +55,9 @@
|
||||
#define CONFIG_SYS_I2C_SPEED 100000
|
||||
|
||||
/* PMIC Configs */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_SYS_FSL_PMIC_I2C_ADDR 8
|
||||
#define CONFIG_PMIC_FSL_MC13892
|
||||
#define CONFIG_RTC_MC13XXX
|
||||
|
||||
@@ -89,11 +89,10 @@
|
||||
#define CONFIG_SYS_I2C_SPEED 100000
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_DIALOG_PMIC
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_PMIC_FSL_MC13892
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_DIALOG_POWER
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_SYS_DIALOG_PMIC_I2C_ADDR 0x48
|
||||
#define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x8
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_CMD_MMC
|
||||
#define CONFIG_GENERIC_MMC
|
||||
#define CONFIG_MMC_BOUNCE_BUFFER
|
||||
#define CONFIG_BOUNCE_BUFFER
|
||||
#define CONFIG_CMD_FAT
|
||||
#define CONFIG_DOS_PARTITION
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_CMD_MMC
|
||||
#define CONFIG_GENERIC_MMC
|
||||
#define CONFIG_MMC_BOUNCE_BUFFER
|
||||
#define CONFIG_BOUNCE_BUFFER
|
||||
#define CONFIG_CMD_EXT2
|
||||
#define CONFIG_CMD_FAT
|
||||
#define CONFIG_DOS_PARTITION
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_CMD_MMC
|
||||
#define CONFIG_GENERIC_MMC
|
||||
#define CONFIG_MMC_BOUNCE_BUFFER
|
||||
#define CONFIG_BOUNCE_BUFFER
|
||||
#define CONFIG_CMD_EXT2
|
||||
#define CONFIG_CMD_FAT
|
||||
#define CONFIG_DOS_PARTITION
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
#define CONFIG_SYS_ALTERA_PIO_GPIO_NUM LED_PIO_WIDTH
|
||||
|
||||
#define CONFIG_STATUS_LED /* Enable status driver */
|
||||
#define CONFIG_BOARD_SPECIFIC_LED
|
||||
#define CONFIG_GPIO_LED /* Enable GPIO LED driver */
|
||||
#define CONFIG_GPIO /* Enable GPIO driver */
|
||||
|
||||
|
||||
@@ -117,21 +117,19 @@
|
||||
#define CONFIG_SYS_I2C_NOPROBES {{0x0, 0x0}}
|
||||
|
||||
/* USB */
|
||||
#define CONFIG_MUSB_UDC 1
|
||||
#define CONFIG_USB_OMAP3 1
|
||||
#define CONFIG_MUSB_GADGET
|
||||
#define CONFIG_USB_MUSB_OMAP2PLUS
|
||||
#define CONFIG_MUSB_PIO_ONLY
|
||||
#define CONFIG_USB_GADGET_DUALSPEED
|
||||
#define CONFIG_TWL4030_USB 1
|
||||
|
||||
/* USB device configuration */
|
||||
#define CONFIG_USB_DEVICE 1
|
||||
#define CONFIG_USB_TTY 1
|
||||
#define CONFIG_SYS_CONSOLE_IS_IN_ENV 1
|
||||
#define CONFIG_USB_ETHER
|
||||
#define CONFIG_USB_ETHER_RNDIS
|
||||
|
||||
/* USB EHCI */
|
||||
#define CONFIG_CMD_USB
|
||||
#define CONFIG_USB_EHCI
|
||||
|
||||
#define CONFIG_USB_EHCI_OMAP
|
||||
/*#define CONFIG_EHCI_DCACHE*/ /* leave it disabled for now */
|
||||
#define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 147
|
||||
|
||||
#define CONFIG_USB_ULPI
|
||||
@@ -414,6 +412,9 @@
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_GPIO_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_OMAP3_ID_NAND
|
||||
|
||||
@@ -95,10 +95,7 @@
|
||||
#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot.img"
|
||||
|
||||
/* Partition tables */
|
||||
/* Only need DOS partition support for SPL, currently */
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
#define CONFIG_EFI_PARTITION
|
||||
#endif
|
||||
#define CONFIG_DOS_PARTITION
|
||||
|
||||
/* USB
|
||||
@@ -113,6 +110,9 @@
|
||||
/* NAND SPL */
|
||||
#define CONFIG_SPL_NAND_SIMPLE
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
|
||||
#define CONFIG_SYS_NAND_PAGE_COUNT 64
|
||||
#define CONFIG_SYS_NAND_PAGE_SIZE 2048
|
||||
|
||||
@@ -81,6 +81,9 @@
|
||||
*/
|
||||
#define CONFIG_SPL_NAND_SIMPLE
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
|
||||
#define CONFIG_SYS_NAND_PAGE_COUNT 64
|
||||
#define CONFIG_SYS_NAND_PAGE_SIZE 2048
|
||||
|
||||
@@ -319,6 +319,9 @@
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_GPIO_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#define __SW_BOOT_MASK 0x03
|
||||
#define __SW_BOOT_NOR 0xe4
|
||||
#define __SW_BOOT_SD 0x54
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P1020UTM)
|
||||
@@ -46,6 +47,7 @@
|
||||
#define __SW_BOOT_MASK 0x03
|
||||
#define __SW_BOOT_NOR 0xe0
|
||||
#define __SW_BOOT_SD 0x50
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P1020RDB)
|
||||
@@ -61,6 +63,7 @@
|
||||
#define __SW_BOOT_SD 0x9c
|
||||
#define __SW_BOOT_NAND 0xec
|
||||
#define __SW_BOOT_PCIE 0x6c
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P1021RDB)
|
||||
@@ -78,6 +81,7 @@
|
||||
#define __SW_BOOT_SD 0x9c
|
||||
#define __SW_BOOT_NAND 0xec
|
||||
#define __SW_BOOT_PCIE 0x6c
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P1024RDB)
|
||||
@@ -91,6 +95,7 @@
|
||||
#define __SW_BOOT_SPI 0x08
|
||||
#define __SW_BOOT_SD 0x04
|
||||
#define __SW_BOOT_NAND 0x0c
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P1025RDB)
|
||||
@@ -108,6 +113,7 @@
|
||||
#define __SW_BOOT_SPI 0x08
|
||||
#define __SW_BOOT_SD 0x04
|
||||
#define __SW_BOOT_NAND 0x0c
|
||||
#define CONFIG_SYS_L2_SIZE (256 << 10)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_P2020RDB)
|
||||
@@ -122,6 +128,14 @@
|
||||
#define __SW_BOOT_SD 0x68 /* or 0x18 */
|
||||
#define __SW_BOOT_NAND 0xe8
|
||||
#define __SW_BOOT_PCIE 0xa8
|
||||
#define CONFIG_SYS_L2_SIZE (512 << 10)
|
||||
#endif
|
||||
|
||||
#if CONFIG_SYS_L2_SIZE >= (512 << 10)
|
||||
/* must be 32-bit */
|
||||
#define CONFIG_SYS_INIT_L2_ADDR 0xf8f80000
|
||||
#define CONFIG_SYS_INIT_L2_ADDR_PHYS CONFIG_SYS_INIT_L2_ADDR
|
||||
#define CONFIG_SYS_INIT_L2_END (CONFIG_SYS_INIT_L2_ADDR + CONFIG_SYS_L2_SIZE)
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SDCARD
|
||||
@@ -140,16 +154,39 @@
|
||||
#define CONFIG_RESET_VECTOR_ADDRESS 0x1107fffc
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_NAND) && defined(CONFIG_NAND_FSL_ELBC)
|
||||
#define CONFIG_NAND_U_BOOT
|
||||
#define CONFIG_SYS_EXTRA_ENV_RELOC
|
||||
#define CONFIG_SYS_RAMBOOT
|
||||
#define CONFIG_SYS_TEXT_BASE_SPL 0xff800000
|
||||
#ifdef CONFIG_NAND_SPL
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE_SPL
|
||||
#ifdef CONFIG_NAND
|
||||
#define CONFIG_SPL
|
||||
#define CONFIG_SPL_INIT_MINIMAL
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_MINIMAL
|
||||
#define CONFIG_SPL_FLUSH_IMAGE
|
||||
#define CONFIG_SPL_TARGET "u-boot-with-spl.bin"
|
||||
|
||||
#define CONFIG_SPL_TEXT_BASE 0xfffff000
|
||||
#define CONFIG_SPL_MAX_SIZE (4 * 1024)
|
||||
|
||||
#ifdef CONFIG_SYS_INIT_L2_ADDR
|
||||
/* We multiply CONFIG_SPL_MAX_SIZE by two to leave some room for BSS. */
|
||||
#define CONFIG_SYS_TEXT_BASE 0xf8f82000
|
||||
#define CONFIG_SPL_RELOC_TEXT_BASE \
|
||||
(CONFIG_SYS_INIT_L2_END - CONFIG_SPL_MAX_SIZE * 2)
|
||||
#define CONFIG_SPL_RELOC_STACK \
|
||||
(CONFIG_SYS_INIT_L2_END - CONFIG_SPL_MAX_SIZE * 2)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_DST (CONFIG_SYS_INIT_L2_ADDR)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_START \
|
||||
(CONFIG_SYS_INIT_L2_ADDR + CONFIG_SPL_MAX_SIZE)
|
||||
#else
|
||||
#define CONFIG_SYS_TEXT_BASE 0x11001000
|
||||
#endif /* CONFIG_NAND_SPL */
|
||||
#define CONFIG_SYS_TEXT_BASE 0x00201000
|
||||
#define CONFIG_SPL_RELOC_TEXT_BASE 0x00100000
|
||||
#define CONFIG_SPL_RELOC_STACK 0x00100000
|
||||
#define CONFIG_SYS_NAND_U_BOOT_DST (0x00200000 - CONFIG_SPL_MAX_SIZE)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_START 0x00200000
|
||||
#endif
|
||||
|
||||
#define CONFIG_SYS_NAND_U_BOOT_SIZE ((512 << 10) - 0x2000)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0
|
||||
#define CONFIG_SYS_LDSCRIPT "arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_SYS_TEXT_BASE
|
||||
@@ -161,8 +198,12 @@
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_SYS_MONITOR_BASE
|
||||
#ifdef CONFIG_SPL_BUILD
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE
|
||||
#else
|
||||
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* High Level Configuration Options */
|
||||
#define CONFIG_BOOKE
|
||||
@@ -221,7 +262,7 @@
|
||||
|
||||
/* IN case of NAND bootloader relocate CCSRBAR in RAMboot code not in the 4k
|
||||
SPL code*/
|
||||
#if defined(CONFIG_NAND_SPL)
|
||||
#ifdef CONFIG_SPL_BUILD
|
||||
#define CONFIG_SYS_CCSR_DO_NOT_RELOCATE
|
||||
#endif
|
||||
|
||||
@@ -248,39 +289,7 @@
|
||||
#define CONFIG_DIMM_SLOTS_PER_CTLR 1
|
||||
|
||||
/* Default settings for DDR3 */
|
||||
#ifdef CONFIG_P2020RDB
|
||||
#define CONFIG_SYS_DDR_CS0_BNDS 0x0000003f
|
||||
#define CONFIG_SYS_DDR_CS0_CONFIG 0x80014202
|
||||
#define CONFIG_SYS_DDR_CS0_CONFIG_2 0x00000000
|
||||
#define CONFIG_SYS_DDR_CS1_BNDS 0x00000000
|
||||
#define CONFIG_SYS_DDR_CS1_CONFIG 0x00000000
|
||||
#define CONFIG_SYS_DDR_CS1_CONFIG_2 0x00000000
|
||||
|
||||
#define CONFIG_SYS_DDR_DATA_INIT 0xdeadbeef
|
||||
#define CONFIG_SYS_DDR_INIT_ADDR 0x00000000
|
||||
#define CONFIG_SYS_DDR_INIT_EXT_ADDR 0x00000000
|
||||
#define CONFIG_SYS_DDR_MODE_CONTROL 0x00000000
|
||||
|
||||
#define CONFIG_SYS_DDR_ZQ_CONTROL 0x89080600
|
||||
#define CONFIG_SYS_DDR_WRLVL_CONTROL 0x8645F607
|
||||
#define CONFIG_SYS_DDR_SR_CNTR 0x00000000
|
||||
#define CONFIG_SYS_DDR_RCW_1 0x00000000
|
||||
#define CONFIG_SYS_DDR_RCW_2 0x00000000
|
||||
#define CONFIG_SYS_DDR_CONTROL 0xC7000000 /* Type = DDR3 */
|
||||
#define CONFIG_SYS_DDR_CONTROL_2 0x24401000
|
||||
#define CONFIG_SYS_DDR_TIMING_4 0x00220001
|
||||
#define CONFIG_SYS_DDR_TIMING_5 0x02401400
|
||||
|
||||
#define CONFIG_SYS_DDR_TIMING_3 0x00020000
|
||||
#define CONFIG_SYS_DDR_TIMING_0 0x00330104
|
||||
#define CONFIG_SYS_DDR_TIMING_1 0x6f6B4644
|
||||
#define CONFIG_SYS_DDR_TIMING_2 0x0FA88CCF
|
||||
#define CONFIG_SYS_DDR_CLK_CTRL 0x02000000
|
||||
#define CONFIG_SYS_DDR_MODE_1 0x00421422
|
||||
#define CONFIG_SYS_DDR_MODE_2 0x04000000
|
||||
#define CONFIG_SYS_DDR_INTERVAL 0x0C300100
|
||||
|
||||
#else
|
||||
#ifndef CONFIG_P2020RDB
|
||||
#define CONFIG_SYS_DDR_CS0_BNDS 0x0000003f
|
||||
#define CONFIG_SYS_DDR_CS0_CONFIG 0x80014302
|
||||
#define CONFIG_SYS_DDR_CS0_CONFIG_2 0x00000000
|
||||
@@ -318,21 +327,18 @@
|
||||
/*
|
||||
* Memory map
|
||||
*
|
||||
* 0x0000_0000 0x7fff_ffff DDR Up to 2GB cacheable
|
||||
* 0x0000_0000 0x7fff_ffff DDR Up to 2GB cacheable
|
||||
* 0x8000_0000 0xdfff_ffff PCI Express Mem 1.5G non-cacheable(PCIe * 3)
|
||||
* 0xec00_0000 0xefff_ffff NOR flash Up to 64M non-cacheable CS0/1
|
||||
* 0xf8f8_0000 0xf8ff_ffff L2 SRAM Up to 512K cacheable
|
||||
* (early boot only)
|
||||
* 0xff80_0000 0xff80_7fff NAND flash 32K non-cacheable CS1/0
|
||||
* 0xff98_0000 0xff98_ffff PMC 64K non-cacheable CS2
|
||||
* 0xffa0_0000 0xffaf_ffff CPLD 1M non-cacheable CS3
|
||||
* 0xffb0_0000 0xffbf_ffff VSC7385 switch 1M non-cacheable CS2
|
||||
* 0xffc0_0000 0xffc3_ffff PCI IO range 256k non-cacheable
|
||||
*
|
||||
* Localbus cacheable (TBD)
|
||||
* 0xXXXX_XXXX 0xXXXX_XXXX SRAM YZ M Cacheable
|
||||
*
|
||||
* Localbus non-cacheable
|
||||
* 0xec00_0000 0xefff_ffff FLASH Up to 64M non-cacheable
|
||||
* 0xff80_0000 0xff8f_ffff NAND flash 1M non-cacheable
|
||||
* 0xff90_0000 0xff97_ffff L2 SDRAM(REV.) 512K cacheable(optional)
|
||||
* 0xffa0_0000 0xffaf_ffff CPLD 1M non-cacheable
|
||||
* 0xffb0_0000 0xffbf_ffff VSC7385 switch 1M non-cacheable
|
||||
* 0xffd0_0000 0xffd0_3fff L1 for stack 16K Cacheable TLB0
|
||||
* 0xffe0_0000 0xffef_ffff CCSR 1M non-cacheable
|
||||
* 0xffd0_0000 0xffd0_3fff L1 for stack 16K cacheable
|
||||
* 0xffe0_0000 0xffef_ffff CCSR 1M non-cacheable
|
||||
*/
|
||||
|
||||
|
||||
@@ -392,15 +398,6 @@
|
||||
#define CONFIG_CMD_NAND
|
||||
#define CONFIG_SYS_NAND_BLOCK_SIZE (16 * 1024)
|
||||
|
||||
/* NAND boot: 4K NAND loader config */
|
||||
#define CONFIG_SYS_NAND_SPL_SIZE 0x1000
|
||||
#define CONFIG_SYS_NAND_U_BOOT_SIZE ((512 << 10) + CONFIG_SYS_NAND_SPL_SIZE)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_DST (0x11000000 - CONFIG_SYS_NAND_SPL_SIZE)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_START 0x11000000
|
||||
#define CONFIG_SYS_NAND_U_BOOT_OFFS (0)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_RELOC 0x00010000
|
||||
#define CONFIG_SYS_NAND_U_BOOT_RELOC_SP (CONFIG_SYS_NAND_U_BOOT_RELOC + 0x10000)
|
||||
|
||||
#define CONFIG_SYS_NAND_BR_PRELIM (BR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
|
||||
| (2<<BR_DECC_SHIFT) /* Use HW ECC */ \
|
||||
| BR_PS_8 /* Port Size = 8 bit */ \
|
||||
@@ -461,7 +458,7 @@
|
||||
OR_GPCM_SCY | OR_GPCM_TRLX | OR_GPCM_EHTR | \
|
||||
OR_GPCM_EAD)
|
||||
|
||||
#ifdef CONFIG_NAND_U_BOOT
|
||||
#ifdef CONFIG_NAND
|
||||
#define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NAND_BR_PRELIM /* NAND Base Addr */
|
||||
#define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NAND_OR_PRELIM /* NAND Options */
|
||||
#define CONFIG_SYS_BR1_PRELIM CONFIG_FLASH_BR_PRELIM /* NOR Base Address */
|
||||
@@ -511,7 +508,7 @@
|
||||
#define CONFIG_SYS_NS16550_SERIAL
|
||||
#define CONFIG_SYS_NS16550_REG_SIZE 1
|
||||
#define CONFIG_SYS_NS16550_CLK get_bus_freq(0)
|
||||
#ifdef CONFIG_NAND_SPL
|
||||
#ifdef CONFIG_SPL_BUILD
|
||||
#define CONFIG_NS16550_MIN_FUNCTIONS
|
||||
#endif
|
||||
|
||||
@@ -709,7 +706,6 @@
|
||||
/*
|
||||
* Environment
|
||||
*/
|
||||
#ifdef CONFIG_SYS_RAMBOOT
|
||||
#ifdef CONFIG_RAMBOOT_SPIFLASH
|
||||
#define CONFIG_ENV_IS_IN_SPI_FLASH
|
||||
#define CONFIG_ENV_SPI_BUS 0
|
||||
@@ -724,16 +720,15 @@
|
||||
#define CONFIG_FSL_FIXED_MMC_LOCATION
|
||||
#define CONFIG_ENV_SIZE 0x2000
|
||||
#define CONFIG_SYS_MMC_ENV_DEV 0
|
||||
#elif defined(CONFIG_NAND_U_BOOT)
|
||||
#elif defined(CONFIG_NAND)
|
||||
#define CONFIG_ENV_IS_IN_NAND
|
||||
#define CONFIG_ENV_SIZE CONFIG_SYS_NAND_BLOCK_SIZE
|
||||
#define CONFIG_ENV_OFFSET ((512 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE)
|
||||
#define CONFIG_ENV_RANGE (3 * CONFIG_ENV_SIZE)
|
||||
#else
|
||||
#elif defined(CONFIG_SYS_RAMBOOT)
|
||||
#define CONFIG_ENV_IS_NOWHERE /* Store ENV in memory only */
|
||||
#define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - 0x1000)
|
||||
#define CONFIG_ENV_SIZE 0x2000
|
||||
#endif
|
||||
#else
|
||||
#define CONFIG_ENV_IS_IN_FLASH
|
||||
#if CONFIG_SYS_MONITOR_BASE > 0xfff80000
|
||||
|
||||
@@ -58,9 +58,9 @@
|
||||
#define CONFIG_DEFAULT_SPI_MODE (SPI_MODE_0 | SPI_CS_HIGH)
|
||||
#define CONFIG_RTC_MC13XXX
|
||||
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 1
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
#define CONFIG_FSL_PMIC_CLK 100000
|
||||
|
||||
@@ -215,9 +215,9 @@
|
||||
|
||||
#define CONFIG_SYS_CACHELINE_SIZE 64
|
||||
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_PMIC_MAX8998
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_POWER_MAX8998
|
||||
|
||||
#include <asm/arch/gpio.h>
|
||||
/*
|
||||
|
||||
@@ -256,9 +256,9 @@
|
||||
#define CONFIG_I2C_MULTI_BUS
|
||||
#define CONFIG_SYS_MAX_I2C_BUS 7
|
||||
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_PMIC_MAX8998
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_POWER_MAX8998
|
||||
|
||||
#define CONFIG_USB_GADGET
|
||||
#define CONFIG_USB_GADGET_S3C_UDC_OTG
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
#ifdef CONFIG_CMD_MMC
|
||||
#define CONFIG_APBH_DMA
|
||||
#define CONFIG_MMC
|
||||
#define CONFIG_MMC_BOUNCE_BUFFER
|
||||
#define CONFIG_BOUNCE_BUFFER
|
||||
#define CONFIG_GENERIC_MMC
|
||||
#define CONFIG_MXS_MMC
|
||||
#endif
|
||||
|
||||
@@ -103,10 +103,8 @@
|
||||
#define CONFIG_TEGRA_KEYBOARD
|
||||
#define CONFIG_KEYBOARD
|
||||
|
||||
#undef TEGRA_DEVICE_SETTINGS
|
||||
#define TEGRA_DEVICE_SETTINGS "stdin=serial,tegra-kbc\0" \
|
||||
"stdout=serial,lcd\0" \
|
||||
"stderr=serial,lcd\0"
|
||||
/* USB keyboard */
|
||||
#define CONFIG_USB_KEYBOARD
|
||||
|
||||
/* LCD support */
|
||||
#define CONFIG_LCD
|
||||
|
||||
@@ -288,9 +288,6 @@
|
||||
#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
|
||||
#define CONFIG_EHCI_MMIO_BIG_ENDIAN
|
||||
#define CONFIG_EHCI_DESC_BIG_ENDIAN
|
||||
#ifdef CONFIG_4xx_DCACHE
|
||||
#define CONFIG_EHCI_DCACHE
|
||||
#endif
|
||||
#else /* CONFIG_USB_EHCI */
|
||||
#define CONFIG_USB_OHCI_NEW
|
||||
#define CONFIG_SYS_OHCI_BE_CONTROLLER
|
||||
|
||||
@@ -207,6 +207,7 @@
|
||||
#define CONFIG_I2C_MULTI_BUS
|
||||
#define CONFIG_MAX_I2C_NUM 8
|
||||
#define CONFIG_SYS_I2C_SLAVE 0x0
|
||||
#define CONFIG_I2C_EDID
|
||||
|
||||
/* PMIC */
|
||||
#define CONFIG_PMIC
|
||||
@@ -259,4 +260,10 @@
|
||||
/* Enable devicetree support */
|
||||
#define CONFIG_OF_LIBFDT
|
||||
|
||||
/* SHA hashing */
|
||||
#define CONFIG_CMD_HASH
|
||||
#define CONFIG_HASH_VERIFY
|
||||
#define CONFIG_SHA1
|
||||
#define CONFIG_SHA256
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
|
||||
@@ -106,8 +106,6 @@
|
||||
#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3
|
||||
#define CONFIG_USB_STORAGE
|
||||
|
||||
/* #define CONFIG_EHCI_DCACHE */
|
||||
|
||||
/* commands to include */
|
||||
#include <config_cmd_default.h>
|
||||
|
||||
@@ -254,6 +252,9 @@
|
||||
#define CONFIG_SPL_GPIO_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
|
||||
|
||||
@@ -146,6 +146,25 @@
|
||||
"fdt_addr_r=0x02000000\0" \
|
||||
"ramdisk_addr_r=0x02100000\0" \
|
||||
|
||||
#ifdef CONFIG_TEGRA_KEYBOARD
|
||||
#define STDIN_KBD_KBC ",tegra-kbc"
|
||||
#else
|
||||
#define STDIN_KBD_KBC ""
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_USB_KEYBOARD
|
||||
#define STDIN_KBD_USB ",usbkbd"
|
||||
#define CONFIG_SYS_USB_EVENT_POLL
|
||||
#define CONFIG_PREBOOT "usb start"
|
||||
#else
|
||||
#define STDIN_KBD_USB ""
|
||||
#endif
|
||||
|
||||
#define TEGRA_DEVICE_SETTINGS \
|
||||
"stdin=serial" STDIN_KBD_KBC STDIN_KBD_USB "\0" \
|
||||
"stdout=serial,lcd\0" \
|
||||
"stderr=serial,lcd\0" \
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
TEGRA_DEVICE_SETTINGS \
|
||||
MEM_LAYOUT_ENV_SETTINGS \
|
||||
|
||||
@@ -103,7 +103,6 @@
|
||||
*/
|
||||
#define CONFIG_USB_EHCI_TXFIFO_THRESH 10
|
||||
#define CONFIG_EHCI_IS_TDI
|
||||
#define CONFIG_EHCI_DCACHE
|
||||
|
||||
/* Total I2C ports on Tegra20 */
|
||||
#define TEGRA_I2C_NUM_CONTROLLERS 4
|
||||
@@ -128,12 +127,8 @@
|
||||
|
||||
#define CONFIG_SYS_NO_FLASH
|
||||
|
||||
/* Environment information, boards can override if required */
|
||||
#define CONFIG_CONSOLE_MUX
|
||||
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
|
||||
#define TEGRA_DEVICE_SETTINGS "stdin=serial\0" \
|
||||
"stdout=serial\0" \
|
||||
"stderr=serial\0"
|
||||
|
||||
#define CONFIG_LOADADDR 0x408000 /* def. location for kernel */
|
||||
#define CONFIG_BOOTDELAY 2 /* -1 to disable auto boot */
|
||||
@@ -210,4 +205,7 @@
|
||||
#define CONFIG_SYS_NAND_SELF_INIT
|
||||
#define CONFIG_SYS_NAND_ONFI_DETECTION
|
||||
|
||||
/* Misc utility code */
|
||||
#define CONFIG_BOUNCE_BUFFER
|
||||
|
||||
#endif /* __TEGRA20_COMMON_H */
|
||||
|
||||
@@ -98,6 +98,7 @@
|
||||
#undef CONFIG_CMD_MTDPARTS
|
||||
#define CONFIG_CMD_MMC
|
||||
#define CONFIG_CMD_DFU
|
||||
#define CONFIG_CMD_GPT
|
||||
|
||||
/* FAT */
|
||||
#define CONFIG_CMD_FAT
|
||||
@@ -122,6 +123,26 @@
|
||||
#define CONFIG_BOOTBLOCK "10"
|
||||
#define CONFIG_ENV_COMMON_BOOT "${console} ${meminfo}"
|
||||
|
||||
/* Tizen - partitions definitions */
|
||||
#define PARTS_CSA "csa-mmc"
|
||||
#define PARTS_BOOTLOADER "u-boot"
|
||||
#define PARTS_BOOT "boot"
|
||||
#define PARTS_ROOT "platform"
|
||||
#define PARTS_DATA "data"
|
||||
#define PARTS_CSC "csc"
|
||||
#define PARTS_UMS "ums"
|
||||
|
||||
#define PARTS_DEFAULT \
|
||||
"uuid_disk=${uuid_gpt_disk};" \
|
||||
"name="PARTS_CSA",size=8MiB,uuid=${uuid_gpt_"PARTS_CSA"};" \
|
||||
"name="PARTS_BOOTLOADER",size=60MiB," \
|
||||
"uuid=${uuid_gpt_"PARTS_BOOTLOADER"};" \
|
||||
"name="PARTS_BOOT",size=100MiB,uuid=${uuid_gpt_"PARTS_BOOT"};" \
|
||||
"name="PARTS_ROOT",size=1GiB,uuid=${uuid_gpt_"PARTS_ROOT"};" \
|
||||
"name="PARTS_DATA",size=3GiB,uuid=${uuid_gpt_"PARTS_DATA"};" \
|
||||
"name="PARTS_CSC",size=150MiB,uuid=${uuid_gpt_"PARTS_CSC"};" \
|
||||
"name="PARTS_UMS",size=-,uuid=${uuid_gpt_"PARTS_UMS"}\0" \
|
||||
|
||||
#define CONFIG_DFU_ALT \
|
||||
"dfu_alt_info=" \
|
||||
"u-boot mmc 80 400;" \
|
||||
@@ -171,7 +192,8 @@
|
||||
"mmcbootpart=2\0" \
|
||||
"mmcrootpart=3\0" \
|
||||
"opts=always_resume=1\0" \
|
||||
CONFIG_DFU_ALT
|
||||
"partitions=" PARTS_DEFAULT \
|
||||
CONFIG_DFU_ALT \
|
||||
|
||||
/* Miscellaneous configurable options */
|
||||
#define CONFIG_SYS_LONGHELP /* undef to save memory */
|
||||
@@ -213,6 +235,10 @@
|
||||
|
||||
#define CONFIG_DOS_PARTITION
|
||||
|
||||
/* GPT */
|
||||
#define CONFIG_EFI_PARTITION
|
||||
#define CONFIG_PARTITION_UUIDS
|
||||
|
||||
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_LOAD_ADDR - GENERATED_GBL_DATA_SIZE)
|
||||
#define CONFIG_SYS_CACHELINE_SIZE 32
|
||||
|
||||
@@ -239,10 +265,16 @@
|
||||
#define CONFIG_SOFT_I2C_GPIO_SDA get_multi_sda_pin()
|
||||
#define I2C_INIT multi_i2c_init()
|
||||
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_I2C
|
||||
#define CONFIG_PMIC_MAX8997
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_I2C
|
||||
#define CONFIG_POWER_MAX8997
|
||||
|
||||
#define CONFIG_POWER_FG
|
||||
#define CONFIG_POWER_FG_MAX17042
|
||||
#define CONFIG_POWER_MUIC
|
||||
#define CONFIG_POWER_MUIC_MAX8997
|
||||
#define CONFIG_POWER_BATTERY
|
||||
#define CONFIG_POWER_BATTERY_TRATS
|
||||
#define CONFIG_USB_GADGET
|
||||
#define CONFIG_USB_GADGET_S3C_UDC_OTG
|
||||
#define CONFIG_USB_GADGET_DUALSPEED
|
||||
|
||||
@@ -282,6 +282,9 @@
|
||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||
#define CONFIG_SPL_POWER_SUPPORT
|
||||
#define CONFIG_SPL_NAND_SUPPORT
|
||||
#define CONFIG_SPL_NAND_BASE
|
||||
#define CONFIG_SPL_NAND_DRIVERS
|
||||
#define CONFIG_SPL_NAND_ECC
|
||||
#define CONFIG_SPL_MMC_SUPPORT
|
||||
#define CONFIG_SPL_FAT_SUPPORT
|
||||
#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
|
||||
|
||||
@@ -149,9 +149,9 @@
|
||||
#define CONFIG_MXC_GPIO
|
||||
|
||||
/* MC13783 connected to CSPI3 and SS0 */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
|
||||
#define CONFIG_FSL_PMIC_BUS 2
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
|
||||
@@ -65,7 +65,6 @@
|
||||
#define CONFIG_BOOTARGS "root=/dev/ram console=ttyS0,57600" /* RAMdisk */
|
||||
#define CONFIG_ETHADDR 00:AA:00:14:00:05 /* UTX5 */
|
||||
#define CONFIG_SERVERIP 10.8.17.105 /* Spree */
|
||||
#define CONFIG_SYS_TFTP_LOADADDR 10000
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"kernel_addr=FFA00000\0" \
|
||||
|
||||
@@ -136,7 +136,6 @@
|
||||
*/
|
||||
#define CONFIG_USB_EHCI /* Enable EHCI USB support */
|
||||
#define CONFIG_USB_EHCI_VCT /* on VCT platform */
|
||||
#define CONFIG_EHCI_DCACHE /* with dcache handling support */
|
||||
#define CONFIG_EHCI_MMIO_BIG_ENDIAN
|
||||
#define CONFIG_EHCI_DESC_BIG_ENDIAN
|
||||
#define CONFIG_EHCI_IS_TDI
|
||||
|
||||
@@ -78,6 +78,9 @@
|
||||
#define CONFIG_CMD_NET
|
||||
#define CONFIG_CMD_DHCP
|
||||
|
||||
/* USB keyboard */
|
||||
#define CONFIG_USB_KEYBOARD
|
||||
|
||||
#include "tegra-common-post.h"
|
||||
|
||||
#endif /* __CONFIG_H */
|
||||
|
||||
@@ -87,9 +87,9 @@
|
||||
#define CONFIG_ENV_IS_IN_SPI_FLASH
|
||||
|
||||
/* PMIC Controller */
|
||||
#define CONFIG_PMIC
|
||||
#define CONFIG_PMIC_SPI
|
||||
#define CONFIG_PMIC_FSL
|
||||
#define CONFIG_POWER
|
||||
#define CONFIG_POWER_SPI
|
||||
#define CONFIG_POWER_FSL
|
||||
#define CONFIG_FSL_PMIC_BUS 0
|
||||
#define CONFIG_FSL_PMIC_CS 0
|
||||
#define CONFIG_FSL_PMIC_CLK 2500000
|
||||
|
||||
275
include/edid.h
Normal file
275
include/edid.h
Normal file
@@ -0,0 +1,275 @@
|
||||
/*
|
||||
* Copyright (c) 2012 The Chromium OS Authors.
|
||||
*
|
||||
* (C) Copyright 2010
|
||||
* Petr Stetiar <ynezz@true.cz>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*
|
||||
* Contains stolen code from ddcprobe project which is:
|
||||
* Copyright (C) Nalin Dahyabhai <bigfun@pobox.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __EDID_H_
|
||||
#define __EDID_H_
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define GET_BIT(_x, _pos) \
|
||||
(((_x) >> (_pos)) & 1)
|
||||
#define GET_BITS(_x, _pos_msb, _pos_lsb) \
|
||||
(((_x) >> (_pos_lsb)) & ((1 << ((_pos_msb) - (_pos_lsb) + 1)) - 1))
|
||||
|
||||
/* Aspect ratios used in EDID info. */
|
||||
enum edid_aspect {
|
||||
ASPECT_625 = 0,
|
||||
ASPECT_75,
|
||||
ASPECT_8,
|
||||
ASPECT_5625,
|
||||
};
|
||||
|
||||
/* Detailed timing information used in EDID v1.x */
|
||||
struct edid_detailed_timing {
|
||||
unsigned char pixel_clock[2];
|
||||
#define EDID_DETAILED_TIMING_PIXEL_CLOCK(_x) \
|
||||
(((((uint32_t)(_x).pixel_clock[1]) << 8) + \
|
||||
(_x).pixel_clock[0]) * 10000)
|
||||
unsigned char horizontal_active;
|
||||
unsigned char horizontal_blanking;
|
||||
unsigned char horizontal_active_blanking_hi;
|
||||
#define EDID_DETAILED_TIMING_HORIZONTAL_ACTIVE(_x) \
|
||||
((GET_BITS((_x).horizontal_active_blanking_hi, 7, 4) << 8) + \
|
||||
(_x).horizontal_active)
|
||||
#define EDID_DETAILED_TIMING_HORIZONTAL_BLANKING(_x) \
|
||||
((GET_BITS((_x).horizontal_active_blanking_hi, 3, 0) << 8) + \
|
||||
(_x).horizontal_blanking)
|
||||
unsigned char vertical_active;
|
||||
unsigned char vertical_blanking;
|
||||
unsigned char vertical_active_blanking_hi;
|
||||
#define EDID_DETAILED_TIMING_VERTICAL_ACTIVE(_x) \
|
||||
((GET_BITS((_x).vertical_active_blanking_hi, 7, 4) << 8) + \
|
||||
(_x).vertical_active)
|
||||
#define EDID_DETAILED_TIMING_VERTICAL_BLANKING(_x) \
|
||||
((GET_BITS((_x).vertical_active_blanking_hi, 3, 0) << 8) + \
|
||||
(_x).vertical_blanking)
|
||||
unsigned char hsync_offset;
|
||||
unsigned char hsync_pulse_width;
|
||||
unsigned char sync_offset_pulse_width;
|
||||
unsigned char hsync_vsync_offset_pulse_width_hi;
|
||||
#define EDID_DETAILED_TIMING_HSYNC_OFFSET(_x) \
|
||||
((GET_BITS((_x).hsync_vsync_offset_pulse_width_hi, 7, 6) << 8) + \
|
||||
(_x).hsync_offset)
|
||||
#define EDID_DETAILED_TIMING_HSYNC_PULSE_WIDTH(_x) \
|
||||
((GET_BITS((_x).hsync_vsync_offset_pulse_width_hi, 5, 4) << 8) + \
|
||||
(_x).hsync_pulse_width)
|
||||
#define EDID_DETAILED_TIMING_VSYNC_OFFSET(_x) \
|
||||
((GET_BITS((_x).hsync_vsync_offset_pulse_width_hi, 3, 2) << 4) + \
|
||||
GET_BITS((_x).vsync_offset_pulse_width, 7, 4))
|
||||
#define EDID_DETAILED_TIMING_VSYNC_PULSE_WIDTH(_x) \
|
||||
((GET_BITS((_x).hsync_vsync_offset_pulse_width_hi, 1, 0) << 4) + \
|
||||
GET_BITS((_x).vsync_offset_pulse_width, 3, 0))
|
||||
unsigned char himage_size;
|
||||
unsigned char vimage_size;
|
||||
unsigned char himage_vimage_size_hi;
|
||||
#define EDID_DETAILED_TIMING_HIMAGE_SIZE(_x) \
|
||||
((GET_BITS((_x).himage_vimage_size_hi, 7, 4) << 8) + (_x).himage_size)
|
||||
#define EDID_DETAILED_TIMING_VIMAGE_SIZE(_x) \
|
||||
((GET_BITS((_x).himage_vimage_size_hi, 3, 0) << 8) + (_x).vimage_size)
|
||||
unsigned char hborder;
|
||||
unsigned char vborder;
|
||||
unsigned char flags;
|
||||
#define EDID_DETAILED_TIMING_FLAG_INTERLACED(_x) \
|
||||
GET_BIT((_x).flags, 7)
|
||||
#define EDID_DETAILED_TIMING_FLAG_STEREO(_x) \
|
||||
GET_BITS((_x).flags, 6, 5)
|
||||
#define EDID_DETAILED_TIMING_FLAG_DIGITAL_COMPOSITE(_x) \
|
||||
GET_BITS((_x).flags, 4, 3)
|
||||
#define EDID_DETAILED_TIMING_FLAG_POLARITY(_x) \
|
||||
GET_BITS((_x).flags, 2, 1)
|
||||
#define EDID_DETAILED_TIMING_FLAG_INTERLEAVED(_x) \
|
||||
GET_BIT((_x).flags, 0)
|
||||
} __attribute__ ((__packed__));
|
||||
|
||||
enum edid_monitor_descriptor_types {
|
||||
EDID_MONITOR_DESCRIPTOR_SERIAL = 0xff,
|
||||
EDID_MONITOR_DESCRIPTOR_ASCII = 0xfe,
|
||||
EDID_MONITOR_DESCRIPTOR_RANGE = 0xfd,
|
||||
EDID_MONITOR_DESCRIPTOR_NAME = 0xfc,
|
||||
};
|
||||
|
||||
struct edid_monitor_descriptor {
|
||||
uint16_t zero_flag_1;
|
||||
unsigned char zero_flag_2;
|
||||
unsigned char type;
|
||||
unsigned char zero_flag_3;
|
||||
union {
|
||||
char string[13];
|
||||
struct {
|
||||
unsigned char vertical_min;
|
||||
unsigned char vertical_max;
|
||||
unsigned char horizontal_min;
|
||||
unsigned char horizontal_max;
|
||||
unsigned char pixel_clock_max;
|
||||
unsigned char gtf_data[8];
|
||||
} range_data;
|
||||
} data;
|
||||
} __attribute__ ((__packed__));
|
||||
|
||||
struct edid1_info {
|
||||
unsigned char header[8];
|
||||
unsigned char manufacturer_name[2];
|
||||
#define EDID1_INFO_MANUFACTURER_NAME_ZERO(_x) \
|
||||
GET_BIT(((_x).manufacturer_name[0]), 7)
|
||||
#define EDID1_INFO_MANUFACTURER_NAME_CHAR1(_x) \
|
||||
GET_BITS(((_x).manufacturer_name[0]), 6, 2)
|
||||
#define EDID1_INFO_MANUFACTURER_NAME_CHAR2(_x) \
|
||||
((GET_BITS(((_x).manufacturer_name[0]), 1, 0) << 3) + \
|
||||
GET_BITS(((_x).manufacturer_name[1]), 7, 5))
|
||||
#define EDID1_INFO_MANUFACTURER_NAME_CHAR3(_x) \
|
||||
GET_BITS(((_x).manufacturer_name[1]), 4, 0)
|
||||
unsigned char product_code[2];
|
||||
#define EDID1_INFO_PRODUCT_CODE(_x) \
|
||||
(((uint16_t)(_x).product_code[1] << 8) + (_x).product_code[0])
|
||||
unsigned char serial_number[4];
|
||||
#define EDID1_INFO_SERIAL_NUMBER(_x) \
|
||||
(((uint32_t)(_x).serial_number[3] << 24) + \
|
||||
((_x).serial_number[2] << 16) + ((_x).serial_number[1] << 8) + \
|
||||
(_x).serial_number[0])
|
||||
unsigned char week;
|
||||
unsigned char year;
|
||||
unsigned char version;
|
||||
unsigned char revision;
|
||||
unsigned char video_input_definition;
|
||||
#define EDID1_INFO_VIDEO_INPUT_DIGITAL(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 7)
|
||||
#define EDID1_INFO_VIDEO_INPUT_VOLTAGE_LEVEL(_x) \
|
||||
GET_BITS(((_x).video_input_definition), 6, 5)
|
||||
#define EDID1_INFO_VIDEO_INPUT_BLANK_TO_BLACK(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 4)
|
||||
#define EDID1_INFO_VIDEO_INPUT_SEPARATE_SYNC(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 3)
|
||||
#define EDID1_INFO_VIDEO_INPUT_COMPOSITE_SYNC(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 2)
|
||||
#define EDID1_INFO_VIDEO_INPUT_SYNC_ON_GREEN(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 1)
|
||||
#define EDID1_INFO_VIDEO_INPUT_SERRATION_V(_x) \
|
||||
GET_BIT(((_x).video_input_definition), 0)
|
||||
unsigned char max_size_horizontal;
|
||||
unsigned char max_size_vertical;
|
||||
unsigned char gamma;
|
||||
unsigned char feature_support;
|
||||
#define EDID1_INFO_FEATURE_STANDBY(_x) \
|
||||
GET_BIT(((_x).feature_support), 7)
|
||||
#define EDID1_INFO_FEATURE_SUSPEND(_x) \
|
||||
GET_BIT(((_x).feature_support), 6)
|
||||
#define EDID1_INFO_FEATURE_ACTIVE_OFF(_x) \
|
||||
GET_BIT(((_x).feature_support), 5)
|
||||
#define EDID1_INFO_FEATURE_DISPLAY_TYPE(_x) \
|
||||
GET_BITS(((_x).feature_support), 4, 3)
|
||||
#define EDID1_INFO_FEATURE_RGB(_x) \
|
||||
GET_BIT(((_x).feature_support), 2)
|
||||
#define EDID1_INFO_FEATURE_PREFERRED_TIMING_MODE(_x) \
|
||||
GET_BIT(((_x).feature_support), 1)
|
||||
#define EDID1_INFO_FEATURE_DEFAULT_GTF_SUPPORT(_x) \
|
||||
GET_BIT(((_x).feature_support), 0)
|
||||
unsigned char color_characteristics[10];
|
||||
unsigned char established_timings[3];
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_720X400_70(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 7)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_720X400_88(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 6)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_640X480_60(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 5)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_640X480_67(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 4)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_640X480_72(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 3)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_640X480_75(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 2)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_800X600_56(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 1)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_800X600_60(_x) \
|
||||
GET_BIT(((_x).established_timings[0]), 0)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_800X600_72(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 7)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_800X600_75(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 6)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_832X624_75(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 5)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1024X768_87I(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 4)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1024X768_60(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 3)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1024X768_70(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 2)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1024X768_75(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 1)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1280X1024_75(_x) \
|
||||
GET_BIT(((_x).established_timings[1]), 0)
|
||||
#define EDID1_INFO_ESTABLISHED_TIMING_1152X870_75(_x) \
|
||||
GET_BIT(((_x).established_timings[2]), 7)
|
||||
struct {
|
||||
unsigned char xresolution;
|
||||
unsigned char aspect_vfreq;
|
||||
} __attribute__((__packed__)) standard_timings[8];
|
||||
#define EDID1_INFO_STANDARD_TIMING_XRESOLUTION(_x, _i) \
|
||||
(((_x).standard_timings[_i]).xresolution)
|
||||
#define EDID1_INFO_STANDARD_TIMING_ASPECT(_x, _i) \
|
||||
GET_BITS(((_x).standard_timings[_i].aspect_vfreq), 7, 6)
|
||||
#define EDID1_INFO_STANDARD_TIMING_VFREQ(_x, _i) \
|
||||
GET_BITS(((_x).standard_timings[_i].aspect_vfreq), 5, 0)
|
||||
union {
|
||||
unsigned char timing[72];
|
||||
struct edid_monitor_descriptor descriptor[4];
|
||||
} monitor_details;
|
||||
unsigned char extension_flag;
|
||||
unsigned char checksum;
|
||||
} __attribute__ ((__packed__));
|
||||
|
||||
/**
|
||||
* Print the EDID info.
|
||||
*
|
||||
* @param edid_info The EDID info to be printed
|
||||
*/
|
||||
void edid_print_info(struct edid1_info *edid_info);
|
||||
|
||||
/**
|
||||
* Check the EDID info.
|
||||
*
|
||||
* @param info The EDID info to be checked
|
||||
* @return 0 on valid, or -1 on invalid
|
||||
*/
|
||||
int edid_check_info(struct edid1_info *info);
|
||||
|
||||
/**
|
||||
* Get the horizontal and vertical rate ranges of the monitor.
|
||||
*
|
||||
* @param edid The EDID info
|
||||
* @param hmin Returns the minimum horizontal rate
|
||||
* @param hmax Returns the maxium horizontal rate
|
||||
* @param vmin Returns the minimum vertical rate
|
||||
* @param vmax Returns the maxium vertical rate
|
||||
* @return 0 on success, or -1 on error
|
||||
*/
|
||||
int edid_get_ranges(struct edid1_info *edid, unsigned int *hmin,
|
||||
unsigned int *hmax, unsigned int *vmin,
|
||||
unsigned int *vmax);
|
||||
|
||||
#endif /* __EDID_H_ */
|
||||
55
include/env_attr.h
Normal file
55
include/env_attr.h
Normal file
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
* (C) Copyright 2012
|
||||
* Joe Hershberger, National Instruments, joe.hershberger@ni.com
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __ENV_ATTR_H__
|
||||
#define __ENV_ATTR_H__
|
||||
|
||||
#define ENV_ATTR_LIST_DELIM ','
|
||||
#define ENV_ATTR_SEP ':'
|
||||
|
||||
/*
|
||||
* env_attr_walk takes as input an "attr_list" that takes the form:
|
||||
* attributes = [^,:\s]*
|
||||
* entry = name[:attributes]
|
||||
* list = entry[,list]
|
||||
* It will call the "callback" function with the "name" and attribute as "value"
|
||||
* The callback may return a non-0 to abort the list walk.
|
||||
* This return value will be passed through to the caller.
|
||||
* 0 is returned on success.
|
||||
*/
|
||||
extern int env_attr_walk(const char *attr_list,
|
||||
int (*callback)(const char *name, const char *value));
|
||||
|
||||
/*
|
||||
* env_attr_lookup takes as input an "attr_list" with the same form as above.
|
||||
* It also takes as input a "name" to look for.
|
||||
* If the name is found in the list, it's value is copied into "attributes".
|
||||
* There is no protection on attributes being too small for the value.
|
||||
* It returns -1 if attributes is NULL, 1 if "name" is not found, 2 if
|
||||
* "attr_list" is NULL.
|
||||
* Returns 0 on success.
|
||||
*/
|
||||
extern int env_attr_lookup(const char *attr_list, const char *name,
|
||||
char *attributes);
|
||||
|
||||
#endif /* __ENV_ATTR_H__ */
|
||||
75
include/env_callback.h
Normal file
75
include/env_callback.h
Normal file
@@ -0,0 +1,75 @@
|
||||
/*
|
||||
* (C) Copyright 2012
|
||||
* Joe Hershberger, National Instruments, joe.hershberger@ni.com
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __ENV_CALLBACK_H__
|
||||
#define __ENV_CALLBACK_H__
|
||||
|
||||
#include <env_flags.h>
|
||||
#include <linker_lists.h>
|
||||
#include <search.h>
|
||||
|
||||
#define ENV_CALLBACK_VAR ".callbacks"
|
||||
|
||||
/* Board configs can define additional static callback bindings */
|
||||
#ifndef CONFIG_ENV_CALLBACK_LIST_STATIC
|
||||
#define CONFIG_ENV_CALLBACK_LIST_STATIC
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SILENT_CONSOLE
|
||||
#define SILENT_CALLBACK "silent:silent,"
|
||||
#else
|
||||
#define SILENT_CALLBACK
|
||||
#endif
|
||||
|
||||
/*
|
||||
* This list of callback bindings is static, but may be overridden by defining
|
||||
* a new association in the ".callbacks" environment variable.
|
||||
*/
|
||||
#define ENV_CALLBACK_LIST_STATIC ENV_CALLBACK_VAR ":callbacks," \
|
||||
ENV_FLAGS_VAR ":flags," \
|
||||
"baudrate:baudrate," \
|
||||
"bootfile:bootfile," \
|
||||
"loadaddr:loadaddr," \
|
||||
SILENT_CALLBACK \
|
||||
"stdin:console,stdout:console,stderr:console," \
|
||||
CONFIG_ENV_CALLBACK_LIST_STATIC
|
||||
|
||||
struct env_clbk_tbl {
|
||||
const char *name; /* Callback name */
|
||||
int (*callback)(const char *name, const char *value, enum env_op op,
|
||||
int flags);
|
||||
};
|
||||
|
||||
struct env_clbk_tbl *find_env_callback(const char *);
|
||||
void env_callback_init(ENTRY *var_entry);
|
||||
|
||||
/*
|
||||
* Define a callback that can be associated with variables.
|
||||
* when associated through the ".callbacks" environment variable, the callback
|
||||
* will be executed any time the variable is inserted, overwritten, or deleted.
|
||||
*/
|
||||
#define U_BOOT_ENV_CALLBACK(name, callback) \
|
||||
ll_entry_declare(struct env_clbk_tbl, name, env_clbk, env_clbk) = \
|
||||
{#name, callback}
|
||||
|
||||
#endif /* __ENV_CALLBACK_H__ */
|
||||
@@ -24,6 +24,8 @@
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <env_callback.h>
|
||||
|
||||
#ifdef DEFAULT_ENV_INSTANCE_EMBEDDED
|
||||
env_t environment __PPCENV__ = {
|
||||
ENV_CRC, /* CRC Sum */
|
||||
@@ -36,6 +38,12 @@ static char default_environment[] = {
|
||||
#else
|
||||
const uchar default_environment[] = {
|
||||
#endif
|
||||
#ifdef CONFIG_ENV_CALLBACK_LIST_DEFAULT
|
||||
ENV_CALLBACK_VAR "=" CONFIG_ENV_CALLBACK_LIST_DEFAULT "\0"
|
||||
#endif
|
||||
#ifdef CONFIG_ENV_FLAGS_LIST_DEFAULT
|
||||
ENV_FLAGS_VAR "=" CONFIG_ENV_FLAGS_LIST_DEFAULT "\0"
|
||||
#endif
|
||||
#ifdef CONFIG_BOOTARGS
|
||||
"bootargs=" CONFIG_BOOTARGS "\0"
|
||||
#endif
|
||||
|
||||
172
include/env_flags.h
Normal file
172
include/env_flags.h
Normal file
@@ -0,0 +1,172 @@
|
||||
/*
|
||||
* (C) Copyright 2012
|
||||
* Joe Hershberger, National Instruments, joe.hershberger@ni.com
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __ENV_FLAGS_H__
|
||||
#define __ENV_FLAGS_H__
|
||||
|
||||
enum env_flags_vartype {
|
||||
env_flags_vartype_string,
|
||||
env_flags_vartype_decimal,
|
||||
env_flags_vartype_hex,
|
||||
env_flags_vartype_bool,
|
||||
#ifdef CONFIG_CMD_NET
|
||||
env_flags_vartype_ipaddr,
|
||||
env_flags_vartype_macaddr,
|
||||
#endif
|
||||
env_flags_vartype_end
|
||||
};
|
||||
|
||||
enum env_flags_varaccess {
|
||||
env_flags_varaccess_any,
|
||||
env_flags_varaccess_readonly,
|
||||
env_flags_varaccess_writeonce,
|
||||
env_flags_varaccess_changedefault,
|
||||
env_flags_varaccess_end
|
||||
};
|
||||
|
||||
#define ENV_FLAGS_VAR ".flags"
|
||||
#define ENV_FLAGS_ATTR_MAX_LEN 2
|
||||
#define ENV_FLAGS_VARTYPE_LOC 0
|
||||
#define ENV_FLAGS_VARACCESS_LOC 1
|
||||
|
||||
#ifndef CONFIG_ENV_FLAGS_LIST_STATIC
|
||||
#define CONFIG_ENV_FLAGS_LIST_STATIC ""
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_CMD_NET
|
||||
#ifdef CONFIG_ENV_OVERWRITE
|
||||
#define ETHADDR_FLAGS "ethaddr:ma,"
|
||||
#else
|
||||
#ifdef CONFIG_OVERWRITE_ETHADDR_ONCE
|
||||
#define ETHADDR_FLAGS "ethaddr:mc,"
|
||||
#else
|
||||
#define ETHADDR_FLAGS "ethaddr:mo,"
|
||||
#endif
|
||||
#endif
|
||||
#else
|
||||
#define ETHADDR_FLAGS ""
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_ENV_OVERWRITE
|
||||
#define SERIAL_FLAGS "serial#:so,"
|
||||
#else
|
||||
#define SERIAL_FLAGS ""
|
||||
#endif
|
||||
|
||||
#define ENV_FLAGS_LIST_STATIC \
|
||||
ETHADDR_FLAGS \
|
||||
SERIAL_FLAGS \
|
||||
CONFIG_ENV_FLAGS_LIST_STATIC
|
||||
|
||||
#ifdef CONFIG_CMD_ENV_FLAGS
|
||||
/*
|
||||
* Print the whole list of available type flags.
|
||||
*/
|
||||
void env_flags_print_vartypes(void);
|
||||
/*
|
||||
* Print the whole list of available access flags.
|
||||
*/
|
||||
void env_flags_print_varaccess(void);
|
||||
/*
|
||||
* Return the name of the type.
|
||||
*/
|
||||
const char *env_flags_get_vartype_name(enum env_flags_vartype type);
|
||||
/*
|
||||
* Return the name of the access.
|
||||
*/
|
||||
const char *env_flags_get_varaccess_name(enum env_flags_varaccess access);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Parse the flags string from a .flags attribute list into the vartype enum.
|
||||
*/
|
||||
enum env_flags_vartype env_flags_parse_vartype(const char *flags);
|
||||
/*
|
||||
* Parse the flags string from a .flags attribute list into the varaccess enum.
|
||||
*/
|
||||
enum env_flags_varaccess env_flags_parse_varaccess(const char *flags);
|
||||
/*
|
||||
* Parse the binary flags from a hash table entry into the varaccess enum.
|
||||
*/
|
||||
enum env_flags_varaccess env_flags_parse_varaccess_from_binflags(int binflags);
|
||||
|
||||
#ifdef USE_HOSTCC
|
||||
/*
|
||||
* Look up the type of a variable directly from the .flags var.
|
||||
*/
|
||||
enum env_flags_vartype env_flags_get_type(const char *name);
|
||||
/*
|
||||
* Look up the access of a variable directly from the .flags var.
|
||||
*/
|
||||
enum env_flags_varaccess env_flags_get_access(const char *name);
|
||||
/*
|
||||
* Validate the newval for its type to conform with the requirements defined by
|
||||
* its flags (directly looked at the .flags var).
|
||||
*/
|
||||
int env_flags_validate_type(const char *name, const char *newval);
|
||||
/*
|
||||
* Validate the newval for its access to conform with the requirements defined
|
||||
* by its flags (directly looked at the .flags var).
|
||||
*/
|
||||
int env_flags_validate_access(const char *name, int check_mask);
|
||||
/*
|
||||
* Validate that the proposed access to variable "name" is valid according to
|
||||
* the defined flags for that variable, if any.
|
||||
*/
|
||||
int env_flags_validate_varaccess(const char *name, int check_mask);
|
||||
/*
|
||||
* Validate the parameters passed to "env set" for type compliance
|
||||
*/
|
||||
int env_flags_validate_env_set_params(int argc, char * const argv[]);
|
||||
|
||||
#else /* !USE_HOSTCC */
|
||||
|
||||
#include <search.h>
|
||||
|
||||
/*
|
||||
* When adding a variable to the environment, initialize the flags for that
|
||||
* variable.
|
||||
*/
|
||||
void env_flags_init(ENTRY *var_entry);
|
||||
|
||||
/*
|
||||
* Validate the newval for to conform with the requirements defined by its flags
|
||||
*/
|
||||
int env_flags_validate(const ENTRY *item, const char *newval, enum env_op op,
|
||||
int flag);
|
||||
|
||||
#endif /* USE_HOSTCC */
|
||||
|
||||
/*
|
||||
* These are the binary flags used in the environment entry->flags variable to
|
||||
* decribe properties of veriables in the table
|
||||
*/
|
||||
#define ENV_FLAGS_VARTYPE_BIN_MASK 0x00000007
|
||||
/* The actual variable type values use the enum value (within the mask) */
|
||||
#define ENV_FLAGS_VARACCESS_PREVENT_DELETE 0x00000008
|
||||
#define ENV_FLAGS_VARACCESS_PREVENT_CREATE 0x00000010
|
||||
#define ENV_FLAGS_VARACCESS_PREVENT_OVERWR 0x00000020
|
||||
#define ENV_FLAGS_VARACCESS_PREVENT_NONDEF_OVERWR 0x00000040
|
||||
#define ENV_FLAGS_VARACCESS_BIN_MASK 0x00000078
|
||||
|
||||
#endif /* __ENV_FLAGS_H__ */
|
||||
@@ -164,6 +164,9 @@ extern void env_reloc(void);
|
||||
|
||||
#ifndef DO_DEPS_ONLY
|
||||
|
||||
#include <env_attr.h>
|
||||
#include <env_callback.h>
|
||||
#include <env_flags.h>
|
||||
#include <search.h>
|
||||
|
||||
extern struct hsearch_data env_htab;
|
||||
@@ -178,6 +181,9 @@ unsigned char env_get_char_memory(int index);
|
||||
/* Function that updates CRC of the enironment */
|
||||
void env_crc_update(void);
|
||||
|
||||
/* Look up the variable from the default environment */
|
||||
char *getenv_default(const char *name);
|
||||
|
||||
/* [re]set to the default environment */
|
||||
void set_default_env(const char *s);
|
||||
|
||||
@@ -187,15 +193,6 @@ int set_default_vars(int nvars, char * const vars[]);
|
||||
/* Import from binary representation into hash table */
|
||||
int env_import(const char *buf, int check);
|
||||
|
||||
/*
|
||||
* Check if variable "name" can be changed from oldval to newval,
|
||||
* and if so, apply the changes (e.g. baudrate).
|
||||
* When (flag & H_FORCE) is set, it does not print out any error
|
||||
* message and forces overwriting of write-once variables.
|
||||
*/
|
||||
int env_check_apply(const char *name, const char *oldval,
|
||||
const char *newval, int flag);
|
||||
|
||||
#endif /* DO_DEPS_ONLY */
|
||||
|
||||
#endif /* _ENVIRONMENT_H_ */
|
||||
|
||||
@@ -23,7 +23,7 @@ char *getenv (const char *name);
|
||||
int setenv (const char *varname, const char *varvalue);
|
||||
long simple_strtol(const char *cp,char **endp,unsigned int base);
|
||||
int strcmp(const char * cs,const char * ct);
|
||||
int ustrtoul(const char *cp, char **endp, unsigned int base);
|
||||
unsigned long ustrtoul(const char *cp, char **endp, unsigned int base);
|
||||
#if defined(CONFIG_CMD_I2C)
|
||||
int i2c_write (uchar, uint, int , uchar* , int);
|
||||
int i2c_read (uchar, uint, int , uchar* , int);
|
||||
|
||||
112
include/fdtdec.h
112
include/fdtdec.h
@@ -40,10 +40,12 @@
|
||||
typedef u64 fdt_addr_t;
|
||||
#define FDT_ADDR_T_NONE (-1ULL)
|
||||
#define fdt_addr_to_cpu(reg) be64_to_cpu(reg)
|
||||
#define fdt_size_to_cpu(reg) be64_to_cpu(reg)
|
||||
#else
|
||||
typedef u32 fdt_addr_t;
|
||||
#define FDT_ADDR_T_NONE (-1U)
|
||||
#define fdt_addr_to_cpu(reg) be32_to_cpu(reg)
|
||||
#define fdt_size_to_cpu(reg) be32_to_cpu(reg)
|
||||
#endif
|
||||
|
||||
/* Information obtained about memory from the FDT */
|
||||
@@ -89,6 +91,22 @@ struct fdt_gpio_state {
|
||||
/* This tells us whether a fdt_gpio_state record is valid or not */
|
||||
#define fdt_gpio_isvalid(x) ((x)->gpio != FDT_GPIO_NONE)
|
||||
|
||||
/**
|
||||
* Read the GPIO taking into account the polarity of the pin.
|
||||
*
|
||||
* @param gpio pointer to the decoded gpio
|
||||
* @return value of the gpio if successful, < 0 if unsuccessful
|
||||
*/
|
||||
int fdtdec_get_gpio(struct fdt_gpio_state *gpio);
|
||||
|
||||
/**
|
||||
* Write the GPIO taking into account the polarity of the pin.
|
||||
*
|
||||
* @param gpio pointer to the decoded gpio
|
||||
* @return 0 if successful
|
||||
*/
|
||||
int fdtdec_set_gpio(struct fdt_gpio_state *gpio, int val);
|
||||
|
||||
/**
|
||||
* Find the next numbered alias for a peripheral. This is used to enumerate
|
||||
* all the peripherals of a certain type.
|
||||
@@ -109,6 +127,19 @@ struct fdt_gpio_state {
|
||||
int fdtdec_next_alias(const void *blob, const char *name,
|
||||
enum fdt_compat_id id, int *upto);
|
||||
|
||||
/**
|
||||
* Find the compatible ID for a given node.
|
||||
*
|
||||
* Generally each node has at least one compatible string attached to it.
|
||||
* This function looks through our list of known compatible strings and
|
||||
* returns the corresponding ID which matches the compatible string.
|
||||
*
|
||||
* @param blob FDT blob to use
|
||||
* @param node Node containing compatible string to find
|
||||
* @return compatible ID, or COMPAT_UNKNOWN if we cannot find a match
|
||||
*/
|
||||
enum fdt_compat_id fdtdec_lookup(const void *blob, int node);
|
||||
|
||||
/**
|
||||
* Find the next compatible node for a peripheral.
|
||||
*
|
||||
@@ -168,6 +199,21 @@ fdt_addr_t fdtdec_get_addr(const void *blob, int node,
|
||||
s32 fdtdec_get_int(const void *blob, int node, const char *prop_name,
|
||||
s32 default_val);
|
||||
|
||||
/**
|
||||
* Look up a 64-bit integer property in a node and return it. The property
|
||||
* must have at least 8 bytes of data (2 cells). The first two cells are
|
||||
* concatenated to form a 8 bytes value, where the first cell is top half and
|
||||
* the second cell is bottom half.
|
||||
*
|
||||
* @param blob FDT blob
|
||||
* @param node node to examine
|
||||
* @param prop_name name of property to find
|
||||
* @param default_val default value to return if the property is not found
|
||||
* @return integer value, if found, or default_val if not
|
||||
*/
|
||||
uint64_t fdtdec_get_uint64(const void *blob, int node, const char *prop_name,
|
||||
uint64_t default_val);
|
||||
|
||||
/**
|
||||
* Checks whether a node is enabled.
|
||||
* This looks for a 'status' property. If this exists, then returns 1 if
|
||||
@@ -344,6 +390,22 @@ int fdtdec_get_bool(const void *blob, int node, const char *prop_name);
|
||||
int fdtdec_decode_gpio(const void *blob, int node, const char *prop_name,
|
||||
struct fdt_gpio_state *gpio);
|
||||
|
||||
/**
|
||||
* Decode a list of GPIOs from an FDT. This creates a list of GPIOs with no
|
||||
* terminating item.
|
||||
*
|
||||
* @param blob FDT blob to use
|
||||
* @param node Node to look at
|
||||
* @param prop_name Node property name
|
||||
* @param gpio Array of gpio elements to fill from FDT. This will be
|
||||
* untouched if either 0 or an error is returned
|
||||
* @param max_count Maximum number of elements allowed
|
||||
* @return number of GPIOs read if ok, -FDT_ERR_BADLAYOUT if max_count would
|
||||
* be exceeded, or -FDT_ERR_NOTFOUND if the property is missing.
|
||||
*/
|
||||
int fdtdec_decode_gpios(const void *blob, int node, const char *prop_name,
|
||||
struct fdt_gpio_state *gpio, int max_count);
|
||||
|
||||
/**
|
||||
* Set up a GPIO pin according to the provided gpio information. At present this
|
||||
* just requests the GPIO.
|
||||
@@ -356,6 +418,39 @@ int fdtdec_decode_gpio(const void *blob, int node, const char *prop_name,
|
||||
*/
|
||||
int fdtdec_setup_gpio(struct fdt_gpio_state *gpio);
|
||||
|
||||
/**
|
||||
* Look in the FDT for a config item with the given name and return its value
|
||||
* as a 32-bit integer. The property must have at least 4 bytes of data. The
|
||||
* value of the first cell is returned.
|
||||
*
|
||||
* @param blob FDT blob to use
|
||||
* @param prop_name Node property name
|
||||
* @param default_val default value to return if the property is not found
|
||||
* @return integer value, if found, or default_val if not
|
||||
*/
|
||||
int fdtdec_get_config_int(const void *blob, const char *prop_name,
|
||||
int default_val);
|
||||
|
||||
/**
|
||||
* Look in the FDT for a config item with the given name
|
||||
* and return whether it exists.
|
||||
*
|
||||
* @param blob FDT blob
|
||||
* @param prop_name property name to look up
|
||||
* @return 1, if it exists, or 0 if not
|
||||
*/
|
||||
int fdtdec_get_config_bool(const void *blob, const char *prop_name);
|
||||
|
||||
/**
|
||||
* Look in the FDT for a config item with the given name and return its value
|
||||
* as a string.
|
||||
*
|
||||
* @param blob FDT blob
|
||||
* @param prop_name property name to look up
|
||||
* @returns property string, NULL on error.
|
||||
*/
|
||||
char *fdtdec_get_config_string(const void *blob, const char *prop_name);
|
||||
|
||||
/*
|
||||
* Look up a property in a node and return its contents in a byte
|
||||
* array of given length. The property must have at least enough data for
|
||||
@@ -387,4 +482,21 @@ int fdtdec_get_byte_array(const void *blob, int node, const char *prop_name,
|
||||
*/
|
||||
const u8 *fdtdec_locate_byte_array(const void *blob, int node,
|
||||
const char *prop_name, int count);
|
||||
|
||||
/**
|
||||
* Look up a property in a node which contains a memory region address and
|
||||
* size. Then return a pointer to this address.
|
||||
*
|
||||
* The property must hold one address with a length. This is only tested on
|
||||
* 32-bit machines.
|
||||
*
|
||||
* @param blob FDT blob
|
||||
* @param node node to examine
|
||||
* @param prop_name name of property to find
|
||||
* @param ptrp returns pointer to region, or NULL if no address
|
||||
* @param size returns size of region
|
||||
* @return 0 if ok, -1 on error (propery not found)
|
||||
*/
|
||||
int fdtdec_decode_region(const void *blob, int node,
|
||||
const char *prop_name, void **ptrp, size_t *size);
|
||||
#endif
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
#define __G_DOWNLOAD_H_
|
||||
|
||||
#include <linux/usb/ch9.h>
|
||||
#include <usbdescriptors.h>
|
||||
#include <linux/usb/gadget.h>
|
||||
|
||||
int g_dnl_register(const char *s);
|
||||
|
||||
69
include/hash.h
Normal file
69
include/hash.h
Normal file
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
* Copyright (c) 2012 The Chromium OS Authors.
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef _HASH_H
|
||||
#define _HASH_H
|
||||
|
||||
#ifdef CONFIG_SHA1SUM_VERIFY
|
||||
#define CONFIG_HASH_VERIFY
|
||||
#endif
|
||||
|
||||
struct hash_algo {
|
||||
const char *name; /* Name of algorithm */
|
||||
int digest_size; /* Length of digest */
|
||||
/**
|
||||
* hash_func_ws: Generic hashing function
|
||||
*
|
||||
* This is the generic prototype for a hashing function. We only
|
||||
* have the watchdog version at present.
|
||||
*
|
||||
* @input: Input buffer
|
||||
* @ilen: Input buffer length
|
||||
* @output: Checksum result (length depends on algorithm)
|
||||
* @chunk_sz: Trigger watchdog after processing this many bytes
|
||||
*/
|
||||
void (*hash_func_ws)(const unsigned char *input, unsigned int ilen,
|
||||
unsigned char *output, unsigned int chunk_sz);
|
||||
int chunk_size; /* Watchdog chunk size */
|
||||
};
|
||||
|
||||
/*
|
||||
* Maximum digest size for all algorithms we support. Having this value
|
||||
* avoids a malloc() or C99 local declaration in common/cmd_hash.c.
|
||||
*/
|
||||
#define HASH_MAX_DIGEST_SIZE 32
|
||||
|
||||
/**
|
||||
* hash_command: Process a hash command for a particular algorithm
|
||||
*
|
||||
* This common function is used to implement specific hash commands.
|
||||
*
|
||||
* @algo_name: Hash algorithm being used
|
||||
* @verify: Non-zero to enable verify mode
|
||||
* @cmdtp: Pointer to command table entry
|
||||
* @flag: Some flags normally 0 (see CMD_FLAG_.. above)
|
||||
* @argc: Number of arguments (arg 0 must be the command text)
|
||||
* @argv: Arguments
|
||||
*/
|
||||
int hash_command(const char *algo_name, int verify, cmd_tbl_t *cmdtp, int flag,
|
||||
int argc, char * const argv[]);
|
||||
|
||||
#endif
|
||||
@@ -460,7 +460,6 @@ static inline void image_set_name(image_header_t *hdr, const char *name)
|
||||
int image_check_hcrc(const image_header_t *hdr);
|
||||
int image_check_dcrc(const image_header_t *hdr);
|
||||
#ifndef USE_HOSTCC
|
||||
int getenv_yesno(char *var);
|
||||
ulong getenv_bootm_low(void);
|
||||
phys_size_t getenv_bootm_size(void);
|
||||
phys_size_t getenv_bootm_mapsize(void);
|
||||
@@ -615,6 +614,7 @@ int fit_image_check_type(const void *fit, int noffset, uint8_t type);
|
||||
int fit_image_check_comp(const void *fit, int noffset, uint8_t comp);
|
||||
int fit_check_format(const void *fit);
|
||||
|
||||
int fit_conf_find_compat(const void *fit, const void *fdt);
|
||||
int fit_conf_get_node(const void *fit, const char *conf_uname);
|
||||
int fit_conf_get_kernel_node(const void *fit, int noffset);
|
||||
int fit_conf_get_ramdisk_node(const void *fit, int noffset);
|
||||
|
||||
@@ -302,6 +302,42 @@ void lcd_printf (const char *fmt, ...);
|
||||
void lcd_clear(void);
|
||||
int lcd_display_bitmap(ulong bmp_image, int x, int y);
|
||||
|
||||
/**
|
||||
* Get the width of the LCD in pixels
|
||||
*
|
||||
* @return width of LCD in pixels
|
||||
*/
|
||||
int lcd_get_pixel_width(void);
|
||||
|
||||
/**
|
||||
* Get the height of the LCD in pixels
|
||||
*
|
||||
* @return height of LCD in pixels
|
||||
*/
|
||||
int lcd_get_pixel_height(void);
|
||||
|
||||
/**
|
||||
* Get the number of text lines/rows on the LCD
|
||||
*
|
||||
* @return number of rows
|
||||
*/
|
||||
int lcd_get_screen_rows(void);
|
||||
|
||||
/**
|
||||
* Get the number of text columns on the LCD
|
||||
*
|
||||
* @return number of columns
|
||||
*/
|
||||
int lcd_get_screen_columns(void);
|
||||
|
||||
/**
|
||||
* Set the position of the text cursor
|
||||
*
|
||||
* @param col Column to place cursor (0 = left side)
|
||||
* @param row Row to place cursor (0 = top line)
|
||||
*/
|
||||
void lcd_position_cursor(unsigned col, unsigned row);
|
||||
|
||||
/* Allow boards to customize the information displayed */
|
||||
void lcd_show_board_info(void);
|
||||
|
||||
|
||||
@@ -122,7 +122,6 @@ static __inline__ void __swab32s(__u32 *addr)
|
||||
__arch__swab32s(addr);
|
||||
}
|
||||
|
||||
#ifdef __BYTEORDER_HAS_U64__
|
||||
static __inline__ __attribute__((const)) __u64 __fswab64(__u64 x)
|
||||
{
|
||||
# ifdef __SWAB_64_THRU_32__
|
||||
@@ -141,7 +140,6 @@ static __inline__ void __swab64s(__u64 *addr)
|
||||
{
|
||||
__arch__swab64s(addr);
|
||||
}
|
||||
#endif /* __BYTEORDER_HAS_U64__ */
|
||||
|
||||
#if defined(__KERNEL__)
|
||||
#define swab16 __swab16
|
||||
|
||||
8
include/linux/linux_string.h
Normal file
8
include/linux/linux_string.h
Normal file
@@ -0,0 +1,8 @@
|
||||
#ifndef _LINUX_LINUX_STRING_H_
|
||||
#define _LINUX_LINUX_STRING_H_
|
||||
|
||||
extern char * skip_spaces(const char *);
|
||||
|
||||
extern char *strim(char *);
|
||||
|
||||
#endif
|
||||
@@ -194,6 +194,9 @@ typedef enum {
|
||||
/* Device behaves just like nand, but is readonly */
|
||||
#define NAND_ROM 0x00000800
|
||||
|
||||
/* Device supports subpage reads */
|
||||
#define NAND_SUBPAGE_READ 0x00001000
|
||||
|
||||
/* Options valid for Samsung large page devices */
|
||||
#define NAND_SAMSUNG_LP_OPTIONS \
|
||||
(NAND_NO_PADDING | NAND_CACHEPRG | NAND_COPYBACK)
|
||||
@@ -203,9 +206,7 @@ typedef enum {
|
||||
#define NAND_MUST_PAD(chip) (!(chip->options & NAND_NO_PADDING))
|
||||
#define NAND_HAS_CACHEPROG(chip) ((chip->options & NAND_CACHEPRG))
|
||||
#define NAND_HAS_COPYBACK(chip) ((chip->options & NAND_COPYBACK))
|
||||
/* Large page NAND with SOFT_ECC should support subpage reads */
|
||||
#define NAND_SUBPAGE_READ(chip) ((chip->ecc.mode == NAND_ECC_SOFT) \
|
||||
&& (chip->page_shift > 9))
|
||||
#define NAND_HAS_SUBPAGE_READ(chip) ((chip->options & NAND_SUBPAGE_READ))
|
||||
|
||||
/* Non chip related options */
|
||||
/*
|
||||
|
||||
@@ -38,8 +38,11 @@ extern int strcmp(const char *,const char *);
|
||||
#ifndef __HAVE_ARCH_STRNCMP
|
||||
extern int strncmp(const char *,const char *,__kernel_size_t);
|
||||
#endif
|
||||
#if 0 /* not used - was: #ifndef __HAVE_ARCH_STRNICMP */
|
||||
extern int strnicmp(const char *, const char *, __kernel_size_t);
|
||||
#ifndef __HAVE_ARCH_STRCASECMP
|
||||
int strcasecmp(const char *s1, const char *s2);
|
||||
#endif
|
||||
#ifndef __HAVE_ARCH_STRNCASECMP
|
||||
extern int strncasecmp(const char *s1, const char *s2, __kernel_size_t len);
|
||||
#endif
|
||||
#ifndef __HAVE_ARCH_STRCHR
|
||||
extern char * strchr(const char *,int);
|
||||
@@ -47,10 +50,7 @@ extern char * strchr(const char *,int);
|
||||
#ifndef __HAVE_ARCH_STRRCHR
|
||||
extern char * strrchr(const char *,int);
|
||||
#endif
|
||||
extern char * skip_spaces(const char *);
|
||||
|
||||
extern char *strim(char *);
|
||||
|
||||
#include <linux/linux_string.h>
|
||||
#ifndef __HAVE_ARCH_STRSTR
|
||||
extern char * strstr(const char *,const char *);
|
||||
#endif
|
||||
|
||||
@@ -28,15 +28,13 @@
|
||||
* [c] for consistency, removing all doubt even when it appears to
|
||||
* someone that the two other points are non-issues for that
|
||||
* particular descriptor type.
|
||||
*
|
||||
* Ported to U-boot by: Thomas Smits <ts.smits@gmail.com> and
|
||||
* Remy Bohmer <linux@bohmer.net>
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_USB_CH9_H
|
||||
#define __LINUX_USB_CH9_H
|
||||
|
||||
#include <linux/types.h> /* __u8 etc */
|
||||
#include <asm/byteorder.h> /* le16_to_cpu */
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
@@ -70,7 +68,7 @@
|
||||
#define USB_RECIP_OTHER 0x03
|
||||
/* From Wireless USB 1.0 */
|
||||
#define USB_RECIP_PORT 0x04
|
||||
#define USB_RECIP_RPIPE 0x05
|
||||
#define USB_RECIP_RPIPE 0x05
|
||||
|
||||
/*
|
||||
* Standard requests, for the bRequest field of a SETUP packet.
|
||||
@@ -90,6 +88,8 @@
|
||||
#define USB_REQ_GET_INTERFACE 0x0A
|
||||
#define USB_REQ_SET_INTERFACE 0x0B
|
||||
#define USB_REQ_SYNCH_FRAME 0x0C
|
||||
#define USB_REQ_SET_SEL 0x30
|
||||
#define USB_REQ_SET_ISOCH_DELAY 0x31
|
||||
|
||||
#define USB_REQ_SET_ENCRYPTION 0x0D /* Wireless USB */
|
||||
#define USB_REQ_GET_ENCRYPTION 0x0E
|
||||
@@ -105,10 +105,16 @@
|
||||
#define USB_REQ_LOOPBACK_DATA_READ 0x16
|
||||
#define USB_REQ_SET_INTERFACE_DS 0x17
|
||||
|
||||
/* The Link Power Management (LPM) ECN defines USB_REQ_TEST_AND_SET command,
|
||||
* used by hubs to put ports into a new L1 suspend state, except that it
|
||||
* forgot to define its number ...
|
||||
*/
|
||||
|
||||
/*
|
||||
* USB feature flags are written using USB_REQ_{CLEAR,SET}_FEATURE, and
|
||||
* are read as a bit array returned by USB_REQ_GET_STATUS. (So there
|
||||
* are at most sixteen features of each type.)
|
||||
* are at most sixteen features of each type.) Hubs may also support a
|
||||
* new USB_REQ_TEST_AND_SET_FEATURE to put ports into L1 suspend.
|
||||
*/
|
||||
#define USB_DEVICE_SELF_POWERED 0 /* (read only) */
|
||||
#define USB_DEVICE_REMOTE_WAKEUP 1 /* dev may initiate wakeup */
|
||||
@@ -120,8 +126,38 @@
|
||||
#define USB_DEVICE_A_ALT_HNP_SUPPORT 5 /* (otg) other RH port does */
|
||||
#define USB_DEVICE_DEBUG_MODE 6 /* (special devices only) */
|
||||
|
||||
/*
|
||||
* Test Mode Selectors
|
||||
* See USB 2.0 spec Table 9-7
|
||||
*/
|
||||
#define TEST_J 1
|
||||
#define TEST_K 2
|
||||
#define TEST_SE0_NAK 3
|
||||
#define TEST_PACKET 4
|
||||
#define TEST_FORCE_EN 5
|
||||
|
||||
/*
|
||||
* New Feature Selectors as added by USB 3.0
|
||||
* See USB 3.0 spec Table 9-6
|
||||
*/
|
||||
#define USB_DEVICE_U1_ENABLE 48 /* dev may initiate U1 transition */
|
||||
#define USB_DEVICE_U2_ENABLE 49 /* dev may initiate U2 transition */
|
||||
#define USB_DEVICE_LTM_ENABLE 50 /* dev may send LTM */
|
||||
#define USB_INTRF_FUNC_SUSPEND 0 /* function suspend */
|
||||
|
||||
#define USB_INTR_FUNC_SUSPEND_OPT_MASK 0xFF00
|
||||
/*
|
||||
* Suspend Options, Table 9-7 USB 3.0 spec
|
||||
*/
|
||||
#define USB_INTRF_FUNC_SUSPEND_LP (1 << (8 + 0))
|
||||
#define USB_INTRF_FUNC_SUSPEND_RW (1 << (8 + 1))
|
||||
|
||||
#define USB_ENDPOINT_HALT 0 /* IN/OUT will STALL */
|
||||
|
||||
/* Bit array elements as returned by the USB_REQ_GET_STATUS request. */
|
||||
#define USB_DEV_STAT_U1_ENABLED 2 /* transition into U1 state */
|
||||
#define USB_DEV_STAT_U2_ENABLED 3 /* transition into U2 state */
|
||||
#define USB_DEV_STAT_LTM_ENABLED 4 /* Latency tolerance messages */
|
||||
|
||||
/**
|
||||
* struct usb_ctrlrequest - SETUP data for a USB device control request
|
||||
@@ -140,10 +176,6 @@
|
||||
* For most devices, interfaces don't coordinate with each other, so
|
||||
* such requests may be made at any time.
|
||||
*/
|
||||
#if defined(__BIG_ENDIAN) || defined(__ARMEB__)
|
||||
#error (functionality not verified for big endian targets, todo...)
|
||||
#endif
|
||||
|
||||
struct usb_ctrlrequest {
|
||||
__u8 bRequestType;
|
||||
__u8 bRequest;
|
||||
@@ -159,8 +191,12 @@ struct usb_ctrlrequest {
|
||||
* (rarely) accepted by SET_DESCRIPTOR.
|
||||
*
|
||||
* Note that all multi-byte values here are encoded in little endian
|
||||
* byte order "on the wire". But when exposed through Linux-USB APIs,
|
||||
* they've been converted to cpu byte order.
|
||||
* byte order "on the wire". Within the kernel and when exposed
|
||||
* through the Linux-USB APIs, they are not converted to cpu byte
|
||||
* order; it is the responsibility of the client code to do this.
|
||||
* The single exception is when device and configuration descriptors (but
|
||||
* not other descriptors) are read from usbfs (i.e. /proc/bus/usb/BBB/DDD);
|
||||
* in this case the fields are converted to host endianness by the kernel.
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -187,6 +223,11 @@ struct usb_ctrlrequest {
|
||||
#define USB_DT_WIRELESS_ENDPOINT_COMP 0x11
|
||||
#define USB_DT_WIRE_ADAPTER 0x21
|
||||
#define USB_DT_RPIPE 0x22
|
||||
#define USB_DT_CS_RADIO_CONTROL 0x23
|
||||
/* From the T10 UAS specification */
|
||||
#define USB_DT_PIPE_USAGE 0x24
|
||||
/* From the USB 3.0 spec */
|
||||
#define USB_DT_SS_ENDPOINT_COMP 0x30
|
||||
|
||||
/* Conventional codes for class-specific descriptors. The convention is
|
||||
* defined in the USB "Common Class" Spec (3.11). Individual class specs
|
||||
@@ -204,6 +245,28 @@ struct usb_descriptor_header {
|
||||
__u8 bDescriptorType;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_DEVICE: Device descriptor */
|
||||
struct usb_device_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
|
||||
__le16 bcdUSB;
|
||||
__u8 bDeviceClass;
|
||||
__u8 bDeviceSubClass;
|
||||
__u8 bDeviceProtocol;
|
||||
__u8 bMaxPacketSize0;
|
||||
__le16 idVendor;
|
||||
__le16 idProduct;
|
||||
__le16 bcdDevice;
|
||||
__u8 iManufacturer;
|
||||
__u8 iProduct;
|
||||
__u8 iSerialNumber;
|
||||
__u8 bNumConfigurations;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define USB_DT_DEVICE_SIZE 18
|
||||
|
||||
|
||||
@@ -230,6 +293,8 @@ struct usb_descriptor_header {
|
||||
#define USB_CLASS_APP_SPEC 0xfe
|
||||
#define USB_CLASS_VENDOR_SPEC 0xff
|
||||
|
||||
#define USB_SUBCLASS_VENDOR_SPEC 0xff
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_CONFIG: Configuration descriptor information.
|
||||
@@ -260,11 +325,56 @@ struct usb_config_descriptor {
|
||||
#define USB_CONFIG_ATT_WAKEUP (1 << 5) /* can wakeup */
|
||||
#define USB_CONFIG_ATT_BATTERY (1 << 4) /* battery powered */
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_STRING: String descriptor */
|
||||
struct usb_string_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
|
||||
__le16 wData[1]; /* UTF-16LE encoded */
|
||||
} __attribute__ ((packed));
|
||||
|
||||
/* note that "string" zero is special, it holds language codes that
|
||||
* the device supports, not Unicode characters.
|
||||
*/
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_INTERFACE: Interface descriptor */
|
||||
struct usb_interface_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
|
||||
__u8 bInterfaceNumber;
|
||||
__u8 bAlternateSetting;
|
||||
__u8 bNumEndpoints;
|
||||
__u8 bInterfaceClass;
|
||||
__u8 bInterfaceSubClass;
|
||||
__u8 bInterfaceProtocol;
|
||||
__u8 iInterface;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define USB_DT_INTERFACE_SIZE 9
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_ENDPOINT: Endpoint descriptor */
|
||||
struct usb_endpoint_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
|
||||
__u8 bEndpointAddress;
|
||||
__u8 bmAttributes;
|
||||
__le16 wMaxPacketSize;
|
||||
__u8 bInterval;
|
||||
|
||||
/* NOTE: these two are _only_ in audio endpoints. */
|
||||
/* use USB_DT_ENDPOINT*_SIZE in bLength, not sizeof. */
|
||||
__u8 bRefresh;
|
||||
__u8 bSynchAddress;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define USB_DT_ENDPOINT_SIZE 7
|
||||
#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */
|
||||
|
||||
@@ -282,6 +392,254 @@ struct usb_config_descriptor {
|
||||
#define USB_ENDPOINT_XFER_INT 3
|
||||
#define USB_ENDPOINT_MAX_ADJUSTABLE 0x80
|
||||
|
||||
/* The USB 3.0 spec redefines bits 5:4 of bmAttributes as interrupt ep type. */
|
||||
#define USB_ENDPOINT_INTRTYPE 0x30
|
||||
#define USB_ENDPOINT_INTR_PERIODIC (0 << 4)
|
||||
#define USB_ENDPOINT_INTR_NOTIFICATION (1 << 4)
|
||||
|
||||
#define USB_ENDPOINT_SYNCTYPE 0x0c
|
||||
#define USB_ENDPOINT_SYNC_NONE (0 << 2)
|
||||
#define USB_ENDPOINT_SYNC_ASYNC (1 << 2)
|
||||
#define USB_ENDPOINT_SYNC_ADAPTIVE (2 << 2)
|
||||
#define USB_ENDPOINT_SYNC_SYNC (3 << 2)
|
||||
|
||||
#define USB_ENDPOINT_USAGE_MASK 0x30
|
||||
#define USB_ENDPOINT_USAGE_DATA 0x00
|
||||
#define USB_ENDPOINT_USAGE_FEEDBACK 0x10
|
||||
#define USB_ENDPOINT_USAGE_IMPLICIT_FB 0x20 /* Implicit feedback Data endpoint */
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/**
|
||||
* usb_endpoint_num - get the endpoint's number
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns @epd's number: 0 to 15.
|
||||
*/
|
||||
static inline int usb_endpoint_num(const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return epd->bEndpointAddress & USB_ENDPOINT_NUMBER_MASK;
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_type - get the endpoint's transfer type
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns one of USB_ENDPOINT_XFER_{CONTROL, ISOC, BULK, INT} according
|
||||
* to @epd's transfer type.
|
||||
*/
|
||||
static inline int usb_endpoint_type(const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return epd->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK;
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_dir_in - check if the endpoint has IN direction
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type IN, otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_dir_in(const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bEndpointAddress & USB_ENDPOINT_DIR_MASK) == USB_DIR_IN);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_dir_out - check if the endpoint has OUT direction
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type OUT, otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_dir_out(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bEndpointAddress & USB_ENDPOINT_DIR_MASK) == USB_DIR_OUT);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_xfer_bulk - check if the endpoint has bulk transfer type
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type bulk, otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_xfer_bulk(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) ==
|
||||
USB_ENDPOINT_XFER_BULK);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_xfer_control - check if the endpoint has control transfer type
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type control, otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_xfer_control(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) ==
|
||||
USB_ENDPOINT_XFER_CONTROL);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_xfer_int - check if the endpoint has interrupt transfer type
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type interrupt, otherwise it returns
|
||||
* false.
|
||||
*/
|
||||
static inline int usb_endpoint_xfer_int(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) ==
|
||||
USB_ENDPOINT_XFER_INT);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_xfer_isoc - check if the endpoint has isochronous transfer type
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint is of type isochronous, otherwise it returns
|
||||
* false.
|
||||
*/
|
||||
static inline int usb_endpoint_xfer_isoc(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return ((epd->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) ==
|
||||
USB_ENDPOINT_XFER_ISOC);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_bulk_in - check if the endpoint is bulk IN
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has bulk transfer type and IN direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_bulk_in(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_bulk(epd) && usb_endpoint_dir_in(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_bulk_out - check if the endpoint is bulk OUT
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has bulk transfer type and OUT direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_bulk_out(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_bulk(epd) && usb_endpoint_dir_out(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_int_in - check if the endpoint is interrupt IN
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has interrupt transfer type and IN direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_int_in(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_int(epd) && usb_endpoint_dir_in(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_int_out - check if the endpoint is interrupt OUT
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has interrupt transfer type and OUT direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_int_out(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_int(epd) && usb_endpoint_dir_out(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_isoc_in - check if the endpoint is isochronous IN
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has isochronous transfer type and IN direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_isoc_in(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_isoc(epd) && usb_endpoint_dir_in(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_is_isoc_out - check if the endpoint is isochronous OUT
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns true if the endpoint has isochronous transfer type and OUT direction,
|
||||
* otherwise it returns false.
|
||||
*/
|
||||
static inline int usb_endpoint_is_isoc_out(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return usb_endpoint_xfer_isoc(epd) && usb_endpoint_dir_out(epd);
|
||||
}
|
||||
|
||||
/**
|
||||
* usb_endpoint_maxp - get endpoint's max packet size
|
||||
* @epd: endpoint to be checked
|
||||
*
|
||||
* Returns @epd's max packet
|
||||
*/
|
||||
static inline int usb_endpoint_maxp(const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return __le16_to_cpu(epd->wMaxPacketSize);
|
||||
}
|
||||
|
||||
static inline int usb_endpoint_interrupt_type(
|
||||
const struct usb_endpoint_descriptor *epd)
|
||||
{
|
||||
return epd->bmAttributes & USB_ENDPOINT_INTRTYPE;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_SS_ENDPOINT_COMP: SuperSpeed Endpoint Companion descriptor */
|
||||
struct usb_ss_ep_comp_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
|
||||
__u8 bMaxBurst;
|
||||
__u8 bmAttributes;
|
||||
__le16 wBytesPerInterval;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define USB_DT_SS_EP_COMP_SIZE 6
|
||||
|
||||
/* Bits 4:0 of bmAttributes if this is a bulk endpoint */
|
||||
static inline int
|
||||
usb_ss_max_streams(const struct usb_ss_ep_comp_descriptor *comp)
|
||||
{
|
||||
int max_streams;
|
||||
|
||||
if (!comp)
|
||||
return 0;
|
||||
|
||||
max_streams = comp->bmAttributes & 0x1f;
|
||||
|
||||
if (!max_streams)
|
||||
return 0;
|
||||
|
||||
max_streams = 1 << max_streams;
|
||||
|
||||
return max_streams;
|
||||
}
|
||||
|
||||
/* Bits 1:0 of bmAttributes if this is an isoc endpoint */
|
||||
#define USB_SS_MULT(p) (1 + ((p) & 0x3))
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
@@ -388,7 +746,7 @@ struct usb_encryption_descriptor {
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_BOS: group of wireless capabilities */
|
||||
/* USB_DT_BOS: group of device-level capabilities */
|
||||
struct usb_bos_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
@@ -397,6 +755,7 @@ struct usb_bos_descriptor {
|
||||
__u8 bNumDeviceCaps;
|
||||
} __attribute__((packed));
|
||||
|
||||
#define USB_DT_BOS_SIZE 5
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_DEVICE_CAPABILITY: grouped with BOS */
|
||||
@@ -434,6 +793,61 @@ struct usb_wireless_cap_descriptor { /* Ultra Wide Band */
|
||||
__u8 bReserved;
|
||||
} __attribute__((packed));
|
||||
|
||||
/* USB 2.0 Extension descriptor */
|
||||
#define USB_CAP_TYPE_EXT 2
|
||||
|
||||
struct usb_ext_cap_descriptor { /* Link Power Management */
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
__u8 bDevCapabilityType;
|
||||
__le32 bmAttributes;
|
||||
#define USB_LPM_SUPPORT (1 << 1) /* supports LPM */
|
||||
#define USB_BESL_SUPPORT (1 << 2) /* supports BESL */
|
||||
#define USB_BESL_BASELINE_VALID (1 << 3) /* Baseline BESL valid*/
|
||||
#define USB_BESL_DEEP_VALID (1 << 4) /* Deep BESL valid */
|
||||
#define USB_GET_BESL_BASELINE(p) (((p) & (0xf << 8)) >> 8)
|
||||
#define USB_GET_BESL_DEEP(p) (((p) & (0xf << 12)) >> 12)
|
||||
} __attribute__((packed));
|
||||
|
||||
#define USB_DT_USB_EXT_CAP_SIZE 7
|
||||
|
||||
/*
|
||||
* SuperSpeed USB Capability descriptor: Defines the set of SuperSpeed USB
|
||||
* specific device level capabilities
|
||||
*/
|
||||
#define USB_SS_CAP_TYPE 3
|
||||
struct usb_ss_cap_descriptor { /* Link Power Management */
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
__u8 bDevCapabilityType;
|
||||
__u8 bmAttributes;
|
||||
#define USB_LTM_SUPPORT (1 << 1) /* supports LTM */
|
||||
__le16 wSpeedSupported;
|
||||
#define USB_LOW_SPEED_OPERATION (1) /* Low speed operation */
|
||||
#define USB_FULL_SPEED_OPERATION (1 << 1) /* Full speed operation */
|
||||
#define USB_HIGH_SPEED_OPERATION (1 << 2) /* High speed operation */
|
||||
#define USB_5GBPS_OPERATION (1 << 3) /* Operation at 5Gbps */
|
||||
__u8 bFunctionalitySupport;
|
||||
__u8 bU1devExitLat;
|
||||
__le16 bU2DevExitLat;
|
||||
} __attribute__((packed));
|
||||
|
||||
#define USB_DT_USB_SS_CAP_SIZE 10
|
||||
|
||||
/*
|
||||
* Container ID Capability descriptor: Defines the instance unique ID used to
|
||||
* identify the instance across all operating modes
|
||||
*/
|
||||
#define CONTAINER_ID_TYPE 4
|
||||
struct usb_ss_container_id_descriptor {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
__u8 bDevCapabilityType;
|
||||
__u8 bReserved;
|
||||
__u8 ContainerID[16]; /* 128-bit number */
|
||||
} __attribute__((packed));
|
||||
|
||||
#define USB_DT_USB_SS_CONTN_ID_SIZE 20
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/* USB_DT_WIRELESS_ENDPOINT_COMP: companion descriptor associated with
|
||||
@@ -491,9 +905,22 @@ enum usb_device_speed {
|
||||
USB_SPEED_UNKNOWN = 0, /* enumerating */
|
||||
USB_SPEED_LOW, USB_SPEED_FULL, /* usb 1.1 */
|
||||
USB_SPEED_HIGH, /* usb 2.0 */
|
||||
USB_SPEED_VARIABLE, /* wireless (usb 2.5) */
|
||||
USB_SPEED_WIRELESS, /* wireless (usb 2.5) */
|
||||
USB_SPEED_SUPER, /* usb 3.0 */
|
||||
};
|
||||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
/**
|
||||
* usb_speed_string() - Returns human readable-name of the speed.
|
||||
* @speed: The speed to return human-readable name for. If it's not
|
||||
* any of the speeds defined in usb_device_speed enum, string for
|
||||
* USB_SPEED_UNKNOWN will be returned.
|
||||
*/
|
||||
extern const char *usb_speed_string(enum usb_device_speed speed);
|
||||
|
||||
#endif
|
||||
|
||||
enum usb_device_state {
|
||||
/* NOTATTACHED isn't in the USB spec, and this state acts
|
||||
* the same as ATTACHED ... but it's clearer this way.
|
||||
@@ -503,8 +930,8 @@ enum usb_device_state {
|
||||
/* chapter 9 and authentication (wireless) device states */
|
||||
USB_STATE_ATTACHED,
|
||||
USB_STATE_POWERED, /* wired */
|
||||
USB_STATE_UNAUTHENTICATED, /* auth */
|
||||
USB_STATE_RECONNECTING, /* auth */
|
||||
USB_STATE_UNAUTHENTICATED, /* auth */
|
||||
USB_STATE_DEFAULT, /* limited function */
|
||||
USB_STATE_ADDRESS,
|
||||
USB_STATE_CONFIGURED, /* most functions */
|
||||
@@ -514,7 +941,64 @@ enum usb_device_state {
|
||||
/* NOTE: there are actually four different SUSPENDED
|
||||
* states, returning to POWERED, DEFAULT, ADDRESS, or
|
||||
* CONFIGURED respectively when SOF tokens flow again.
|
||||
* At this level there's no difference between L1 and L2
|
||||
* suspend states. (L2 being original USB 1.1 suspend.)
|
||||
*/
|
||||
};
|
||||
|
||||
#endif /* __LINUX_USB_CH9_H */
|
||||
enum usb3_link_state {
|
||||
USB3_LPM_U0 = 0,
|
||||
USB3_LPM_U1,
|
||||
USB3_LPM_U2,
|
||||
USB3_LPM_U3
|
||||
};
|
||||
|
||||
/*
|
||||
* A U1 timeout of 0x0 means the parent hub will reject any transitions to U1.
|
||||
* 0xff means the parent hub will accept transitions to U1, but will not
|
||||
* initiate a transition.
|
||||
*
|
||||
* A U1 timeout of 0x1 to 0x7F also causes the hub to initiate a transition to
|
||||
* U1 after that many microseconds. Timeouts of 0x80 to 0xFE are reserved
|
||||
* values.
|
||||
*
|
||||
* A U2 timeout of 0x0 means the parent hub will reject any transitions to U2.
|
||||
* 0xff means the parent hub will accept transitions to U2, but will not
|
||||
* initiate a transition.
|
||||
*
|
||||
* A U2 timeout of 0x1 to 0xFE also causes the hub to initiate a transition to
|
||||
* U2 after N*256 microseconds. Therefore a U2 timeout value of 0x1 means a U2
|
||||
* idle timer of 256 microseconds, 0x2 means 512 microseconds, 0xFE means
|
||||
* 65.024ms.
|
||||
*/
|
||||
#define USB3_LPM_DISABLED 0x0
|
||||
#define USB3_LPM_U1_MAX_TIMEOUT 0x7F
|
||||
#define USB3_LPM_U2_MAX_TIMEOUT 0xFE
|
||||
#define USB3_LPM_DEVICE_INITIATED 0xFF
|
||||
|
||||
struct usb_set_sel_req {
|
||||
__u8 u1_sel;
|
||||
__u8 u1_pel;
|
||||
__le16 u2_sel;
|
||||
__le16 u2_pel;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
/*
|
||||
* The Set System Exit Latency control transfer provides one byte each for
|
||||
* U1 SEL and U1 PEL, so the max exit latency is 0xFF. U2 SEL and U2 PEL each
|
||||
* are two bytes long.
|
||||
*/
|
||||
#define USB3_LPM_MAX_U1_SEL_PEL 0xFF
|
||||
#define USB3_LPM_MAX_U2_SEL_PEL 0xFFFF
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/*
|
||||
* As per USB compliance update, a device that is actively drawing
|
||||
* more than 100mA from USB must report itself as bus-powered in
|
||||
* the GetStatus(DEVICE) call.
|
||||
* http://compliance.usb.org/index.asp?UpdateFile=Electrical&Format=Standard#34
|
||||
*/
|
||||
#define USB_SELF_POWER_VBUS_MAX_DRAW 100
|
||||
|
||||
#endif /* __LINUX_USB_CH9_H */
|
||||
|
||||
162
include/linux/usb/musb.h
Normal file
162
include/linux/usb/musb.h
Normal file
@@ -0,0 +1,162 @@
|
||||
/*
|
||||
* This is used to for host and peripheral modes of the driver for
|
||||
* Inventra (Multidrop) Highspeed Dual-Role Controllers: (M)HDRC.
|
||||
*
|
||||
* Board initialization should put one of these into dev->platform_data,
|
||||
* probably on some platform_device named "musb-hdrc". It encapsulates
|
||||
* key configuration differences between boards.
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_USB_MUSB_H
|
||||
#define __LINUX_USB_MUSB_H
|
||||
|
||||
#ifndef __deprecated
|
||||
#define __deprecated
|
||||
#endif
|
||||
|
||||
/* The USB role is defined by the connector used on the board, so long as
|
||||
* standards are being followed. (Developer boards sometimes won't.)
|
||||
*/
|
||||
enum musb_mode {
|
||||
MUSB_UNDEFINED = 0,
|
||||
MUSB_HOST, /* A or Mini-A connector */
|
||||
MUSB_PERIPHERAL, /* B or Mini-B connector */
|
||||
MUSB_OTG /* Mini-AB connector */
|
||||
};
|
||||
|
||||
struct clk;
|
||||
|
||||
enum musb_fifo_style {
|
||||
FIFO_RXTX,
|
||||
FIFO_TX,
|
||||
FIFO_RX
|
||||
} __attribute__ ((packed));
|
||||
|
||||
enum musb_buf_mode {
|
||||
BUF_SINGLE,
|
||||
BUF_DOUBLE
|
||||
} __attribute__ ((packed));
|
||||
|
||||
struct musb_fifo_cfg {
|
||||
u8 hw_ep_num;
|
||||
enum musb_fifo_style style;
|
||||
enum musb_buf_mode mode;
|
||||
u16 maxpacket;
|
||||
};
|
||||
|
||||
#define MUSB_EP_FIFO(ep, st, m, pkt) \
|
||||
{ \
|
||||
.hw_ep_num = ep, \
|
||||
.style = st, \
|
||||
.mode = m, \
|
||||
.maxpacket = pkt, \
|
||||
}
|
||||
|
||||
#define MUSB_EP_FIFO_SINGLE(ep, st, pkt) \
|
||||
MUSB_EP_FIFO(ep, st, BUF_SINGLE, pkt)
|
||||
|
||||
#define MUSB_EP_FIFO_DOUBLE(ep, st, pkt) \
|
||||
MUSB_EP_FIFO(ep, st, BUF_DOUBLE, pkt)
|
||||
|
||||
struct musb_hdrc_eps_bits {
|
||||
const char name[16];
|
||||
u8 bits;
|
||||
};
|
||||
|
||||
struct musb_hdrc_config {
|
||||
struct musb_fifo_cfg *fifo_cfg; /* board fifo configuration */
|
||||
unsigned fifo_cfg_size; /* size of the fifo configuration */
|
||||
|
||||
/* MUSB configuration-specific details */
|
||||
unsigned multipoint:1; /* multipoint device */
|
||||
unsigned dyn_fifo:1 __deprecated; /* supports dynamic fifo sizing */
|
||||
unsigned soft_con:1 __deprecated; /* soft connect required */
|
||||
unsigned utm_16:1 __deprecated; /* utm data witdh is 16 bits */
|
||||
unsigned big_endian:1; /* true if CPU uses big-endian */
|
||||
unsigned mult_bulk_tx:1; /* Tx ep required for multbulk pkts */
|
||||
unsigned mult_bulk_rx:1; /* Rx ep required for multbulk pkts */
|
||||
unsigned high_iso_tx:1; /* Tx ep required for HB iso */
|
||||
unsigned high_iso_rx:1; /* Rx ep required for HD iso */
|
||||
unsigned dma:1 __deprecated; /* supports DMA */
|
||||
unsigned vendor_req:1 __deprecated; /* vendor registers required */
|
||||
|
||||
u8 num_eps; /* number of endpoints _with_ ep0 */
|
||||
u8 dma_channels __deprecated; /* number of dma channels */
|
||||
u8 dyn_fifo_size; /* dynamic size in bytes */
|
||||
u8 vendor_ctrl __deprecated; /* vendor control reg width */
|
||||
u8 vendor_stat __deprecated; /* vendor status reg witdh */
|
||||
u8 dma_req_chan __deprecated; /* bitmask for required dma channels */
|
||||
u8 ram_bits; /* ram address size */
|
||||
|
||||
struct musb_hdrc_eps_bits *eps_bits __deprecated;
|
||||
#ifdef CONFIG_BLACKFIN
|
||||
/* A GPIO controlling VRSEL in Blackfin */
|
||||
unsigned int gpio_vrsel;
|
||||
unsigned int gpio_vrsel_active;
|
||||
/* musb CLKIN in Blackfin in MHZ */
|
||||
unsigned char clkin;
|
||||
#endif
|
||||
|
||||
};
|
||||
|
||||
struct musb_hdrc_platform_data {
|
||||
/* MUSB_HOST, MUSB_PERIPHERAL, or MUSB_OTG */
|
||||
u8 mode;
|
||||
|
||||
/* for clk_get() */
|
||||
const char *clock;
|
||||
|
||||
/* (HOST or OTG) switch VBUS on/off */
|
||||
int (*set_vbus)(struct device *dev, int is_on);
|
||||
|
||||
/* (HOST or OTG) mA/2 power supplied on (default = 8mA) */
|
||||
u8 power;
|
||||
|
||||
/* (PERIPHERAL) mA/2 max power consumed (default = 100mA) */
|
||||
u8 min_power;
|
||||
|
||||
/* (HOST or OTG) msec/2 after VBUS on till power good */
|
||||
u8 potpgt;
|
||||
|
||||
/* (HOST or OTG) program PHY for external Vbus */
|
||||
unsigned extvbus:1;
|
||||
|
||||
/* Power the device on or off */
|
||||
int (*set_power)(int state);
|
||||
|
||||
/* MUSB configuration-specific details */
|
||||
struct musb_hdrc_config *config;
|
||||
|
||||
/* Architecture specific board data */
|
||||
void *board_data;
|
||||
|
||||
/* Platform specific struct musb_ops pointer */
|
||||
const void *platform_ops;
|
||||
};
|
||||
|
||||
|
||||
/* TUSB 6010 support */
|
||||
|
||||
#define TUSB6010_OSCCLK_60 16667 /* psec/clk @ 60.0 MHz */
|
||||
#define TUSB6010_REFCLK_24 41667 /* psec/clk @ 24.0 MHz XI */
|
||||
#define TUSB6010_REFCLK_19 52083 /* psec/clk @ 19.2 MHz CLKIN */
|
||||
|
||||
#ifdef CONFIG_ARCH_OMAP2
|
||||
|
||||
extern int __init tusb6010_setup_interface(
|
||||
struct musb_hdrc_platform_data *data,
|
||||
unsigned ps_refclk, unsigned waitpin,
|
||||
unsigned async_cs, unsigned sync_cs,
|
||||
unsigned irq, unsigned dmachan);
|
||||
|
||||
extern int tusb6010_platform_retime(unsigned is_refclk);
|
||||
|
||||
#endif /* OMAP2 */
|
||||
|
||||
/*
|
||||
* U-Boot specfic stuff
|
||||
*/
|
||||
int musb_register(struct musb_hdrc_platform_data *plat, void *bdata,
|
||||
void *ctl_regs);
|
||||
|
||||
#endif /* __LINUX_USB_MUSB_H */
|
||||
@@ -139,6 +139,7 @@ int nand_read_skip_bad(nand_info_t *nand, loff_t offset, size_t *length,
|
||||
int nand_write_skip_bad(nand_info_t *nand, loff_t offset, size_t *length,
|
||||
u_char *buffer, int flags);
|
||||
int nand_erase_opts(nand_info_t *meminfo, const nand_erase_options_t *opts);
|
||||
int nand_torture(nand_info_t *nand, loff_t offset);
|
||||
|
||||
#define NAND_LOCK_STATUS_TIGHT 0x01
|
||||
#define NAND_LOCK_STATUS_UNLOCK 0x04
|
||||
|
||||
@@ -24,8 +24,6 @@
|
||||
#ifndef __NIOS2_H__
|
||||
#define __NIOS2_H__
|
||||
|
||||
#include <linux/stringify.h>
|
||||
|
||||
/*------------------------------------------------------------------------
|
||||
* Control registers -- use with wrctl() & rdctl()
|
||||
*----------------------------------------------------------------------*/
|
||||
@@ -39,14 +37,8 @@
|
||||
* Access to control regs
|
||||
*----------------------------------------------------------------------*/
|
||||
|
||||
#define rdctl(reg)\
|
||||
({unsigned int val;\
|
||||
asm volatile("rdctl %0, ctl" __stringify(reg) \
|
||||
: "=r" (val) ); val;})
|
||||
|
||||
#define wrctl(reg,val)\
|
||||
asm volatile( "wrctl ctl" _str_(reg) ",%0"\
|
||||
: : "r" (val))
|
||||
#define rdctl(reg) __builtin_rdctl(reg)
|
||||
#define wrctl(reg, val) __builtin_wrctl(reg, val)
|
||||
|
||||
/*------------------------------------------------------------------------
|
||||
* Control reg bit masks
|
||||
|
||||
@@ -176,10 +176,62 @@ int test_part_amiga (block_dev_desc_t *dev_desc);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_EFI_PARTITION
|
||||
#include <part_efi.h>
|
||||
/* disk/part_efi.c */
|
||||
int get_partition_info_efi (block_dev_desc_t * dev_desc, int part, disk_partition_t *info);
|
||||
void print_part_efi (block_dev_desc_t *dev_desc);
|
||||
int test_part_efi (block_dev_desc_t *dev_desc);
|
||||
|
||||
/**
|
||||
* write_gpt_table() - Write the GUID Partition Table to disk
|
||||
*
|
||||
* @param dev_desc - block device descriptor
|
||||
* @param gpt_h - pointer to GPT header representation
|
||||
* @param gpt_e - pointer to GPT partition table entries
|
||||
*
|
||||
* @return - zero on success, otherwise error
|
||||
*/
|
||||
int write_gpt_table(block_dev_desc_t *dev_desc,
|
||||
gpt_header *gpt_h, gpt_entry *gpt_e);
|
||||
|
||||
/**
|
||||
* gpt_fill_pte(): Fill the GPT partition table entry
|
||||
*
|
||||
* @param gpt_h - GPT header representation
|
||||
* @param gpt_e - GPT partition table entries
|
||||
* @param partitions - list of partitions
|
||||
* @param parts - number of partitions
|
||||
*
|
||||
* @return zero on success
|
||||
*/
|
||||
int gpt_fill_pte(gpt_header *gpt_h, gpt_entry *gpt_e,
|
||||
disk_partition_t *partitions, int parts);
|
||||
|
||||
/**
|
||||
* gpt_fill_header(): Fill the GPT header
|
||||
*
|
||||
* @param dev_desc - block device descriptor
|
||||
* @param gpt_h - GPT header representation
|
||||
* @param str_guid - disk guid string representation
|
||||
* @param parts_count - number of partitions
|
||||
*
|
||||
* @return - error on str_guid conversion error
|
||||
*/
|
||||
int gpt_fill_header(block_dev_desc_t *dev_desc, gpt_header *gpt_h,
|
||||
char *str_guid, int parts_count);
|
||||
|
||||
/**
|
||||
* gpt_restore(): Restore GPT partition table
|
||||
*
|
||||
* @param dev_desc - block device descriptor
|
||||
* @param str_disk_guid - disk GUID
|
||||
* @param partitions - list of partitions
|
||||
* @param parts - number of partitions
|
||||
*
|
||||
* @return zero on success
|
||||
*/
|
||||
int gpt_restore(block_dev_desc_t *dev_desc, char *str_disk_guid,
|
||||
disk_partition_t *partitions, const int parts_count);
|
||||
#endif
|
||||
|
||||
#endif /* _PART_H */
|
||||
|
||||
147
include/part_efi.h
Normal file
147
include/part_efi.h
Normal file
@@ -0,0 +1,147 @@
|
||||
/*
|
||||
* Copyright (C) 2008 RuggedCom, Inc.
|
||||
* Richard Retanubun <RichardRetanubun@RuggedCom.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
/*
|
||||
* See also linux/fs/partitions/efi.h
|
||||
*
|
||||
* EFI GUID Partition Table
|
||||
* Per Intel EFI Specification v1.02
|
||||
* http://developer.intel.com/technology/efi/efi.htm
|
||||
*/
|
||||
|
||||
#include <linux/compiler.h>
|
||||
|
||||
#ifndef _DISK_PART_EFI_H
|
||||
#define _DISK_PART_EFI_H
|
||||
|
||||
#define MSDOS_MBR_SIGNATURE 0xAA55
|
||||
#define EFI_PMBR_OSTYPE_EFI 0xEF
|
||||
#define EFI_PMBR_OSTYPE_EFI_GPT 0xEE
|
||||
|
||||
#define GPT_BLOCK_SIZE 512
|
||||
#define GPT_HEADER_SIGNATURE 0x5452415020494645ULL
|
||||
#define GPT_HEADER_REVISION_V1 0x00010000
|
||||
#define GPT_PRIMARY_PARTITION_TABLE_LBA 1ULL
|
||||
#define GPT_ENTRY_NAME "gpt"
|
||||
#define GPT_ENTRY_NUMBERS 128
|
||||
#define GPT_ENTRY_SIZE 128
|
||||
|
||||
#define EFI_GUID(a,b,c,d0,d1,d2,d3,d4,d5,d6,d7) \
|
||||
((efi_guid_t) \
|
||||
{{ (a) & 0xff, ((a) >> 8) & 0xff, ((a) >> 16) & 0xff, ((a) >> 24) & 0xff, \
|
||||
(b) & 0xff, ((b) >> 8) & 0xff, \
|
||||
(c) & 0xff, ((c) >> 8) & 0xff, \
|
||||
(d0), (d1), (d2), (d3), (d4), (d5), (d6), (d7) }})
|
||||
|
||||
#define PARTITION_SYSTEM_GUID \
|
||||
EFI_GUID( 0xC12A7328, 0xF81F, 0x11d2, \
|
||||
0xBA, 0x4B, 0x00, 0xA0, 0xC9, 0x3E, 0xC9, 0x3B)
|
||||
#define LEGACY_MBR_PARTITION_GUID \
|
||||
EFI_GUID( 0x024DEE41, 0x33E7, 0x11d3, \
|
||||
0x9D, 0x69, 0x00, 0x08, 0xC7, 0x81, 0xF3, 0x9F)
|
||||
#define PARTITION_MSFT_RESERVED_GUID \
|
||||
EFI_GUID( 0xE3C9E316, 0x0B5C, 0x4DB8, \
|
||||
0x81, 0x7D, 0xF9, 0x2D, 0xF0, 0x02, 0x15, 0xAE)
|
||||
#define PARTITION_BASIC_DATA_GUID \
|
||||
EFI_GUID( 0xEBD0A0A2, 0xB9E5, 0x4433, \
|
||||
0x87, 0xC0, 0x68, 0xB6, 0xB7, 0x26, 0x99, 0xC7)
|
||||
#define PARTITION_LINUX_RAID_GUID \
|
||||
EFI_GUID( 0xa19d880f, 0x05fc, 0x4d3b, \
|
||||
0xa0, 0x06, 0x74, 0x3f, 0x0f, 0x84, 0x91, 0x1e)
|
||||
#define PARTITION_LINUX_SWAP_GUID \
|
||||
EFI_GUID( 0x0657fd6d, 0xa4ab, 0x43c4, \
|
||||
0x84, 0xe5, 0x09, 0x33, 0xc8, 0x4b, 0x4f, 0x4f)
|
||||
#define PARTITION_LINUX_LVM_GUID \
|
||||
EFI_GUID( 0xe6d6d379, 0xf507, 0x44c2, \
|
||||
0xa2, 0x3c, 0x23, 0x8f, 0x2a, 0x3d, 0xf9, 0x28)
|
||||
|
||||
/* linux/include/efi.h */
|
||||
typedef u16 efi_char16_t;
|
||||
|
||||
typedef struct {
|
||||
u8 b[16];
|
||||
} efi_guid_t;
|
||||
|
||||
/* based on linux/include/genhd.h */
|
||||
struct partition {
|
||||
u8 boot_ind; /* 0x80 - active */
|
||||
u8 head; /* starting head */
|
||||
u8 sector; /* starting sector */
|
||||
u8 cyl; /* starting cylinder */
|
||||
u8 sys_ind; /* What partition type */
|
||||
u8 end_head; /* end head */
|
||||
u8 end_sector; /* end sector */
|
||||
u8 end_cyl; /* end cylinder */
|
||||
__le32 start_sect; /* starting sector counting from 0 */
|
||||
__le32 nr_sects; /* nr of sectors in partition */
|
||||
} __packed;
|
||||
|
||||
/* based on linux/fs/partitions/efi.h */
|
||||
typedef struct _gpt_header {
|
||||
__le64 signature;
|
||||
__le32 revision;
|
||||
__le32 header_size;
|
||||
__le32 header_crc32;
|
||||
__le32 reserved1;
|
||||
__le64 my_lba;
|
||||
__le64 alternate_lba;
|
||||
__le64 first_usable_lba;
|
||||
__le64 last_usable_lba;
|
||||
efi_guid_t disk_guid;
|
||||
__le64 partition_entry_lba;
|
||||
__le32 num_partition_entries;
|
||||
__le32 sizeof_partition_entry;
|
||||
__le32 partition_entry_array_crc32;
|
||||
u8 reserved2[GPT_BLOCK_SIZE - 92];
|
||||
} __packed gpt_header;
|
||||
|
||||
typedef union _gpt_entry_attributes {
|
||||
struct {
|
||||
u64 required_to_function:1;
|
||||
u64 no_block_io_protocol:1;
|
||||
u64 legacy_bios_bootable:1;
|
||||
u64 reserved:45;
|
||||
u64 type_guid_specific:16;
|
||||
} fields;
|
||||
unsigned long long raw;
|
||||
} __packed gpt_entry_attributes;
|
||||
|
||||
#define PARTNAME_SZ (72 / sizeof(efi_char16_t))
|
||||
typedef struct _gpt_entry {
|
||||
efi_guid_t partition_type_guid;
|
||||
efi_guid_t unique_partition_guid;
|
||||
__le64 starting_lba;
|
||||
__le64 ending_lba;
|
||||
gpt_entry_attributes attributes;
|
||||
efi_char16_t partition_name[PARTNAME_SZ];
|
||||
} __packed gpt_entry;
|
||||
|
||||
typedef struct _legacy_mbr {
|
||||
u8 boot_code[440];
|
||||
__le32 unique_mbr_signature;
|
||||
__le16 unknown;
|
||||
struct partition partition_record[4];
|
||||
__le16 signature;
|
||||
} __packed legacy_mbr;
|
||||
|
||||
#endif /* _DISK_PART_EFI_H */
|
||||
123
include/pci.h
123
include/pci.h
@@ -67,7 +67,130 @@
|
||||
#define PCI_CLASS_PROG 0x09 /* Reg. Level Programming Interface */
|
||||
#define PCI_CLASS_DEVICE 0x0a /* Device class */
|
||||
#define PCI_CLASS_CODE 0x0b /* Device class code */
|
||||
#define PCI_CLASS_CODE_TOO_OLD 0x00
|
||||
#define PCI_CLASS_CODE_STORAGE 0x01
|
||||
#define PCI_CLASS_CODE_NETWORK 0x02
|
||||
#define PCI_CLASS_CODE_DISPLAY 0x03
|
||||
#define PCI_CLASS_CODE_MULTIMEDIA 0x04
|
||||
#define PCI_CLASS_CODE_MEMORY 0x05
|
||||
#define PCI_CLASS_CODE_BRIDGE 0x06
|
||||
#define PCI_CLASS_CODE_COMM 0x07
|
||||
#define PCI_CLASS_CODE_PERIPHERAL 0x08
|
||||
#define PCI_CLASS_CODE_INPUT 0x09
|
||||
#define PCI_CLASS_CODE_DOCKING 0x0A
|
||||
#define PCI_CLASS_CODE_PROCESSOR 0x0B
|
||||
#define PCI_CLASS_CODE_SERIAL 0x0C
|
||||
#define PCI_CLASS_CODE_WIRELESS 0x0D
|
||||
#define PCI_CLASS_CODE_I2O 0x0E
|
||||
#define PCI_CLASS_CODE_SATELLITE 0x0F
|
||||
#define PCI_CLASS_CODE_CRYPTO 0x10
|
||||
#define PCI_CLASS_CODE_DATA 0x11
|
||||
/* Base Class 0x12 - 0xFE is reserved */
|
||||
#define PCI_CLASS_CODE_OTHER 0xFF
|
||||
|
||||
#define PCI_CLASS_SUB_CODE 0x0a /* Device sub-class code */
|
||||
#define PCI_CLASS_SUB_CODE_TOO_OLD_NOTVGA 0x00
|
||||
#define PCI_CLASS_SUB_CODE_TOO_OLD_VGA 0x01
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_SCSI 0x00
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_IDE 0x01
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_FLOPPY 0x02
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_IPIBUS 0x03
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_RAID 0x04
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_ATA 0x05
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_SATA 0x06
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_SAS 0x07
|
||||
#define PCI_CLASS_SUB_CODE_STORAGE_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_ETHERNET 0x00
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_TOKENRING 0x01
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_FDDI 0x02
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_ATM 0x03
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_ISDN 0x04
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_WORLDFIP 0x05
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_PICMG 0x06
|
||||
#define PCI_CLASS_SUB_CODE_NETWORK_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_DISPLAY_VGA 0x00
|
||||
#define PCI_CLASS_SUB_CODE_DISPLAY_XGA 0x01
|
||||
#define PCI_CLASS_SUB_CODE_DISPLAY_3D 0x02
|
||||
#define PCI_CLASS_SUB_CODE_DISPLAY_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_MULTIMEDIA_VIDEO 0x00
|
||||
#define PCI_CLASS_SUB_CODE_MULTIMEDIA_AUDIO 0x01
|
||||
#define PCI_CLASS_SUB_CODE_MULTIMEDIA_PHONE 0x02
|
||||
#define PCI_CLASS_SUB_CODE_MULTIMEDIA_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_MEMORY_RAM 0x00
|
||||
#define PCI_CLASS_SUB_CODE_MEMORY_FLASH 0x01
|
||||
#define PCI_CLASS_SUB_CODE_MEMORY_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_HOST 0x00
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_ISA 0x01
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_EISA 0x02
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_MCA 0x03
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_PCI 0x04
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_PCMCIA 0x05
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_NUBUS 0x06
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_CARDBUS 0x07
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_RACEWAY 0x08
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_SEMI_PCI 0x09
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_INFINIBAND 0x0A
|
||||
#define PCI_CLASS_SUB_CODE_BRIDGE_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_COMM_SERIAL 0x00
|
||||
#define PCI_CLASS_SUB_CODE_COMM_PARALLEL 0x01
|
||||
#define PCI_CLASS_SUB_CODE_COMM_MULTIPORT 0x02
|
||||
#define PCI_CLASS_SUB_CODE_COMM_MODEM 0x03
|
||||
#define PCI_CLASS_SUB_CODE_COMM_GPIB 0x04
|
||||
#define PCI_CLASS_SUB_CODE_COMM_SMARTCARD 0x05
|
||||
#define PCI_CLASS_SUB_CODE_COMM_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_PIC 0x00
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_DMA 0x01
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_TIMER 0x02
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_RTC 0x03
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_HOTPLUG 0x04
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_SD 0x05
|
||||
#define PCI_CLASS_SUB_CODE_PERIPHERAL_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_KEYBOARD 0x00
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_DIGITIZER 0x01
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_MOUSE 0x02
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_SCANNER 0x03
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_GAMEPORT 0x04
|
||||
#define PCI_CLASS_SUB_CODE_INPUT_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_DOCKING_GENERIC 0x00
|
||||
#define PCI_CLASS_SUB_CODE_DOCKING_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_386 0x00
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_486 0x01
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_PENTIUM 0x02
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_ALPHA 0x10
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_POWERPC 0x20
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_MIPS 0x30
|
||||
#define PCI_CLASS_SUB_CODE_PROCESSOR_COPROC 0x40
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_1394 0x00
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_ACCESSBUS 0x01
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_SSA 0x02
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_USB 0x03
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_FIBRECHAN 0x04
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_SMBUS 0x05
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_INFINIBAND 0x06
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_IPMI 0x07
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_SERCOS 0x08
|
||||
#define PCI_CLASS_SUB_CODE_SERIAL_CANBUS 0x09
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_IRDA 0x00
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_IR 0x01
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_RF 0x10
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_BLUETOOTH 0x11
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_BROADBAND 0x12
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_80211A 0x20
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_80211B 0x21
|
||||
#define PCI_CLASS_SUB_CODE_WIRELESS_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_I2O_V1_0 0x00
|
||||
#define PCI_CLASS_SUB_CODE_SATELLITE_TV 0x01
|
||||
#define PCI_CLASS_SUB_CODE_SATELLITE_AUDIO 0x02
|
||||
#define PCI_CLASS_SUB_CODE_SATELLITE_VOICE 0x03
|
||||
#define PCI_CLASS_SUB_CODE_SATELLITE_DATA 0x04
|
||||
#define PCI_CLASS_SUB_CODE_CRYPTO_NETWORK 0x00
|
||||
#define PCI_CLASS_SUB_CODE_CRYPTO_ENTERTAINMENT 0x10
|
||||
#define PCI_CLASS_SUB_CODE_CRYPTO_OTHER 0x80
|
||||
#define PCI_CLASS_SUB_CODE_DATA_DPIO 0x00
|
||||
#define PCI_CLASS_SUB_CODE_DATA_PERFCNTR 0x01
|
||||
#define PCI_CLASS_SUB_CODE_DATA_COMMSYNC 0x10
|
||||
#define PCI_CLASS_SUB_CODE_DATA_MGMT 0x20
|
||||
#define PCI_CLASS_SUB_CODE_DATA_OTHER 0x80
|
||||
|
||||
#define PCI_CACHE_LINE_SIZE 0x0c /* 8 bits */
|
||||
#define PCI_LATENCY_TIMER 0x0d /* 8 bits */
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user