blob: eb5953975157bf7a10573c1d7e6589d37c52b34f [file] [log] [blame]
/*
* Copyright (C) 2018 Synaptics Incorporated. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED "AS-IS," AND
* SYNAPTICS EXPRESSLY DISCLAIMS ALL EXPRESS AND IMPLIED WARRANTIES,
* INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE, AND ANY WARRANTIES OF NON-INFRINGEMENT OF ANY
* INTELLECTUAL PROPERTY RIGHTS. IN NO EVENT SHALL SYNAPTICS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE, OR
* CONSEQUENTIAL DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE
* OF THE INFORMATION CONTAINED IN THIS DOCUMENT, HOWEVER CAUSED AND
* BASED ON ANY THEORY OF LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* NEGLIGENCE OR OTHER TORTIOUS ACTION, AND EVEN IF SYNAPTICS WAS
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. IF A TRIBUNAL OF
* COMPETENT JURISDICTION DOES NOT PERMIT THE DISCLAIMER OF DIRECT
* DAMAGES OR ANY OTHER DAMAGES, SYNAPTICS' TOTAL CUMULATIVE LIABILITY
* TO ANY PARTY SHALL NOT EXCEED ONE HUNDRED U.S. DOLLARS.
*/
//
// MEMMAP for NIUE USB for BUFFER used by USB stack
//
#ifdef USB_USE_SRAM
#include "mem_config.h"
#define USB_MASS_BULK_DATA_SIZE (16*1024)
#define USB_MASS_M2M_XFER_SIZE (8*1024)
#define USB_MASS_M2M_BLK_COUNT 8
#else
#define BUFFER_USB2_BASE 0x1A000000
#define USB_MASS_BULK_DATA_SIZE (2*1024*1024)
#define USB_MASS_M2M_XFER_SIZE (1024*1024)
#if PLATFORM==VELOCE
#define USB_MASS_M2M_BLK_COUNT 16
#else
#define USB_MASS_M2M_BLK_COUNT 256
#endif
#endif
#define USB_MEMMAP_BASE BUFFER_USB2_BASE
#define USB_MASS_BULK_DATA_BASE (USB_MEMMAP_BASE)
#define USB_MASS_M2M_READ_BASE USB_MASS_BULK_DATA_BASE
#define USB_MASS_M2M_WRITE_BASE (USB_MASS_M2M_READ_BASE + USB_MASS_M2M_XFER_SIZE)
#define USB_SCATGAT_DESC_QH (USB_MASS_M2M_WRITE_BASE + USB_MASS_M2M_XFER_SIZE) //Must be 512 bytes aligned
#define USB_SCATGAT_DESC_MAX_COUNT 64
#define USB_SCATGAT_DESC_SIZE (USB_SCATGAT_DESC_MAX_COUNT*8)
#define USB_CTRL_BUFF_BASE (USB_SCATGAT_DESC_QH + USB_SCATGAT_DESC_SIZE)
#define USB_CTRL_BUFF_SIZE 64
#define USB_MASS_BULK_CDB_BASE (USB_CTRL_BUFF_BASE + USB_CTRL_BUFF_SIZE)
#define USB_MASS_BULK_CDB_SIZE 64
#define USB_MASS_BULK_CSW_BASE (USB_MASS_BULK_CDB_BASE + USB_MASS_BULK_CDB_SIZE)
#define USB_MASS_BULK_CSW_SIZE 16
#define USB_MASS_SENSE_DATA_BASE (USB_MASS_BULK_CSW_BASE + USB_MASS_BULK_CSW_SIZE)
#define USB_MASS_SENSE_DATA_SIZE 16
#define USB_SETUP_PACKET_BUFF (USB_MASS_SENSE_DATA_BASE+USB_MASS_SENSE_DATA_SIZE)
#define USB_SETUP_PACKET_SIZE 8