/* * (C) Copyright 2006 * Mindspeed Technologies, 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 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 _IDMA_H #define _IDMA_H #define HDMA_SOFT_RESET (IDMA_BASEADDR + 0x0000) #define IDMA_EMAC0_BASEADDR (IDMA_BASEADDR + 0x0100) #define MMPU_START (IDMA_BASEADDR + 0x0200) #define MMPU_HEAD (IDMA_BASEADDR + 0x0204) #define MMPU_BURST (IDMA_BASEADDR + 0x0208) #define MMPU_SOFT_RESET (IDMA_BASEADDR + 0x0220) #define PUMM_START (IDMA_BASEADDR + 0x0280) #define PUMM_HEAD (IDMA_BASEADDR + 0x0284) #define PUMM_BURST (IDMA_BASEADDR + 0x0288) #define PUMM_SOFT_RESET (IDMA_BASEADDR + 0x02A0) #define MMFIFO_START (IDMA_BASEADDR + 0x0300) #define MMFIFO_HEAD (IDMA_BASEADDR + 0x0304) #define MMFIFO_BURST (IDMA_BASEADDR + 0x0308) #define MMFIFO_SOFT_RESET (IDMA_BASEADDR + 0x0320) #define FIFOMM_START (IDMA_BASEADDR + 0x0380) #define FIFOMM_HEAD (IDMA_BASEADDR + 0x0384) #define FIFOMM_BURST (IDMA_BASEADDR + 0x0388) #define FIFOMM_SOFT_RESET (IDMA_BASEADDR + 0x03A0) #define IDMA_EMAC1_BASEADDR (IDMA_BASEADDR + 0x0700) /* Memory to EMAC register offsets */ #define MMEM_START 0x00 #define MMEM_HEAD 0x04 #define MMEM_BURST 0x08 #define MMEM_SOFT_RESET 0x20 /* EMAC to Memory register offsets */ #define EMMM_START 0x80 #define EMMM_HEAD 0x84 #define EMMM_BURST 0x88 #define EMMM_SOFT_RESET 0xA0 #define FDESC_ALIGN_BYTES 0x10 //************ IDMA registers and masks ***************** #define IDMA_FSTATUS_FRAME_DONE_MASK 0x80000000 #define IDMA_FSTATUS_STATUS_MASK 0x03FFFFFF #define IDMA_FCONTROL_PHY_NB_MASK 0x00000070 #define IDMA_FCONTROL_PHY_OFFSET 0x00000004 #define IDMA_FCONTROL_IRQEN 0x00000004 #define IDMA_FCONTROL_FLAST 0x00000002 #define IDMA_FCONTROL_FREADY 0x00000001 #define IDMA_BCONTROL_BLAST 0x00010000 #define IDMA_BCONTROL_BLEN_MASK 0x0000FFFF #define IDMA_FSTATUS_FDONE 0x80000000 #define IDMA_FSTATUS_BIT27 0x08000000 #define IDMA_FSTATUS_FKEEP 0x04000000 #define IDMA_START 0x00000001 #define IDMA_BURST_MASK 0x000000FF #define IDMA_PRTY_MASK 0x00000700 #endif