From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24022 invoked by alias); 29 Aug 2007 06:25:55 -0000 Received: (qmail 22995 invoked by uid 22791); 29 Aug 2007 06:25:50 -0000 X-Spam-Check-By: sourceware.org Received: from pop132.ocn.ne.jp (HELO pop132.ocn.ne.jp) (60.37.31.215) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 29 Aug 2007 06:25:39 +0000 Received: from ariga (p3109-ipbf1207marunouchi.tokyo.ocn.ne.jp [124.84.132.109]) by pop132.ocn.ne.jp (OCN) with SMTP id l7T6PZmB016003 for ; Wed, 29 Aug 2007 15:25:35 +0900 (JST) Message-ID: <001b01c7ea05$68ebd310$1c0110ac@ariga> From: "ariga masahiro" To: Date: Wed, 29 Aug 2007 06:25:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-2022-jp"; reply-type=original Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook Express 6.00.2900.2869 X-IsSubscribed: yes Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Subject: [ECOS] Where set SMSC-LAN91C111 registers for availing interrupt ? X-SW-Source: 2007-08/txt/msg00157.txt.bz2 Hi everyone, Please help me next problem. My target-board uses SMSC-LAN91C111 LAN chip. I'm still struggling to connect(i.e.light LINK-LED) using net template. Andrew wrote, > The net template will use interrupt driven Ethernet drivers. Only the > redboot template uses polled io. So you don't need to change anything > like CYGPKG_IO_ETH_DRIVERS_STAND_ALONE. Very Good. > It is better to enable CYGPKG_NET_BUILD_HW_TESTS and then just do I enabled CYGPKG_NET_BUILD_HW_TESTS. According to SMSC's FAQ,in order to enable interrupt, PHY Register 19's MINT bit should be set to '0', and MAC Bank 2 Offset D Interrupt Mask Register's MDINT should be set to '1'. I traced program but appeares to me,never set these register bits. I list trace logs in both cases of RedBoot(StandAlone) and net template(interrupt). In case of RedBoot, \opt\ecos\ecos-2.0\packages\io\eth\v2_0\src\stand_alone\eth_drv.c eth_drv_ini() eth_drv_start() lan91cxx_start(), and here do PHY initialization. In case of net template, \opt\ecos\ecos-2.0\packages\io\eth\v2_0\src\net\eth_drv.c eth_drv_ini() after that nowhere set PHY Register or Interrupt Mask Register. I wonder I made mistakes in configuration, or there really is not setting Registers code. I also wonder if there is not PHY register or Interrupt Mask Register setting code,is it possible to correctly run ethernet using interrupt ? Is there any technical tricks to enable interrupt ? Please enlighten me. Also if there should be regisiter setting code, do you think I should amend it ? I mean, Could you recommend where and how I should insert them ? Masahiro Ariga -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss