Hello,
Now that ethernet works for me and I can ssh in (having no VGA BIOS and no visible access otherwise other than serial console which I didn't bother to get to work on my full USB HDD system for logins), here are some of the remaining issues with DBE62 that I have noticed:
* lxfb and Xorg does not work, probably no video memory setup: lxfb 0000:00:01.1: failed to map frame buffer or controller registers lxfb: probe of 0000:00:01.1 failed with error -12
* The two USB ports on the right side don't power up
* NAND is set up on the wrong chip select (should be CS1, currently hardcoded to CS0 in southbridge/cs5536/cs5536.c)
* PLL initialization should trust bootstraps
For the PLL initialization I intend to send a patch soon after some testing and registry comparisons that sets MANUALCONF in raminit.c back to 0
NAND setup needs some refactoring and allowing selection of the chip select(s) in dts. There I am not sure if we should bother supporting multiple NAND flashes or not. Theoretically I believe it to be possible, but I don't know of any such boards and just know that linux 553x_nand mtd driver seems to be capable of handling that scenario. In the case of supporting only one, there could just be an additional variable in dts that tells which chip select is used for NAND (how it is wired up on the board). Otherwise I guess the new dts array support would come into play?
I have no ideas about the USB ports at the moment. Will try to find time to compare dmesg logs, registers and such things, maybe also some setup problems.
Same about video memory, but that seems easy enough that I might actually succeed.
There were some discussions about merging the DBE61 and DBE62 code, and that might be a good course of action going forward. The differences between these boards as I remember are
a) different ethernet adapter - not much concerning firmware, might have a slightly different IRQ routing, but perhaps not, no working raminit for DBE61 doesn't allow to easily find out. b) different GeodeLink speed (PCI clock) - DBE61 has 33MHz, DBE62 66MHz c) different memory chips - need different fake SPDs d) LPC vs FWH boot ROM interface e) dedicated serial port pins brought out (at least CTS, RTS, RX, TX) - another UART, allowing always enabled serial console output without sacrificing DDC
Given that, does it seem like a good or bad idea to merge them? There isn't all that much code in mainboard folders, but DBE61 code at the moment could probably use a mostly full code pull from DBE62 code, so a good time to decide on that, it seems.
Regards, Mart Raudsepp Artec Design LLC
Ühel kenal päeval, L, 2008-05-03 kell 05:31, kirjutas Mart Raudsepp:
* lxfb and Xorg does not work, probably no video memory setup: lxfb 0000:00:01.1: failed to map frame buffer or controller registers lxfb: probe of 0000:00:01.1 failed with error -12
Attached is a trivial patch to set up the video memory, but I still get no picture. Probably other setup problems causing trouble still. With video memory set up I get problems starting with no visual effect on loading lxfb module to a nice kernel oops loop on Xorg start.
Patch itself is probably good, I'm just not sure where the 8MB comes from and I don't know yet what this reserved memory is used for (just framebuffer, or other functions too, etc).
This also reminds me that I didn't notice a way in the current menuconfig to disable the muxed first UART to allow VGA DDC to work. That I believe should be configurable from Kconfig, but I might have overlooked something. Got reminded because i've had trouble without DDC on vm86 based xorg-server with geode driver before.
One difference with our working v2 code regarding video is that the video IRQ isn't shared, as they are given out more separately via Config/Options.lb. Not sure if that could matter, but that's one thing.
dmesg additions on "modprobe lxfb" after video memory patch:
PCI: Guessed IRQ 11 for device 0000:00:01.1 PCI: Sharing IRQ 11 with 0000:00:01.2 PCI: Sharing IRQ 11 with 0000:00:0f.1 lxfb 0000:00:01.1: 8192 KB of video memory at 0xfd000000 fb0: Geode LX frame buffer device
Start of kernel spew I found from my serial console quite some time later on after starting X and sitting in a freeze (there are some 50 pages more, probably got into a loop on pdflush problems - not pasted here - more textual content in the end):
Oops: 0000 [#1] PREEMPT Modules linked in: lxfb fb cfbcopyarea cfbimgblt cfbfillrect geode_aes crypto_blkcipher crypto_algapi via_velocity
Pid: 3162, comm: X Not tainted (2.6.25-gentoo-r1 #4) EIP: 0060:[<c027210a>] EFLAGS: 00010282 CPU: 0 EIP is at do_mpage_readpage+0x15/0x3e1 EAX: 00000000 EBX: 0000013c ECX: 00000001 EDX: c10252c0 ESI: 00000000 EDI: c10252c0 EBP: ce609d6c ESP: ce609d10 DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068 Process X (pid: 3162, ti=ce608000 task=cf02a070 task.ti=ce608000) Stack: ce609d4c 00000000 ce609d30 00000001 c10252c0 00000000 00000001 00000000 ce609d38 c025e210 ce609d4c c025fbcd c03c7a38 cecc1534 cec0b430 ce609d64 c028b8b4 00000000 cecc1534 cecc1534 0000013c 00000000 c10252c0 ce609dc0 Call Trace: [<c025e210>] ? d_rehash+0x16/0x42 [<c025fbcd>] ? d_splice_alias+0xd0/0xd9 [<c028b8b4>] ? ext3_lookup+0x7b/0xa2 [<c027250a>] ? mpage_readpage+0x34/0x48 [<c0288269>] ? ext3_get_block+0x0/0xb8 [<c025654c>] ? path_put+0x0/0x23 [<c0258225>] ? __link_path_walk+0xc68/0xc7f [<c0235d8e>] ? find_lock_page+0x26/0x9c [<c0287a94>] ? ext3_readpage+0xf/0x11 [<c0236567>] ? filemap_fault+0x310/0x351 [<c02582c9>] ? path_walk+0x8d/0x96 [<c023fd2d>] ? __do_fault+0x4f/0x304 [<c02411ec>] ? handle_mm_fault+0x235/0x4f2 [<c020cd7e>] ? do_page_fault+0x238/0x5e2 [<c03911c4>] ? unix_stream_connect+0x362/0x38e [<c0342249>] ? sys_connect+0x54/0x71 [<c03424c9>] ? sock_map_fd+0x45/0x4f [<c03434bb>] ? sys_socketcall+0x6f/0x168 [<c020cb46>] ? do_page_fault+0x0/0x5e2 [<c03bb2ba>] ? error_code+0x6a/0x70 ======================= Code: 58 85 d2 74 0a b8 01 00 00 00 e8 da f9 ff ff 89 d8 8b 5d fc c9 c3 55 89 e5 57 56 53 83 ec 50 89 45 b8 89 55 b4 89 4d b0 8b 42 10 <8b> 0 EIP: [<c027210a>] do_mpage_readpage+0x15/0x3e1 SS:ESP 0068:ce609d10 ---[ end trace c55b15462a99792c ]--- Eeek! page_mapcount(page) went negative! (-1807219968) page pfn = 1280 page->flags = 98393bc4 page->count = 2000000 page->mapping = 00000000 vma->vm_ops = generic_file_vm_ops+0x0/0x18 vma->vm_ops->nopage = 0x0 vma->vm_ops->fault = filemap_fault+0x0/0x351 vma->vm_file->f_op->mmap = generic_file_mmap+0x0/0x3f ------------[ cut here ]------------ kernel BUG at mm/rmap.c:669! invalid opcode: 0000 [#2] PREEMPT
Feels very much like more setup work is necessary. I think getting the other USB ports to give power (e.g light up an optical mouse) might be a good start.
Regards, Mart Raudsepp
On Sat, May 03, 2008 at 06:40:51AM +0300, Mart Raudsepp wrote:
commit 65e61701b50e7af00ad0771bd2c1f2d08a6bb3a6 Author: Mart Raudsepp mart.raudsepp@artecdesign.ee Date: Sat May 3 06:21:47 2008 +0300
artecgroup/dbe62: Set up video memory Signed-off-by: Mart Raudsepp <mart.raudsepp@artecdesign.ee>
Acked-by: Peter Stuge peter@stuge.se
diff --git a/mainboard/artecgroup/dbe62/dts b/mainboard/artecgroup/dbe62/dts index 9e58d6c..0425482 100644 --- a/mainboard/artecgroup/dbe62/dts +++ b/mainboard/artecgroup/dbe62/dts @@ -27,6 +27,8 @@ }; domain@0 { /config/("northbridge/amd/geodelx/domain");
/* Video RAM has to be in 2MB chunks. */
pci@1,0 { /config/("northbridge/amd/geodelx/pci"); };geode_video_mb = "8";
I'll look at this more next week. I am having one more go at the interrupt mess on the alix1c, as that will also affect the dbe62.
ron
On Fri, May 02, 2008 at 09:14:42PM -0700, ron minnich wrote:
I am having one more go at the interrupt mess on the alix1c
I've just booted my 1c with v3, 2.6.25 and lxfb but the 5536 PATA driver does not want to play so it does not mount root.
Is there a special trick? Does v3 disable PATA? (It is enabled by default from reset.)
//Peter
On Fri, May 2, 2008 at 9:42 PM, Peter Stuge peter@stuge.se wrote:
On Fri, May 02, 2008 at 09:14:42PM -0700, ron minnich wrote:
I am having one more go at the interrupt mess on the alix1c
I've just booted my 1c with v3, 2.6.25 and lxfb but the 5536 PATA driver does not want to play so it does not mount root.
Is there a special trick? Does v3 disable PATA? (It is enabled by default from reset.)
I'm afraid you are in new territory. I have only booted the CF. v3 might disable pata if it enables the CF -- they are the same wires IIRC.
We may need a config option for this so it can be part o the dialog.
Oh wait it shouldn't matter -- you moved the jumper right? Isn't it all jumper based?
can you try with a cf root just to see if that works at all?
ron
On Fri, May 02, 2008 at 09:49:03PM -0700, ron minnich wrote:
Is there a special trick? Does v3 disable PATA? (It is enabled by default from reset.)
I'm afraid you are in new territory. I have only booted the CF.
I'm trying to boot CF too. FILO loads the kernel fine.
Oh wait it shouldn't matter -- you moved the jumper right? Isn't it all jumper based?
Jumper still on "ON=CF master"
can you try with a cf root just to see if that works at all?
========== mainboard_pre_payload: done ========================================= FILO version 0.5 (stuge@n410c) Thu Jan 24 04:17:59 CET 2008 boot: hda1:/vmlinuz root=/dev/hda1 console=tty0 console=ttyS0,115200 hda: LBA 1025MB: SanDisk SDCFX3-1024 Mounted ext2fs Found Linux version 2.6.25 (stuge@n410c) #1 PREEMPT Sat May 3 06:26:40 CEST 2008 bzImage. Loading kernel... ok Jumping to entry point... Linux version 2.6.25 (stuge@n410c) (gcc version 4.2.2 (Gentoo 4.2.2 p1.0)) #1 PREEMPT Sat May 3 06:26:40 CEST 2008 BIOS-provided physical RAM map: BIOS-e820: 0000000000000b70 - 00000000000a0000 (usable) BIOS-e820: 0000000000100000 - 000000000f7e0000 (usable) 247MB LOWMEM available. Scan SMP from c0000000 for 1024 bytes. Scan SMP from c009fc00 for 1024 bytes. Scan SMP from c00f0000 for 65536 bytes. Zone PFN ranges: DMA 0 -> 4096 Normal 4096 -> 63456 Movable zone start PFN for each node early_node_map[1] active PFN ranges 0: 0 -> 63456 DMI not present or invalid. Allocating PCI resources starting at 10000000 (gap: 0f7e0000:f0820000) Built 1 zonelists in Zone order, mobility grouping on. Total pages: 62961 Kernel command line: root=/dev/hda1 console=tty0 console=ttyS0,115200 No local APIC present or hardware disabled Initializing CPU#0 PID hash table entries: 1024 (order: 10, 4096 bytes) Detected 498.059 MHz processor. Console: colour dummy device 80x25 console [tty0] enabled console [ttyS0] enabled Dentry cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 247868k/253824k available (2140k kernel code, 5460k reserved, 779k data, 160k init, 0k highmem) virtual kernel memory layout: fixmap : 0xfffba000 - 0xfffff000 ( 276 kB) vmalloc : 0xd0000000 - 0xfffb8000 ( 767 MB) lowmem : 0xc0000000 - 0xcf7e0000 ( 247 MB) .init : 0xc03dc000 - 0xc0404000 ( 160 kB) .data : 0xc0317170 - 0xc03d9fb8 ( 779 kB) .text : 0xc0100000 - 0xc0317170 (2140 kB) Checking if this processor honours the WP bit even in supervisor mode...Ok. SLUB: Genslabs=12, HWalign=32, Order=0-1, MinObjects=4, CPUs=1, Nodes=1 Calibrating delay using timer specific routine.. 997.14 BogoMIPS (lpj=498573) Mount-cache hash table entries: 512 CPU: L1 I Cache: 64K (32 bytes/line), D cache 64K (32 bytes/line) CPU: L2 Cache: 128K (32 bytes/line) Compat vDSO mapped to ffffe000. CPU: AMD Geode(TM) Integrated Processor by AMD PCS stepping 02 Checking 'hlt' instruction... OK. Freeing SMP alternatives: 0k freed net_namespace: 152 bytes NET: Registered protocol family 16 PCI: Using configuration type 1 Setting up standard PCI resources SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb PCI: Probing PCI hardware PCI: Using IRQ router default [1022/2090] at 0000:00:0f.0 Bluetooth: Core ver 2.11 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized 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 NTFS driver 2.1.29 [Flags: R/O]. io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered (default) PCI: Guessed IRQ 11 for device 0000:00:01.1 PCI: Sharing IRQ 11 with 0000:00:01.2 lxfb 0000:00:01.1: 8192 KB of video memory at 0xfd000000 fbcon: Geode LX (fb0) is primary device Console: switching to colour frame buffer device 80x30 fb0: Geode LX frame buffer device Generic RTC Driver v1.07 AMD Geode RNG detected Linux agpgart interface v0.103 [drm] Initialized drm 1.1.0 20060810 Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,EPP] parport0: irq 7 detected loop: module loaded via-rhine.c:v1.10-LK1.4.3 2007-03-06 Written by Donald Becker PCI: Guessed IRQ 10 for device 0000:00:0d.0 PCI: Sharing IRQ 10 with 0000:00:0f.3 eth0: VIA Rhine III (Management Adapter) at 0xfe019000, 00:0d:b9:0d:0a:e4, IRQ 10. eth0: MII PHY found at address 1, status 0x7849 advertising 05e1 Link 0000. tun: Universal TUN/TAP device driver, 1.6 tun: (C) 1999-2004 Max Krasnyansky maxk@qualcomm.com usbcore: registered new interface driver cdc_ether usbcore: registered new interface driver MOSCHIP usb-ethernet driver Driver 'sd' needs updating - please use bus_type methods Driver 'sr' needs updating - please use bus_type methods pata_cs5536: disabled by BIOS usbmon: debugfs is not available PCI: Guessed IRQ 9 for device 0000:00:0f.5 PCI: Sharing IRQ 9 with 0000:00:0f.4 ehci_hcd 0000:00:0f.5: EHCI Host Controller ehci_hcd 0000:00:0f.5: new USB bus registered, assigned bus number 1 ehci_hcd 0000:00:0f.5: irq 9, io mem 0xfe017000 ehci_hcd 0000:00:0f.5: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb1: configuration #1 chosen from 1 choice hub 1-0:1.0: USB hub found hub 1-0:1.0: 4 ports detected PCI: Guessed IRQ 9 for device 0000:00:0f.4 PCI: Sharing IRQ 9 with 0000:00:0f.5 ohci_hcd 0000:00:0f.4: OHCI Host Controller ohci_hcd 0000:00:0f.4: new USB bus registered, assigned bus number 2 ohci_hcd 0000:00:0f.4: irq 9, io mem 0xfe016000 usb usb2: configuration #1 chosen from 1 choice hub 2-0:1.0: USB hub found hub 2-0:1.0: 4 ports detected usbcore: registered new interface driver usblp Initializing USB Mass Storage driver... usbcore: registered new interface driver usb-storage USB Mass Storage support registered. usbcore: registered new interface driver usbserial drivers/usb/serial/usb-serial.c: USB Serial Driver core drivers/usb/serial/usb-serial.c: USB Serial support registered for pl2303 usbcore: registered new interface driver pl2303 drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver i8042.c: Can't read CTR while initializing i8042. i8042: probe of i8042 failed with error -5 mice: PS/2 mouse device common for all mice WDT driver for the Winbond(TM) W83627HF/THF/HG Super I/O chip initialising. w83627hf/thf/hg WDT: initialized. timeout=60 sec (nowayout=0) Bluetooth: HCI USB driver ver 2.9 usbcore: registered new interface driver hci_usb PCI: Guessed IRQ 11 for device 0000:00:01.2 PCI: Sharing IRQ 11 with 0000:00:01.1 geode-aes: GEODE AES engine enabled. usbcore: registered new interface driver usbhid drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver Advanced Linux Sound Architecture Driver Version 1.0.16rc2 (Thu Jan 31 16:40:16 2008 UTC). PCI: Guessed IRQ 10 for device 0000:00:0f.3 PCI: Sharing IRQ 10 with 0000:00:0d.0 usbcore: registered new interface driver snd-usb-audio ALSA device list: #0: CS5535 Audio cs5535audio at 0x1880, irq 10 NET: Registered protocol family 1 NET: Registered protocol family 17 Bluetooth: L2CAP ver 2.9 Bluetooth: L2CAP socket layer initialized Bluetooth: SCO (Voice Link) ver 0.5 Bluetooth: SCO socket layer initialized Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM TTY layer initialized Bluetooth: RFCOMM ver 1.8 802.1Q VLAN Support v1.8 Ben Greear greearb@candelatech.com All bugs added by David S. Miller davem@redhat.com Using IPI Shortcut mode VFS: Cannot open root device "hda1" or unknown-block(0,0) Please append a correct "root=" boot option; here are the available partitions: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
No mention of the PATA. Linux doesn't see the CF. :\
//Peter
On Sat, 3 May 2008, Peter Stuge wrote:
On Fri, May 02, 2008 at 09:49:03PM -0700, ron minnich wrote:
Is there a special trick? Does v3 disable PATA? (It is enabled by default from reset.)
I'm afraid you are in new territory. I have only booted the CF.
I'm trying to boot CF too. FILO loads the kernel fine.
Oh wait it shouldn't matter -- you moved the jumper right? Isn't it all jumper based?
Jumper still on "ON=CF master"
can you try with a cf root just to see if that works at all?
========== mainboard_pre_payload: done ========================================= FILO version 0.5 (stuge@n410c) Thu Jan 24 04:17:59 CET 2008 boot: hda1:/vmlinuz root=/dev/hda1 console=tty0 console=ttyS0,115200 hda: LBA 1025MB: SanDisk SDCFX3-1024 Mounted ext2fs Found Linux version 2.6.25 (stuge@n410c) #1 PREEMPT Sat May 3 06:26:40 CEST 2008 bzImage. Loading kernel... ok Jumping to entry point... Linux version 2.6.25 (stuge@n410c) (gcc version 4.2.2 (Gentoo 4.2.2 p1.0)) #1 PREEMPT Sat May 3 06:26:40 CEST 2008
[...]
Driver 'sd' needs updating - please use bus_type methods Driver 'sr' needs updating - please use bus_type methods pata_cs5536: disabled by BIOS
Hmm, I wonder if this is something coreboot has disabled or not enabled? drivers/ata/pata_cs5536.c:244 tests a bit in the IDE config register of CS5536.
/ulf
On 03/05/08 14:43 +0200, Ulf Jordan wrote:
Driver 'sd' needs updating - please use bus_type methods Driver 'sr' needs updating - please use bus_type methods pata_cs5536: disabled by BIOS
Hmm, I wonder if this is something coreboot has disabled or not enabled? drivers/ata/pata_cs5536.c:244 tests a bit in the IDE config register of CS5536.
Can you try the legacy driver (ide/pci/amd74xx.c)? It sounds like the libata port brought over something distasteful. I've been using the old CS5536 driver for a very long time no with no problems.
Jordan
On Mon, May 05, 2008 at 09:26:39AM -0600, Jordan Crouse wrote:
pata_cs5536: disabled by BIOS
Hmm, I wonder if this is something coreboot has disabled or not enabled? drivers/ata/pata_cs5536.c:244 tests a bit in the IDE config register of CS5536.
Can you try the legacy driver (ide/pci/amd74xx.c)?
Will try later.
It sounds like the libata port brought over something distasteful. I've been using the old CS5536 driver for a very long time no with no problems.
Regardless, no bit should indicate that PATA is disabled.
Particularly surprising since IDE is enabled from reset.
//Peter
On 05/05/08 18:32 +0200, Peter Stuge wrote:
On Mon, May 05, 2008 at 09:26:39AM -0600, Jordan Crouse wrote:
pata_cs5536: disabled by BIOS
Hmm, I wonder if this is something coreboot has disabled or not enabled? drivers/ata/pata_cs5536.c:244 tests a bit in the IDE config register of CS5536.
Can you try the legacy driver (ide/pci/amd74xx.c)?
Will try later.
It sounds like the libata port brought over something distasteful. I've been using the old CS5536 driver for a very long time no with no problems.
Regardless, no bit should indicate that PATA is disabled.
Particularly surprising since IDE is enabled from reset.
The enable bits for the AMD74XX controller (which the 5536 uses) are in PCI config byte 0x40. bit 1 is the enable bit for port 0 and bit 0 is the enable bit for port 1.
I have just tried both db800 and norwich in v2 with the legacy AMD5536 driver and both worked (well, db800 puked, but for other reasons). Here's the boot log:
AMD5536: IDE controller (0x1022:0x209a rev 0x01) at PCI slot 0000:00:0f.2 AMD5536: not 100% native mode: will probe irqs later AMD5536: 0000:00:0f.2 (rev 01) UDMA100 controller ide0: BM-DMA at 0x1ca0-0x1ca7, BIOS settings: hda:pio, hdb:pio AMD5536: IDE port disabled
The last line is the secondary bus being disabled.
I looked at the libata driver, and it seems to be doing the right thing - reading 0x40 and checking bit 1.
So I checked the code: in v2, src/southbridge/amd/cs5536/cs5536_ide.c handles the honors.
So long story short - this is possibly something that just never got brought over to v3?
Jordan
On 05/05/08 10:50 -0600, Jordan Crouse wrote:
On 05/05/08 18:32 +0200, Peter Stuge wrote:
On Mon, May 05, 2008 at 09:26:39AM -0600, Jordan Crouse wrote:
pata_cs5536: disabled by BIOS
Hmm, I wonder if this is something coreboot has disabled or not enabled? drivers/ata/pata_cs5536.c:244 tests a bit in the IDE config register of CS5536.
Can you try the legacy driver (ide/pci/amd74xx.c)?
Will try later.
It sounds like the libata port brought over something distasteful. I've been using the old CS5536 driver for a very long time no with no problems.
Regardless, no bit should indicate that PATA is disabled.
Particularly surprising since IDE is enabled from reset.
The enable bits for the AMD74XX controller (which the 5536 uses) are in PCI config byte 0x40. bit 1 is the enable bit for port 0 and bit 0 is the enable bit for port 1.
I have just tried both db800 and norwich in v2 with the legacy AMD5536 driver and both worked (well, db800 puked, but for other reasons). Here's the boot log:
AMD5536: IDE controller (0x1022:0x209a rev 0x01) at PCI slot 0000:00:0f.2 AMD5536: not 100% native mode: will probe irqs later AMD5536: 0000:00:0f.2 (rev 01) UDMA100 controller ide0: BM-DMA at 0x1ca0-0x1ca7, BIOS settings: hda:pio, hdb:pio AMD5536: IDE port disabled
The last line is the secondary bus being disabled.
I looked at the libata driver, and it seems to be doing the right thing - reading 0x40 and checking bit 1.
So I checked the code: in v2, src/southbridge/amd/cs5536/cs5536_ide.c handles the honors.
So long story short - this is possibly something that just never got brought over to v3?
Followup - the code is in v3, but is gated by sb->enable_ide, which defaults to 0. I presume thats where your problem lies.
Jordan
On Mon, May 5, 2008 at 9:54 AM, Jordan Crouse jordan.crouse@amd.com wrote:
Followup - the code is in v3, but is gated by sb->enable_ide, which defaults to 0. I presume thats where your problem lies.
defaults to 0 but is overridden to 1 on the 1c:mainboard/pcengines/alix1c/dts: enable_ide = "1";
ron
You mean this I suppose?
#define IDE_CFG 0x40 #define CHANEN (1L << 1) #define PWB (1L << 14) #define CABLE (1L << 16) #define IDE_DTC 0x48 #define IDE_CAST 0x4C #define IDE_ETC 0x50
static void ide_init(struct device *dev) { uint32_t ide_cfg;
printk_spew("cs5536_ide: %s\n", __FUNCTION__); /* GPIO and IRQ setup are handled in the main chipset code. */
// Enable the channel and Post Write Buffer // NOTE: Only 32-bit writes to the data buffer are allowed when PWB is set ide_cfg = pci_read_config32(dev, IDE_CFG); ide_cfg |= CHANEN | PWB; pci_write_config8(dev, IDE_CFG, ide_cfg); }
That code is there in v3.
It depends on this: if (sb->enable_ide) ide_init(dev);
but that's there too: mainboard/artecgroup/dbe62/dts: enable_ide = "1"; mainboard/pcengines/alix1c/dts: enable_ide = "1";
I'm not near a board. Do you see this message: printk(BIOS_DEBUG, "cs5536_ide: %s\n", __func__);
ron
On Sat, May 03, 2008 at 11:48:33AM +0200, Peter Stuge wrote:
pata_cs5536: disabled by BIOS
On Thu, May 08, 2008 at 07:52:15AM -0700, ron minnich wrote:
Committed revision 678.
Just confirming that rev 678 made pata_cs5536 work for me.
With v3, FILO+ide_ext2_multi_read_debug6.patch and 2.6.25, using simple init scripts, alix1c boots in 7.0 seconds with lxfb. \o/
http://stuge.se/alix1c.timing.txt
v3 has loglevel BIOS_ERROR. Note that the first v3 output is some device path error. This is not really time zero, but I doubt we spend a lot of time before it. I would like to add a coreboot banner that is always printed ASAP after power on, regardless of loglevel.
//Peter
can you send me your 2.6.25 config. I assume you are not using MFGPT.
thanks
ron
On Thu, May 08, 2008 at 11:06:08PM -0700, ron minnich wrote:
can you send me your 2.6.25 config. I assume you are not using MFGPT.
Correct.
//Peter
I wonder if we can create a coreboot logo ... would be nice to have the ability to pop that up, maybe offer it to the kerney guys :-)
ron
On 02/05/08 21:49 -0700, ron minnich wrote:
On Fri, May 2, 2008 at 9:42 PM, Peter Stuge peter@stuge.se wrote:
On Fri, May 02, 2008 at 09:14:42PM -0700, ron minnich wrote:
I am having one more go at the interrupt mess on the alix1c
I've just booted my 1c with v3, 2.6.25 and lxfb but the 5536 PATA driver does not want to play so it does not mount root.
Is there a special trick? Does v3 disable PATA? (It is enabled by default from reset.)
I'm afraid you are in new territory. I have only booted the CF. v3 might disable pata if it enables the CF -- they are the same wires IIRC.
CF uses PATA.
Jordan