diff options
| author | Josh Blum <josh@joshknows.com> | 2010-12-22 19:19:14 -0800 | 
|---|---|---|
| committer | Josh Blum <josh@joshknows.com> | 2010-12-22 19:19:14 -0800 | 
| commit | 22ed61f97815856bf74cec25ae6bca88bfbe5f44 (patch) | |
| tree | 7d87d49b46f9507ff10486097e6d79e4bee4cb81 /firmware/microblaze/lib/eeprom.c | |
| parent | 71fc99d006f2347a356c5339905593f64ff902ec (diff) | |
| download | uhd-22ed61f97815856bf74cec25ae6bca88bfbe5f44.tar.gz uhd-22ed61f97815856bf74cec25ae6bca88bfbe5f44.tar.bz2 uhd-22ed61f97815856bf74cec25ae6bca88bfbe5f44.zip | |
zpu: renamed the directory for the usrp2 fw to zpu to reflect the cpu type
Diffstat (limited to 'firmware/microblaze/lib/eeprom.c')
| -rw-r--r-- | firmware/microblaze/lib/eeprom.c | 81 | 
1 files changed, 0 insertions, 81 deletions
| diff --git a/firmware/microblaze/lib/eeprom.c b/firmware/microblaze/lib/eeprom.c deleted file mode 100644 index d4e170046..000000000 --- a/firmware/microblaze/lib/eeprom.c +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright 2007 Free Software Foundation, Inc. - * - * 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 3 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, see <http://www.gnu.org/licenses/>. - */ - -#include "i2c.h" -#include "mdelay.h" -#include "usrp2/fw_common.h" - -static const int EEPROM_PAGESIZE = 16; - -bool find_safe_booted_flag(void) { -	unsigned char flag_byte; -	eeprom_read(USRP2_I2C_ADDR_MBOARD, USRP2_EE_MBOARD_BOOTLOADER_FLAGS, &flag_byte, 1); -	return (flag_byte == 0x5E); -} - -void set_safe_booted_flag(bool flag) { -	unsigned char flag_byte = flag ? 0x5E : 0xDC; -	eeprom_write(USRP2_I2C_ADDR_MBOARD, USRP2_EE_MBOARD_BOOTLOADER_FLAGS, &flag_byte, 1); -} - -bool -eeprom_write (int i2c_addr, int eeprom_offset, const void *buf, int len) -{ -  unsigned char cmd[2]; -  const unsigned char *p = (unsigned char *) buf; -   -  // The simplest thing that could possibly work: -  //   all writes are single byte writes. -  // -  // We could speed this up using the page write feature, -  // but we write so infrequently, why bother... - -  while (len-- > 0){ -    cmd[0] = eeprom_offset++; -    cmd[1] = *p++; -    bool r = i2c_write (i2c_addr, cmd, sizeof (cmd)); -    mdelay (10);	// delay 10ms worst case write time -    if (!r) -      return false; -  } -  return true; -} - -bool -eeprom_read (int i2c_addr, int eeprom_offset, void *buf, int len) -{ -  unsigned char *p = (unsigned char *) buf; - -  // We setup a random read by first doing a "zero byte write". -  // Writes carry an address.  Reads use an implicit address. - -  unsigned char cmd[1]; -  cmd[0] = eeprom_offset; -  if (!i2c_write (i2c_addr, cmd, sizeof (cmd))) -    return false; - -  while (len > 0){ -    // int n = std::min (len, MAX_EP0_PKTSIZE); -    int n = len; -    if (!i2c_read (i2c_addr, p, n)) -      return false; -    len -= n; -    p += n; -  } -  return true; -} -  | 
