Date: Tue, 11 Feb 2014 21:33:29 -0700 From: Ian Lepore <ian@FreeBSD.org> To: Bernd Walter <ticso@cicely7.cicely.de> Cc: freebsd-arm <freebsd-arm@FreeBSD.org> Subject: Re: wandboard / imx6 / exynos4 / cortex-a9 "wrong-endian bug" fixed Message-ID: <1392179609.1145.45.camel@revolution.hippie.lan> In-Reply-To: <1392177248.1145.43.camel@revolution.hippie.lan> References: <1391371204.13026.43.camel@revolution.hippie.lan> <20140202230450.GA42331@cicely7.cicely.de> <20140210041313.GB89777@cicely7.cicely.de> <1392042832.1145.8.camel@revolution.hippie.lan> <20140211010733.GC94205@cicely7.cicely.de> <20140211134438.GD94205@cicely7.cicely.de> <1392177248.1145.43.camel@revolution.hippie.lan>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2014-02-11 at 20:54 -0700, Ian Lepore wrote: > On Tue, 2014-02-11 at 14:44 +0100, Bernd Walter wrote: > > On Tue, Feb 11, 2014 at 02:07:33AM +0100, Bernd Walter wrote: > > > On Mon, Feb 10, 2014 at 07:33:52AM -0700, Ian Lepore wrote: > > > > On Mon, 2014-02-10 at 05:13 +0100, Bernd Walter wrote: > > > > > On Mon, Feb 03, 2014 at 12:04:50AM +0100, Bernd Walter wrote: > > > > [...] > > > > > Second boot worked better, but booting hanged after devd. > > > > > ... > > > > > > > > I have also seen this hang in devd during rc-script processing, a few > > > > times recently. ^T always shows it to be in a nanslp wait. > > > > > > Never seen this again so far. > > > > > > > I've never used crochet or tried to use growfs, that may not be an > > > > arm-related problem from the looks of it. > > > > > > Someone said he hadn't seen it on a recently updated Beaglebone, but > > > not sure how recent the source code had been. > > > I can't do Beaglebone tests myself, since I'm waiting for new boards. > > > > > > > I've never had getty/login hang in nanslp like that. When I'm running > > > > with nfs root it tends to hang in rpccon state, and that's frequency and > > > > annoying enough that I'm going to have to debug it soon (for all I know > > > > that problem may be my old 8.4 nfs server). > > > > > > Interesting. > > > > > > I can't seen to get the second microSD-slot running. > > > The controllers get attached, but mmc only to the onboard slot. > > > The WiFi is SDIO, which I didn't compile into the kernel and I noticed > > > there is a GPIO used to enable the chip. > > > > Strange enough the 4th controller gets an mmc1 device attached: > > sdhci_imx3: <Freescale uSDHC controller> mem 0x219c000-0x219ffff irq 57 on simplebus2 > > sdhci_imx3-slot0: 200MHz HS 4bits 3.3V 3.0V PIO > > sdhci_imx3-slot0: ============== REGISTER DUMP ============== > > sdhci_imx3-slot0: Sys addr: 0x00000000 | Version: 0x00000002 > > sdhci_imx3-slot0: Blk size: 0x00000000 | Blk cnt: 0x00000001 > > sdhci_imx3-slot0: Argument: 0x00000000 | Trn mode: 0x00000000 > > sdhci_imx3-slot0: Present: 0xf78d8088 | Host ctl: 0x00000000 > > sdhci_imx3-slot0: Power: 0x0000000d | Blk gap: 0x00000080 > > sdhci_imx3-slot0: Wake-up: 0x00000008 | Clock: 0x00000002 > > sdhci_imx3-slot0: Timeout: 0x00000080 | Int stat: 0x00000000 > > sdhci_imx3-slot0: Int enab: 0x017f00fb | Sig enab: 0x017f00fb > > sdhci_imx3-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000 > > sdhci_imx3-slot0: Caps: 0x0377c800 | Max curr: 0x80000000 > > sdhci_imx3-slot0: =========================================== > > mmc1: <MMC/SD bus> on sdhci_imx3 > > > > It hangs on probing, but it is my understanding that this controller > > isn't wired at all on wandboard. > > But why isn't there an attachment with the other two controllers. > > > > I can't get the uSD slot on the carrier board to work either, but my > symptoms are different. > > Aha! I just noticed that Freescale moved some bits around in the > Present State register and defined some that are undefined in the spec > and so on. I completely overlooked that when I was writing the > driver. > > I need to write some proper translation routines, which ain't happening > tonight. :) But, as proof of concept, the attached little crude hack > makes it successfully probe both of my sd slots now. > > -- Ian > > differences between files attachment (imx_sdhci_detect_hack.diff) > Index: sys/arm/freescale/imx/imx_sdhci.c > =================================================================== > --- sys/arm/freescale/imx/imx_sdhci.c (revision 261700) > +++ sys/arm/freescale/imx/imx_sdhci.c (working copy) > @@ -298,6 +298,9 @@ imx_sdhci_read_4(device_t dev, struct sdhci_slot * > val32 |= sc->r1bfix_intmask; > } > > + if (off == SDHCI_PRESENT_STATE && device_get_unit(dev) != 1) > + val32 |= SDHCI_CARD_PRESENT; > + > return val32; > } > Just realized... that check for unit != 1 is only needed if you have the wifi device enabled in the dts. If only the sd slots are enabled, leave that out. -- Ian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1392179609.1145.45.camel>