Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Jan 2010 00:28:55 +0100
From:      Florian Kruegl <smeagle@bsdler.de>
To:        Neelkanth Natu <neelnatu@yahoo.com>
Cc:        freebsd-mips@freebsd.org
Subject:   Re: AR71XX RTC
Message-ID:  <1264462135.2647.104.camel@brain.lan.terror.local>
In-Reply-To: <434364.57659.qm@web34405.mail.mud.yahoo.com>
References:  <434364.57659.qm@web34405.mail.mud.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi

On Mon, 2010-01-25 at 01:30 -0800, Neelkanth Natu wrote:
> Hi Flo,
> 
> Can you try the following patch and see if it helps with the 
> hang-followed-by-trap problem?
> 
> I am seeing a similar problem on the Sibyte and this patch gets me
> past it.
> 
> best
> Neel
> 
> Index: swtch.S
> ===================================================================
> --- swtch.S	(revision 202961)
> +++ swtch.S	(working copy)
> @@ -323,7 +323,7 @@
>  	 * to be saved with the other registers do so here.
>  	 */
>  
> -	sw	a3, TD_LOCK(a0)			# Switchout td_lock 
> +	sw	a2, TD_LOCK(a3)			# Switchout td_lock 
>  
>  mips_sw1:
>  #if defined(SMP) && defined(SCHED_ULE)
> 
> 

sorry for the delay, updated to head 202988, change was already
commited, trap is gone :-)

rtc is detected and complains about:

===================================================================
Invalid time in real time clock.
Check and reset the date immediately!
===================================================================

Regards


Flo

> --- On Sun, 1/24/10, Florian Kruegl <smeagle@bsdler.de> wrote:
> 
> > From: Florian Kruegl <smeagle@bsdler.de>
> > Subject: Re: AR71XX RTC
> > To: "Oleksandr Tymoshenko" <gonzo@bluezbox.com>
> > Cc: freebsd-mips@freebsd.org
> > Date: Sunday, January 24, 2010, 8:52 AM
> > Hi,
> > 
> > On Sun, 2010-01-24 at 02:41 +0100, Florian Kruegl wrote:
> > > On Sat, 2010-01-23 at 16:53 -0800, Oleksandr
> > Tymoshenko wrote:
> > > > On 2010-01-23, at 4:44 PM, Florian Kruegl wrote:
> > > > 
> > > > > Hi,
> > > > > 
> > > > > On Sat, 2010-01-23 at 16:21 -0800, Oleksandr
> > Tymoshenko wrote:
> > > > >> On 2010-01-23, at 4:00 PM, Florian
> > Kruegl wrote:
> > > > >> 
> > > > >>> Hi,
> > > > >>> 
> > > > >>> anyone working on pfc2123 driver for
> > RouterStation Pro? 
> > > > >>> Seems quite well documented, one
> > issue might be CS hack, but the rest
> > > > >>> should be straight.
> > > > >>    Driver was commited
> > yesterday:
> > > > >> http://svn.freebsd.org/viewvc/base?view=revision&revision=202839
> > > > >> 
> > > > >> And yes, CS hack is the problem. I'm
> > trying to figure out how to fit it into FreeBSD
> > > > >> SPI framework. 
> > > > > 
> > > > > sounds good, will do an update as soon as i
> > removed me work from code.
> > > > > My CS "solution" was more than crude, but
> > the frames simply didn't
> > > > > fit... so I am looking forward for a
> > different one :) 
> > > > 
> > > >     Yeah, my CS solution was
> > dirty hack too. If for "didn't fit" you mean missing last 
> > > > byte of frame then this problem was solved to.
> > Bug was in AR71XX SPI code: falling 
> > > > edge was not provided for last byte in transfer
> > in time and RTC chip acts of falling edge. 
> > > > Fix was committed before driver.
> > > > 
> > > > 
> > > > 
> > > 
> > > code looks similar, can't tell much about result as
> > kernel hangs for a
> > > while before getting this:
> > >
> > <<<<<<<<<<<<<<<<<<<<<<<<<<<
> > schnipp
> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> > > Trap cause = 2 (TLB miss (load or instr. fetch) -
> > kernel mode)
> > > [thread pid 4 tid 100009 ]
> > > Stopped at     
> > _thread_lock_flags+0x150:   
> >    lw      v0,60(a3)
> > > db> bt
> > > Tracing pid 4 tid 100009 td 0xc0c47270
> > > db_trace_thread+30 (?,?,?,?) ra 800a6c10 sz 24
> > > 800a6af4+11c (0,?,ffffffff,?) ra 800a6604 sz 32
> > > 800a6270+394 (?,?,?,?) ra 800a6794 sz 168
> > > db_command_loop+78 (?,?,?,?) ra 800a8e68 sz 24
> > > 800a8d60+108 (?,?,?,?) ra 80215ff8 sz 424
> > > kdb_trap+f8 (?,?,?,?) ra 80474350 sz 32
> > > trap+134c (?,?,?,?) ra 8046b7fc sz 176
> > > MipsKernGenException+100 (b,173,804d5de8,deadc0d8) ra
> > 801c593c sz 200
> > > _thread_lock_flags+130 (?,?,?,?) ra 80221f18 sz 56
> > > sleepq_broadcast+ac (?,?,?,?) ra 801e5f20 sz 40
> > > wakeup+2c (?,?,?,?) ra 8016de18 sz 32
> > > g_io_deliver+198 (?,?,?,?) ra 8016bbd4 sz 80
> > > 8016b590+644 (?,?,?,?) ra 8016e184 sz 104
> > > g_io_schedule_down+2ec (?,?,?,?) ra 8016eb94 sz 64
> > > 8016eb18+7c (?,?,?,?) ra 801a331c sz 24
> > > fork_exit+a0 (?,?,?,?) ra 80478f10 sz 48
> > > fork_trampoline+10 (?,?,?,?) ra 0 sz 0
> > > pid 4
> > >
> > <<<<<<<<<<<<<<<<<<<<<<<<<<<
> > schnapp
> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> > > 
> > > will use AR71XX as config file tomorrow, mine has many
> > additional devs
> > > configured for booting from usb devices.
> > > 
> > [...]
> > 
> > seems to make no difference. removed all mini pci
> > devs  and most code
> > changes. kernel hangs during bootup for a while. then gets
> > a trap. 
> > 
> > Source Info:
> > 
> > -------------------------- schnipp
> > --------------------------
> > brain:head> svn info
> > Path: .
> > URL: svn://svn.freebsd.org/base/head
> > Repository Root: svn://svn.freebsd.org/base
> > Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
> > Revision: 202904
> > Node Kind: directory
> > Schedule: normal
> > Last Changed Author: marcel
> > Last Changed Rev: 202904
> > Last Changed Date: 2010-01-24 00:16:50 +0100 (Sun, 24 Jan
> > 2010)
> > -------------------------- schnapp
> > --------------------------
> > 
> > -------------------------- schnipp
> > --------------------------
> > brain:head> svn stat
> > ?       GRTAGS
> > ?       GSYMS
> > ?       GTAGS
> > ?       GPATH
> > M       sys/kern/vfs_mount.c
> > M       sys/mips/conf/AR71XX
> > ?       sys/dev/pfc2123
> > -------------------------- schnapp
> > --------------------------
> > 
> > - vfs_mount should be far away. 
> > - sys/dev/pfc2123 is no longer used.
> > - sys/mips/conf/AR71XX altered to include pfc2123_rtc
> > 
> > 
> > -------------------------- schnipp
> > --------------------------
> > FreeBSD 9.0-CURRENT #1: Sun Jan 24 15:58:37 UTC 2010
> > 
> > root@pinky.lan.terror.local:/home/smeagle/obj/mips/mips/home/smeagle/src/freebsd/head/sys/AR71XX
> > mips
> > real memory  = 134217728 (131072K bytes)
> > avail memory = 125689856 (119MB)
> > nexus0: <MIPS32 root nexus>
> > clock0: <Generic MIPS32 ticker> on nexus0
> > clock0: [FILTER]
> > apb0 at irq 4 on nexus0
> > apb0: [FILTER]
> > uart0: <16550 or compatible> on apb0
> > uart0: [FILTER]
> > uart0: console (115200,n,8,1)
> > pcib0 at irq 0 on nexus0
> > pcib0: [FILTER]
> > pci0: <PCI bus> on pcib0
> > pci0: <old, non-VGA display device> at device 0.0 (no
> > driver attached)
> > pci0: <processor> at device 17.0 (no driver
> > attached)
> > arge0: <Atheros AR71xx built-in ethernet interface>
> > at mem
> > 0x19000000-0x19000fff irq 2 on nexus0
> > miibus0: <MII bus> on arge0
> > ukphy0: <Generic IEEE 802.3u media interface> PHY 4
> > on miibus0
> > ukphy0:  10baseT, 10baseT-FDX, 100baseTX,
> > 100baseTX-FDX, 1000baseT-FDX,
> > auto
> > arge0: Ethernet address: 00:00:00:00:46:61
> > arge0: [FILTER+ITHREAD]
> > arge1: <Atheros AR71xx built-in ethernet interface>
> > at mem
> > 0x1a000000-0x1a000fff irq 3 on nexus0
> > arge1: Ethernet address: 00:00:00:00:46:62
> > arge1: [FILTER+ITHREAD]
> > spi0: <AR71XX SPI> at mem 0x1f000000-0x1f00000f on
> > nexus0
> > spibus0: <spibus bus> on spi0
> > mx25l0: <M25Pxx Flash Family> at cs 0 on spibus0
> > mx25l0: mx25ll128, sector 65536 bytes, 256 sectors
> > ar71xx_wdog0: <Atheros AR71XX watchdog timer> on
> > nexus0
> > Timecounter "MIPS32" frequency 360000000 Hz quality 800
> > Timecounters tick every 1.000 msec
> > bootpc_init: wired to interface 'arge0'
> > Sending DHCP Discover packet from interface arge0
> > (00:00:00:00:46:61)
> > arge0: link state changed to DOWN
> > Trap cause = 2 (TLB miss (load or instr. fetch) - kernel
> > mode)
> > [thread pid 4 tid 100008 ]
> > Stopped at     
> > _thread_lock_flags+0x150:   
> >    lw      v0,60(a3)
> > db> bt
> > Tracing pid 4 tid 100008 td 0xc0c414e0
> > db_trace_thread+30 (?,?,?,?) ra 80055900 sz 24
> > 800557e4+11c (0,?,ffffffff,?) ra 800552f4 sz 32
> > 80054f60+394 (?,?,?,?) ra 80055484 sz 168
> > db_command_loop+78 (?,?,?,?) ra 80057b58 sz 24
> > 80057a50+108 (?,?,?,?) ra 8017b7d8 sz 424
> > kdb_trap+f8 (?,?,?,?) ra 8035ab40 sz 32
> > trap+134c (?,?,?,?) ra 80351fec sz 176
> > MipsKernGenException+100 (b,173,8039ce74,deadc0d8) ra
> > 8012c92c sz 200
> > _thread_lock_flags+130 (?,?,?,?) ra 801876f8 sz 56
> > sleepq_broadcast+ac (?,?,?,?) ra 8014b700 sz 40
> > wakeup+2c (?,?,?,?) ra 800d6ba8 sz 32
> > g_io_deliver+198 (?,?,?,?) ra 800d4964 sz 80
> > 800d4320+644 (?,?,?,?) ra 800d6f14 sz 104
> > g_io_schedule_down+2ec (?,?,?,?) ra 800d7924 sz 64
> > 800d78a8+7c (?,?,?,?) ra 8010c0ac sz 24
> > fork_exit+a0 (?,?,?,?) ra 8035f700 sz 48
> > fork_trampoline+10 (?,?,?,?) ra 0 sz 0
> > pid 4
> > -------------------------- schnapp
> > --------------------------
> > 
> > 
> > 
> > 
> > Flo
> > 
> > _______________________________________________
> > freebsd-mips@freebsd.org
> > mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-mips
> > To unsubscribe, send any mail to "freebsd-mips-unsubscribe@freebsd.org"
> > 
> 
> 
>       
> 





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1264462135.2647.104.camel>