/* $NetBSD: cfireg.h,v 1.2 2008/04/28 20:23:22 martin Exp $ */ /* * Copyright (c) 2002 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Naoto Shimazaki of YOKOGAWA Electric Corporation. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /* * Common Flash Interface */ #define CFI_TOTAL_SIZE 0x50 #define CFI_READ_CFI_QUERY 0x98 #define CFI_QUERY_OFFSET 0xaa /* AMD/Fujitu needs this */ #define CFI_MANUFACT_REG 0x00 #define CFI_DEVCODE_REG 0x01 #define CFI_BLOCK_STAT_REG 0x02 #define CFI_QUERY_ID_STR_REG 0x10 #define CFI_QUERY_ID_STR "QRY" #define CFI_QUERY_ID_STR0 'Q' #define CFI_QUERY_ID_STR1 'R' #define CFI_QUERY_ID_STR2 'Y' #define CFI_PRIM_COMM_REG0 0x13 #define CFI_PRIM_COMM_REG1 0x14 #define CFI_PRIM_EXT_TBL_REG0 0x15 #define CFI_PRIM_EXT_TBL_REG1 0x16 #define CFI_ALT_COMM_REG0 0x17 #define CFI_ALT_COMM_REG1 0x18 #define CFI_ALT_EXT_TBL_REG0 0x19 #define CFI_ALT_EXT_TBL_REG1 0x1a #define CFI_VCC_MIN_REG 0x1b #define CFI_VCC_MAX_REG 0x1c #define CFI_VPP_MIN_REG 0x1d #define CFI_VPP_MAX_REG 0x1e #define CFI_TYP_WORD_PROG_REG 0x1f #define CFI_TYP_BUF_WRITE_REG 0x20 #define CFI_TYP_BLOCK_ERASE_REG 0x21 #define CFI_TYP_CHIP_ERASE_REG 0x22 #define CFI_MAX_WORD_PROG_REG 0x23 #define CFI_MAX_BUF_WRITE_REG 0x24 #define CFI_MAX_BLOCK_ERASE_REG 0x25 #define CFI_MAX_CHIP_ERASE_REG 0x26 #define CFI_DEVICE_SIZE_REG 0x27 #define CFI_DEVICE_IF_REG0 0x28 #define CFI_DEVICE_IF_REG1 0x29 #define CFI_MAX_WBUF_SIZE_REG0 0x2a #define CFI_MAX_WBUF_SIZE_REG1 0x2b #define CFI_NUM_ERASE_BLK_REG 0x2c #define CFI_EBLK1_INFO_REG 0x2d #define CFI_EBLK_INFO_SIZE 4 #define CFI_EBLK_INFO_NSECT0 0x00 #define CFI_EBLK_INFO_NSECT1 0x01 #define CFI_EBLK_INFO_SECSIZE0 0x02 #define CFI_EBLK_INFO_SECSIZE1 0x03 #define CFI_EBLK1_INFO_REG0 0x2d #define CFI_EBLK1_INFO_REG1 0x2e #define CFI_EBLK1_INFO_REG2 0x2f #define CFI_EBLK1_INFO_REG3 0x30 #define CFI_EBLK2_INFO_REG0 0x31 #define CFI_EBLK2_INFO_REG1 0x32 #define CFI_EBLK2_INFO_REG2 0x33 #define CFI_EBLK2_INFO_REG3 0x34 #define CFI_EBLK3_INFO_REG0 0x35 #define CFI_EBLK3_INFO_REG1 0x36 #define CFI_EBLK3_INFO_REG2 0x37 #define CFI_EBLK3_INFO_REG3 0x38 #define CFI_EBLK4_INFO_REG0 0x39 #define CFI_EBLK4_INFO_REG1 0x3a #define CFI_EBLK4_INFO_REG2 0x3b #define CFI_EBLK4_INFO_REG3 0x3c #define CFI_COMMSET_INTEL0 0x01 #define CFI_COMMSET_INTEL1 0x00 #define CFI_COMMSET_AMDFJITU0 0x02 #define CFI_COMMSET_AMDFJITU1 0x00