OSDN Git Service

BF548 全UARTポートの初期化に対応 develop
authorMaduki Kanazawa <maduki@users.sourceforge.jp>
Sun, 17 Feb 2013 05:03:01 +0000 (14:03 +0900)
committerMaduki Kanazawa <maduki@users.sourceforge.jp>
Sun, 17 Feb 2013 05:03:01 +0000 (14:03 +0900)
jsp/config/blackfin/_common_bf548/chip_config.c
jsp/config/blackfin/_common_bf548/chip_defs.h

index af28c7b..33ad587 100644 (file)
@@ -10,7 +10,7 @@
  *
  *  Copyright (C) 2004,2006,2006 by Takemasa Nakamura
  *  Copyright (C) 2004 by Ujinosuke
- *  Copyright (C) 2010-2013 by Kaneko System Co., Ltd.
+ *  Copyright (C) 2010,2011 by Kaneko System Co., Ltd.
  *
  *  上記著作権者は,以下の (1)~(4) の条件か,Free Software Foundation
  *  によって公表されている GNU General Public License の Version 2 に記
@@ -91,14 +91,12 @@ sys_initialize()
      *  必要に応じて宣言する。
      */
 #ifndef FORCE_PLL_INITIALIZE
-    /* PLLが初期値のままであり、かつ、DDR-SDRAMが利用中でなければPLLを初期化する */
-    if ( ( *pPLL_CTL == 0x1000 ) && ( !(*pEBIU_RSTCTL & DDRSRESET ) ) )
+        // PLLが初期値のままであり、かつ、DDR-SDRAMが利用中でなければPLLを初期化する
+     if ( ( *pPLL_CTL == 0x1000 ) && ( !(*pEBIU_RSTCTL & DDRSRESET ) ) )
 #endif
-    {
+     {
 
-        *pSIC_IWR0 = IWR_ENABLE(0);             /* PLLのみIWRを許す */
-        *pSIC_IWR1 = 0u;
-        *pSIC_IWR2 = 0u;
+        *pSIC_IWR0 = IWR_ENABLE(0);             // PLLのみIWRを許す
 #if CSELVAL == 1
         *pPLL_DIV = CSEL_DIV1 | SET_SSEL(SSELVAL);
 #elif CSELVAL == 2
@@ -110,14 +108,12 @@ sys_initialize()
 #else
 #error Wrong CSELVAL. Must be one of 1,2,4,8.
 #endif
-        /* PLLの分周器に値を設定する */
+                // PLLの分周器に値を設定する
         *pPLL_CTL = MSELVAL << 9;
 
-        /* PLLを起動する。 */
+                // PLLを起動する。
         asm("cli r0; csync; idle; sti r0;": : :"R0");
         *pSIC_IWR0 = IWR_ENABLE_ALL;
-        *pSIC_IWR1 = IWR_ENABLE_ALL;
-        *pSIC_IWR2 = IWR_ENABLE_ALL;
     }
 
     /*
@@ -127,7 +123,7 @@ sys_initialize()
      *  serial関連のタスクが起動したときに上書きされる。
      */
 #define DLAB 0x80
-#if LOGTASK_PORTID == 1
+#if 0
     /* Blackfin 固有の設定。UART0イネーブル */
     *pUART0_GCTL = 1;
 
@@ -137,35 +133,32 @@ sys_initialize()
     *pUART0_DLH = UART0_DIVISOR >> 8;
     *pUART0_LCR &= ~DLAB;
 
-    /* モード設定, パリティ無し 8bit data, 1 stop bit */
+        /* モード設定, パリティ無し 8bit data, 1 stop bit */
     *pUART0_LCR = 0x03;
 
-    /* 割込み禁止 */
+        /* 割込み禁止 */
     *pUART0_IER_CLEAR = 0xFFFF;
 
     *pPORTH_MUX &= ~(0x0003C000);   // bit3:0 だけを0にする
     *pPORTH_FER |= 0x0180;      // PE7,PE8をUART0に割り振る
-
-#elif LOGTASK_PORTID == 2
+#else
     /* Blackfin 固有の設定。UART1イネーブル */
     *pUART1_GCTL = 1;
 
-    /* クロックの設定 */
+        /* クロックの設定 */
     *pUART1_LCR |= DLAB;
     *pUART1_DLL = UART1_DIVISOR & 0xFF ;
     *pUART1_DLH = UART1_DIVISOR >> 8;
     *pUART1_LCR &= ~DLAB;
 
-    /* モード設定, パリティ無し 8bit data, 1 stop bit */
+        /* モード設定, パリティ無し 8bit data, 1 stop bit */
     *pUART1_LCR = 0x03;
 
-    /* 割込み禁止 */
+        /* 割込み禁止 */
     *pUART1_IER_CLEAR = 0xFFFF;
 
     *pPORTH_MUX &= ~(0x000F);   // bit3:0 だけを0にする
     *pPORTH_FER |= 0x0003;      // PH0,PH1をUART1に割り振る
-#else
-#   error LOGTASK_PORTID is invalid value
 #endif
 }
 
@@ -447,20 +440,10 @@ sys_putc(char c)
     if ( c== 0x0A )         /* もし LF ならば */
         sys_putc( 0x0D );   /* CRを一文字送信 */
 
-#if LOGTASK_PORTID == 1
-    while( !( *pUART0_LSR & (1<<5)) )
-        continue;       /* UART0 LSRのTHREが1になるまで待つ。1ならば送信レジスタ空き。*/
-
-    *pUART0_THR = c;    /* 一文字送信 */
-
-#elif LOGTASK_PORTID == 2
     while( !( *pUART1_LSR & (1<<5)) )
-        continue;       /* UART1 LSRのTHREが1になるまで待つ。1ならば送信レジスタ空き。*/
+        ;       /* UART0 LSRのTHREが1になるまで待つ。1ならば送信レジスタ空き。*/
 
     *pUART1_THR = c;    /* 一文字送信 */
-#else
-#   error LOGTASK_PORTID is invalid value
-#endif
 }
 
 
index 9f2aaab..adff55a 100644 (file)
@@ -10,7 +10,7 @@
  *
  *  Copyright (C) 2004,2006,2009 by Takemasa Nakamura
  *  Copyright (C) 2004 by Ujinosuke
- *  Copyright (C) 2010-2013 by Kaneko System Co., Ltd.
+ *  Copyright (C) 2010-2012 by Kaneko System Co., Ltd.
  *
  *  上記著作権者は,以下の (1)縲鰀(4) の条件か,Free Software Foundation 
  *  によって公表されている GNU General Public License の Version 2 に記
@@ -44,7 +44,7 @@
 
 
 /*
- *  ターゲットシステムに依存する定義(ADSP-BF548用)
+ *  ターゲットシステムに依存する定義(ADSP-BF534,6,7用)
  *
  *  このインクルードファイルは,kernel.h と sil.h でインクルードされる.
  *  他のファイルから直接インクルードすることはない.このファイルをイン
@@ -85,7 +85,7 @@ kernel_abort()
 }
 
 #define COPYRIGHT_CHIP \
-"Copyright (C) 2010-2013 by Kaneko System Co., Ltd.\n"
+"Copyright (C) 2010-2012 by Kaneko System Co., Ltd.\n"
 
 #endif /* _MACRO_ONLY */
 #endif /* _SYS_DEFS_H_ */