uboot/board/ti/am335x/board.h
<<
>>
Prefs
   1/*
   2 * board.h
   3 *
   4 * TI AM335x boards information header
   5 *
   6 * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/
   7 *
   8 * This program is free software; you can redistribute it and/or
   9 * modify it under the terms of the GNU General Public License as
  10 * published by the Free Software Foundation; either version 2 of
  11 * the License, or (at your option) any later version.
  12 *
  13 * This program is distributed in the hope that it will be useful,
  14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR /PURPOSE.  See the
  16 * GNU General Public License for more details.
  17 */
  18
  19#ifndef _BOARD_H_
  20#define _BOARD_H_
  21
  22/*
  23 * TI AM335x parts define a system EEPROM that defines certain sub-fields.
  24 * We use these fields to in turn see what board we are on, and what
  25 * that might require us to set or not set.
  26 */
  27#define HDR_NO_OF_MAC_ADDR      3
  28#define HDR_ETH_ALEN            6
  29#define HDR_NAME_LEN            8
  30
  31struct am335x_baseboard_id {
  32        unsigned int  magic;
  33        char name[HDR_NAME_LEN];
  34        char version[4];
  35        char serial[12];
  36        char config[32];
  37        char mac_addr[HDR_NO_OF_MAC_ADDR][HDR_ETH_ALEN];
  38};
  39
  40/*
  41 * We have three pin mux functions that must exist.  We must be able to enable
  42 * uart0, for initial output and i2c0 to read the main EEPROM.  We then have a
  43 * main pinmux function that can be overridden to enable all other pinmux that
  44 * is required on the board.
  45 */
  46void enable_uart0_pin_mux(void);
  47void enable_uart1_pin_mux(void);
  48void enable_uart2_pin_mux(void);
  49void enable_uart3_pin_mux(void);
  50void enable_uart4_pin_mux(void);
  51void enable_uart5_pin_mux(void);
  52void enable_i2c0_pin_mux(void);
  53void enable_board_pin_mux(struct am335x_baseboard_id *header);
  54#endif
  55