SCLLMGR.H
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:3k
源码类别:

DVD

开发平台:

Others

  1. /****************************************************************************************
  2.  *  Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
  3.  *  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
  4.  *
  5.  *  File: $Workfile: SCLLMGR.H $             
  6.  *
  7.  * Description: 
  8.  * ============
  9.  * 
  10.  * 
  11.  * Log:
  12.  * ====
  13.  * $Revision: 5 $
  14.  * Last Modified by $Author: Eyalr $ at $Modtime: 11/20/03 14:26 $ 
  15.  ****************************************************************************************
  16.  * Updates:
  17.  ****************************************************************************************
  18.  * $Log: /I76/I76_Common/I76_Reference/Playcore/ScPad/SCLLMGR.H $
  19.  * 
  20.  * 5     11/20/03 18:51 Eyalr
  21.  * 
  22.  * 4     11/18/03 11:19a Aidenl
  23.  * DVD Audio Testing Memory Mapping, change SC_BASE_ADDR
  24.  * 
  25.  * 3     03-01-09 4:46 Leslie
  26.  * Code cleanup
  27.  * 
  28.  * 7     23/05/02 14:09 Ettim
  29.  * Adding support for an absolute 32 bit address on the scratch pad.
  30.  * 
  31.  * 6     4/24/02 5:33a Dingming
  32.  * 32K/24K scratchpad support
  33.  * 
  34.  * 5     23/04/02 9:36 Nirm
  35.  * - Added dependency in "Config.h".
  36.  * 
  37.  * 4     3/03/02 15:01 Nirm
  38.  * - Code cleanup;
  39.  * - Enhanced efficiency.
  40.  * 
  41.  * 3     1/18/02 5:58a Tomasp
  42.  * Fixed warning (bug) SC_SDRAM_SZ const overflow
  43.  * 
  44.  * 2     9/01/02 16:53 Nirm
  45.  * Corrected Include-Paths.
  46.  ****************************************************************************************/
  47. #include "Config.h" // Global Configuration - do not remove!
  48. #ifndef __SCMLLGR_H_
  49. #define __SCMLLGR_H_
  50. /////////////////////////////////////////////////////////////////////////////
  51. // Constants
  52. // Absolute Scratch Pad Base Address (In the SDRAM), Addressing by WORD
  53. // Size of the SDRAM allocated for Scratch Pad (DWORD units)
  54. #ifdef NEW_2X16M_MAPPING
  55. #define SC_SDRAM_SZ 0x2000L // 32KB
  56. #else
  57. #define SC_SDRAM_SZ 0xDA00L // 218KB
  58. #endif
  59. #ifdef DVD_VR_SUPPORT
  60. #define SC_CLUSTERS_CNT 512//256 // Must be a value of 2^n
  61. #else
  62. #define SC_CLUSTERS_CNT 256 // Must be a value of 2^n
  63. #endif
  64. #define CLUSTERS_POOL_REG_SZ(iClustersCnt) ((iClustersCnt + 7) / 8)
  65. /////////////////////////////////////////////////////////////////////////////
  66. // Public Services
  67. BOOL sc_ll_Init(UINT16 i_uInitValue);
  68. UINT16 sc_ll_Read(WORD i_hAddress, UINT16 i_uDWORDsCnt, DWORD *o_pDestBuff);
  69. UINT16 sc_ll_Write(WORD i_hAddress, UINT16 i_uDWORDsCnt, const DWORD *i_pSrcBuff);
  70. UINT16 sc_ll_Read32(UINT32 i_hAddress, UINT16 i_uDWORDsCnt, DWORD *o_pDestBuff);
  71. UINT16 sc_ll_Write32(UINT32 i_hAddress, UINT16 i_uDWORDsCnt, const DWORD *i_pSrcBuff);
  72. #ifdef _DEBUG
  73. extern WORD g_wTrackAddr;
  74. #endif //_DEBUG
  75. extern CONST DWORD dwSC_BASE_ADDR;
  76. extern CONST WORD wSC_SDRAM_SZ;
  77. extern CONST WORD wSC_CLUSTERS_CNT;
  78. //extern BYTE g_aMemClustersRegistry[];
  79. extern CONST BYTE bSizeof_MemClustersRegistry;
  80. #endif //__SCMLLGR_H_