uboot/board/samsung/common/multi_i2c.c
<<
>>
Prefs
   1/*
   2 *  Copyright (C) 2012 Samsung Electronics
   3 *  Lukasz Majewski <l.majewski@samsung.com>
   4 *
   5 * See file CREDITS for list of people who contributed to this
   6 * project.
   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 * You should have received a copy of the GNU General Public License
  19 * along with this program; if not, write to the Free Software
  20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  21 * MA 02111-1307 USA
  22 */
  23
  24#include <common.h>
  25#include <i2c.h>
  26
  27/* Handle multiple I2C buses instances */
  28int get_multi_scl_pin(void)
  29{
  30        unsigned int bus = I2C_GET_BUS();
  31
  32        switch (bus) {
  33        case I2C_0: /* I2C_0 definition - compatibility layer */
  34        case I2C_5:
  35                return CONFIG_SOFT_I2C_I2C5_SCL;
  36        case I2C_9:
  37                return CONFIG_SOFT_I2C_I2C9_SCL;
  38        default:
  39                printf("I2C_%d not supported!\n", bus);
  40        };
  41
  42        return 0;
  43}
  44
  45int get_multi_sda_pin(void)
  46{
  47        unsigned int bus = I2C_GET_BUS();
  48
  49        switch (bus) {
  50        case I2C_0: /* I2C_0 definition - compatibility layer */
  51        case I2C_5:
  52                return CONFIG_SOFT_I2C_I2C5_SDA;
  53        case I2C_9:
  54                return CONFIG_SOFT_I2C_I2C9_SDA;
  55        default:
  56                printf("I2C_%d not supported!\n", bus);
  57        };
  58
  59        return 0;
  60}
  61
  62int multi_i2c_init(void)
  63{
  64        return 0;
  65}
  66