changeset 403:b5d2ae7131b5

* cdl/ks32c5000_eth.cdl: Ensure exactly 1 PHY enabled. 2002-11-05 Chris Garry <cgarry@sweeneydesign.co.uk> * src/lxt972.c: New file. Added LXT972 PHY support. * cdl/ks32c5000_eth.cdl: CDL to allow configuration of the above.
author jlarmour
date Tue, 05 Nov 2002 02:49:50 +0000
parents 872873f742b0
children f61985d24547
files packages/devs/eth/arm/ks32c5000/current/ChangeLog packages/devs/eth/arm/ks32c5000/current/cdl/ks32c5000_eth.cdl packages/devs/eth/arm/ks32c5000/current/src/lxt970.c
diffstat 3 files changed, 64 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/packages/devs/eth/arm/ks32c5000/current/ChangeLog
+++ b/packages/devs/eth/arm/ks32c5000/current/ChangeLog
@@ -1,5 +1,12 @@
+2002-11-05  Jonathan Larmour  <jifl@eCosCentric.com>
+
+	* cdl/ks32c5000_eth.cdl: Ensure exactly 1 PHY enabled.
+
 2002-11-05  Chris Garry  <cgarry@sweeneydesign.co.uk>
 
+	* src/lxt972.c: New file. Added LXT972 PHY support.
+	* cdl/ks32c5000_eth.cdl: CDL to allow configuration of the above.
+
 	* src/ks5000_ether.c: (CYG_BYTEORDER == CYG_MSBFIRST) used to swap
 	endian in BDMARxConfigVar declaration and txWritePointer transmit
 	descriptor reserved fields setup.
--- a/packages/devs/eth/arm/ks32c5000/current/cdl/ks32c5000_eth.cdl
+++ b/packages/devs/eth/arm/ks32c5000/current/cdl/ks32c5000_eth.cdl
@@ -2,7 +2,7 @@
 #
 #      ks32c5000_eth.cdl
 #
-#      
+#      Ethernet drivers for Samsung KS32C5000/S3C4510
 #
 #==========================================================================
 #####ECOSGPLCOPYRIGHTBEGIN####
@@ -54,26 +54,33 @@
 
 cdl_package CYGPKG_DEVS_ETH_ARM_KS32C5000 {
     display       "Samsung KS32C5000/S3C4510 ethernet driver"
-	parent        CYGPKG_IO_ETH_DRIVERS
-	active_if     CYGPKG_IO_ETH_DRIVERS
+    parent        CYGPKG_IO_ETH_DRIVERS
+    active_if     CYGPKG_IO_ETH_DRIVERS
     implements    CYGHWR_NET_DRIVERS
     implements    CYGHWR_NET_DRIVER_ETH0
     requires      (CYGPKG_CRC || (!(CYG_HAL_CPUTYPE == \"KS32C5000A\" )))
+    requires      (CYGINT_DEVS_ETH_ARM_KS32C5000_PHY == 1)
 
     include_dir   net
     description   "Ethernet driver for Samsung KS32C5000"
     compile       -library=libextras.a ks5000_ether.c
+    
 
 
     cdl_component CYGPKG_DEVS_ETH_ARM_KS32C5000_OPTIONS {
         display "Samsung ethernet driver build options"
         flavor  none
-	no_define
+        no_define
+
+        cdl_interface CYGINT_DEVS_ETH_ARM_KS32C5000_PHY {
+            display     "PHY support"
+        }
         
         cdl_option CYGPKG_DEVS_ETH_ARM_KS32C5000_PHY_ICS1890 {
             display     "ICS1890 PHY support"
             flavor bool
             default_value 0
+            implements CYGINT_DEVS_ETH_ARM_KS32C5000_PHY
             compile -library=libextras.a ics1890.c
         }
 
@@ -81,13 +88,53 @@ cdl_package CYGPKG_DEVS_ETH_ARM_KS32C500
             display     "LXT970 PHY support"
             flavor bool
             default_value 1
+            implements CYGINT_DEVS_ETH_ARM_KS32C5000_PHY
             compile -library=libextras.a lxt970.c
         }
 
+        cdl_component CYGPKG_DEVS_ETH_ARM_KS32C5000_PHY_LXT972 {
+            display     "LXT972 PHY support"
+            flavor bool
+            default_value 0
+            implements CYGINT_DEVS_ETH_ARM_KS32C5000_PHY
+            compile -library=libextras.a lxt972.c
+            no_define
+            
+            cdl_component CYGPKG_DEVS_ETH_ARM_KS32C5000_PHY_LXT972_LED1 {
+                display "LED 1 mode"
+                flavor  data
+                legal_values {"LINK_SPEED" "TX_ACTIVITY" "RX_ACTIVITY" "COLLISION_STATUS" "LINK_STATUS" "DUPLEX_STATUS"
+                              "LINK_ACTIVITY" "LINK_STATUS_RX_STATUS_COMBINED" "LINK_STATUS_LINK_ACTIVITY_COMBINED"
+                              "DUPLEX_STATUS_COLLISION_STATUS_COMBINED" "TEST_ON" "TEST_OFF" "TEST_BLINK_FAST"
+                              "TEST_BLINK_SLOW"}
+                default_value {"LINK_STATUS"}
+            }
+                
+            cdl_component CYGPKG_DEVS_ETH_ARM_KS32C5000_PHY_LXT972_LED2 {
+                display "LED 2 mode"
+                flavor  data
+                legal_values {"LINK_SPEED" "TX_ACTIVITY" "RX_ACTIVITY" "COLLISION_STATUS" "LINK_STATUS" "DUPLEX_STATUS"
+                              "LINK_ACTIVITY" "LINK_STATUS_RX_STATUS_COMBINED" "LINK_STATUS_LINK_ACTIVITY_COMBINED"
+                              "DUPLEX_STATUS_COLLISION_STATUS_COMBINED" "TEST_ON" "TEST_OFF" "TEST_BLINK_FAST"
+                              "TEST_BLINK_SLOW"}
+                default_value {"LINK_SPEED"}
+            }
+
+            cdl_component CYGPKG_DEVS_ETH_ARM_KS32C5000_PHY_LXT972_LED3 {
+                display "LED 3 mode"
+                flavor  data
+                legal_values {"LINK_SPEED" "TX_ACTIVITY" "RX_ACTIVITY" "COLLISION_STATUS" "LINK_STATUS" "DUPLEX_STATUS"
+                              "LINK_ACTIVITY" "LINK_STATUS_RX_STATUS_COMBINED" "LINK_STATUS_LINK_ACTIVITY_COMBINED"
+                              "DUPLEX_STATUS_COLLISION_STATUS_COMBINED" "TEST_ON" "TEST_OFF" "TEST_BLINK_FAST"
+                              "TEST_BLINK_SLOW"}
+                default_value {"LINK_ACTIVITY"}
+            }
+        }
+
         cdl_option CYGPKG_DEVS_ETH_ARM_KS32C5000_MACADDR {
             display "Ethernet address for eth0"
             flavor  data
-            default_value { "0x00,0x10,0x20,0x30,0x40,0x50" }
+            default_value {"0x08, 0x88, 0x12, 0x34, 0x56, 0x78"}
         }
 
         cdl_option  CYGPKG_DEVS_ETH_ARM_KS32C5000_CFLAGS_ADD {
@@ -102,3 +149,5 @@ cdl_package CYGPKG_DEVS_ETH_ARM_KS32C500
         }
     }
 }
+
+# EOF ks32c5000_eth.cdl
--- a/packages/devs/eth/arm/ks32c5000/current/src/lxt970.c
+++ b/packages/devs/eth/arm/ks32c5000/current/src/lxt970.c
@@ -2,7 +2,7 @@
 //
 //      lxt970.c
 //
-//      
+//      Driver for LXT970 PHY
 //
 //==========================================================================
 //####ECOSGPLCOPYRIGHTBEGIN####
@@ -153,3 +153,5 @@ void PhyInterruptAck(void)
   MiiStationRead(1,LX970_ADDR);
   MiiStationRead(18,LX970_ADDR);
 }
+
+// EOF lxt970.c