The debounce clock is not the source of the problem.
On the 2430 chip, the debounce clock is under software control. For the OMAP3 chips, its been placed under hardware control. So the 2.6.31 kernel classifies the this message as a warning...

1053         host->dbclk = clk_get(&pdev->dev, "mmchsdb_fck");
1054         /*
1055          * MMC can still work without debounce clock.
1056          */
1057         if (IS_ERR(host->dbclk))
1058 dev_warn(mmc_dev(host->mmc), "Failed to get debounce clock\n");
1059         else

In the 2.6.33 kernel the message has been made 2430 specific...

1709         if (cpu_is_omap2430()) {
1710                 host->dbclk = clk_get(&pdev->dev, "mmchsdb_fck");
1711                 /*
1712                  * MMC can still work without debounce clock.
1713                  */
1714                 if (IS_ERR(host->dbclk))
1715                         dev_warn(mmc_dev(host->mmc),
1716                                 "Failed to get debounce clock\n");
1717                 else
... snipped ...                                       " clk failed\n");
1724         }

I removed all of the patches and rebuilt without the Adeos patch. I lost host USB Host Port capability, but the BeagleBoard booted.

I then applied the Adeos patch, but disabled Xenomai. The result is the same. The board hangs waiting for /dev/mmcblk0p2.

Reading boot sector
Loading u-boot.bin from mmc


U-Boot 2009.06-rc2 (Nov 02 2009 - 23:57:20)

OMAP3530-GP ES3.0, CPU-OPP2 L3-165MHz
OMAP3 Beagle board + LPDDR/NAND
DRAM:  256 MB
NAND:  256 MiB
In:    serial
Out:   serial
Err:   serial
Board revision C
Die ID #317000030000000004013f8a1701a01b
Hit any key to stop autoboot:  0
mmc1 is available
reading uImage

1882552 bytes read
## Booting kernel from Legacy Image at 80300000 ...
   Image Name:   Angstrom/2.6.31/beagleboard
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1882488 Bytes =  1.8 MB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux.........................................................................................
.............................. done, booting the kernel.
Linux version 2.6.31-omap1 ([email protected]) (gcc version 4.3.3 (GCC) ) #3 Mon Jul 19 14:55:27 PDT 2010
CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: OMAP3 Beagle Board
Memory policy: ECC disabled, Data cache writeback
OMAP3430 ES3.0
SRAM: Mapped pa 0x40200000 to va 0xe3000000 size: 0x100000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
PID hash table entries: 1024 (order: 10, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB 128MB = 256MB total
Memory: 255872KB available (3268K code, 331K data, 132K init, 0K highmem)
NR_IRQS:402
Clocking rate (Crystal/Core/MPU): 26.0/332/500 MHz
Reprogramming SDRC clock to 332000000 Hz
GPMC revision 5.0
IRQ: Found an INTC at 0xd8200000 (revision 4.0) with 96 interrupts
Total of 96 interrupts on 1 active controller
OMAP34xx GPIO hardware version 2.5
OMAP clockevent source: GPTIMER1 at 13000000 Hz
I-pipe 1.16-01: pipeline enabled.
Console: colour dummy device 80x30
Calibrating delay loop... 498.07 BogoMIPS (lpj=2490368)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
regulator: core version 0.5
NET: Registered protocol family 16
Found NAND on CS0
Registering NAND on CS0
OMAP DMA hardware revision 4.0
bio: create slab <bio-0> at 0
i2c_omap i2c_omap.1: bus 1 rev3.12 at 2600 kHz
twl4030: PIH (irq 7) chaining IRQs 368..375
twl4030: power (irq 373) chaining IRQs 376..383
twl4030: gpio (irq 368) chaining IRQs 384..401
regulator: VMMC1: 1850 <--> 3150 mV normal standby
regulator: VDAC: 1800 mV normal standby
regulator: VUSB1V5: 1500 mV normal standby
regulator: VUSB1V8: 1800 mV normal standby
regulator: VUSB3V1: 3100 mV normal standby
regulator: VPLL2: 1800 mV normal standby
regulator: VSIM: 1800 <--> 3000 mV normal standby
i2c_omap i2c_omap.3: bus 3 rev3.12 at 100 kHz
SCSI subsystem initialized
twl4030_usb twl4030_usb: Initialized TWL4030 USB module
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
musb_hdrc: version 6.0, musb-dma, otg (peripheral+host), debug=0
musb_hdrc: USB OTG mode controller at d80ab000 using DMA, IRQ 92
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
NET: Registered protocol family 1
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
JFFS2 version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
msgmni has been set to 500
alg: No test for stdrng (krng)
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
serial8250.1: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
serial8250.2: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
console [ttyS2] enabled
brd: module loaded
loop: module loaded
i2c /dev entries driver
usbcore: registered new interface driver asix
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver net1080
usbcore: registered new interface driver cdc_subset
usbcore: registered new interface driver zaurus
usbmon: debugfs is not available
g_ether gadget: using random self ethernet address
g_ether gadget: using random host ethernet address
usb0: MAC b2:59:96:51:13:fa
usb0: HOST MAC da:76:f6:16:2e:21
g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
g_ether gadget: g_ether ready
musb_hdrc musb_hdrc: MUSB HDRC host driver
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: MUSB HDRC host driver
usb usb1: Manufacturer: Linux 2.6.31-omap1 musb-hcd
usb usb1: SerialNumber: musb_hdrc
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
mmci-omap-hs mmci-omap-hs.0: Failed to get debounce clock
TCP cubic registered
NET: Registered protocol family 17
NET: Registered protocol family 15
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
Power Management for TI OMAP3.
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 1
regulator_init_complete: incomplete constraints, leaving VDVI on
regulator_init_complete: incomplete constraints, leaving VDAC on
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
Waiting for root device /dev/mmcblk0p2...

The Angstrom developers are working at 2.6.32. The 2.6.31 kernel is the newest kernel that both Angstrom and Xenomai support. I know that not applying the patches that Angstrom provided 2.6.31 kernel, broke the ability of my BeagleBoard to use the EHCI USB host Port on the board.

I suspect that the problem is something specific to the way the BeagleBoard uses the OMAP3530 as an SD card controller. There are multiple ways to attach a SD card interface to a OMAP3 chip. There may be a difference between the board that you are using and the BeagleBoard.

The SD cards that I am using are Class 4 (4-bit wide) 2 to 4 GB cards. The BeagleBoard attaches the SD card interface to the MMC1 port. SD cards can also be attached via an SPI bus.
How does the SD card attache in your board?

The BeagleBoard SRM references a "Card Detect" interrupt.8.11.3 Card Detect
When a card is inserted into the SD/MMC connector, the Card Detect pin is grounded. This is detected on pin P12 of the TPS65950. An interrupt, if enabled, is sent to the OMAP3530 via the interrupt pin. The SW can be written such that the system comes out of sleep or a reduced frequency mode when the card is detected.
There doesn't seem to be any other interrupt signal external to the OMAP chip.

I'll dig deeper and find out specifically which interrupts the BeagleBoard SD card affects.

Regards,
Bob Feretich

On 7/19/2010 1:31 AM, Gilles Chanteperdrix wrote:
Bob Feretich wrote:
   Thank you for the quick reply.

I rebuilt the non-Adeos patched kernel with the 32 KHz clocked disabled.
It booted correctly, so that wasn't the problem.  I didn't see any other
significant differences in the console boot logs.

The console log for the non-Adeos patched kernel with the 32 KHz clocked
disabled is pasted below. The /proc/interrupts contents is displayed at
the end.

I used the 1.16-01 patch.

Reading boot sector
Loading u-boot.bin from mmc


... snipped ...

beagleboard login: root
r...@beagleboard:~# cat /proc/interrupts
            CPU0
   7:          2        INTC  TWL4030-PIH
  11:          0        INTC  prcm
  12:       1078        INTC  DMA
  37:       1009        INTC  gp timer
  56:        273        INTC  i2c_omap
  61:          0        INTC  i2c_omap
  72:          1        INTC  serial idle
  73:          1        INTC  serial idle
  74:        158        INTC  serial idle, serial
  77:          0        INTC  ehci_hcd:usb1
  83:       1346        INTC  mmc0
  92:          1        INTC  musb_hdrc
  93:          0        INTC  musb_hdrc
378:          2     twl4030  twl4030_usb
384:          0     twl4030  mmc0
Err:          0
r...@beagleboard:~#
Ok. Several questions: what is this MADC patch you were talking about?
If this is a kernel patch, if yes, could you try and remove it?

You have an error message about mmc:
mmci-omap-hs mmci-omap-hs.0: Failed to get debounce clock

which I do not have. Could this not explain some issues?

You are using the 2.6.31 kernel which does not work for you, whereas
2.6.33 works for me. Could you test 2.6.33?

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to