[U-Boot] About PCI of U-BOOT of CANYONLANDS

Kazuaki Ichinohe
2009-03-19T04:43:12Z

Hi Anatolij,

This is a problem that the memory space of BAR2 is inaccessible.
Even if the value of VIDEO_IO_OFFSET is changed, the problem is not solved.

It is a log that you demanded as follows.
-------------------------------------------------
U-Boot 2009.01 ( 3? 19 2009 - 11:17:08)

CPU: AMCC PowerPC 460EX Rev. A at 800 MHz (PLB=200, OPB=100, EBC=100 MHz)
Security/Kasumi support
Bootstrap Option H - Boot ROM Location I2C (Addr 0x52)
Internal PCI arbiter disabled
32 kB I-Cache 32 kB D-Cache
Board: Canyonlands - AMCC PPC460EX Evaluation Board, 1*PCIe/1*SATA, Rev. 14
I2C: ready
DTT: 1 is 41 C
DRAM: 512 MB (ECC not enabled, 400 MHz, CL3)
FLASH: 64 MB
NAND: 128 MiB
PCI: Bus Dev VenId DevId Class Int
00 06 1002 5960 0300 ff
00 06 1002 5940 0380 ff
PCIE1: link is not up.
PCIE1: initialization as root-complex failed
Video: ATI Radeon video card (1002, 5960) found @(0:6:0)
rinfo->mmio_base = 0x88000000
Machine Check Exception.
Caused by (from msr): regs 1fe3ac30 Data Read PLB Error
NIP: 1FF82B1C XER: 00000000 LR: 1FF82B0C REGS: 1fe3ac30 TRAP: 0200 DEAR:
00000000
MSR: 00021000 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00

GPR00: 1FF82B0C 1FE3AD20 1FE3AF20 EF600300 00000000 00000000 00000000
1CB844A4
GPR08: 1FF43408 88000000 05F5E101 2FAF080A 00000008 055671DE 1FFABF00
1FFBF000
GPR16: 00000023 003F0000 00000001 00000001 10000020 00000000 0000023A
E3000CC0
GPR24: 00000001 1FE3AF20 1FE3AF08 1FE3AE88 1FE3AE80 00003000 1FFAE120
1FE40198
Call backtrace:
1FF82B0C 1FF834A8 1FF82498 1FF5FCDC 1FF42EF0 1FF41710
machine check

Regards,
Kazuaki Ichinohe

Anatolij Gustschin ????????:
> Kazuaki Ichinohe wrote:
>> Hi Anatolij, Stefan,
>>
>> The memory space is displayed in BAR2 of the PCI configuration space.
>> The video driver accesses this memory space and the exception is generated.
>>
>> driver source: u-boot/drivers/video/ati_radeon_fb.c
>> function name: void *video_hw_init(void)
>> line : 760line
>
> it seems that the driver is able to access memory space (registers, e.g.
> in radeon_identify_vram() ) but cannot access framebuffer?
>
> Please replace '#undef DEBUG' in drivers/video/ati_radeon_fb.c
> with '#define DEBUG' and also enable CONFIG_VIDEO and use
> #define VIDEO_IO_OFFSET 0xD0800000 and post the boot log again.
>
> Thanks!
>
> Best regards,
> Anatolij
>
>
>> I attach the log where the exception is generated.
>> I confirmed it by the source of the following patches.
>> #undef CONFIG_VIDEO
>> #ifdef CONFIG_VIDEO
>> #define CONFIG_BIOSEMU
>> #define CONFIG_ATI_RADEON_FB
>> #define VIDEO_IO_OFFSET 0xD8000000
>> #define CONFIG_SYS_ISA_IO_BASE_ADDRESS VIDEO_IO_OFFSET
>> #define CONFIG_VIDEO_SW_CURSOR
>> #define CONFIG_VIDEO_LOGO
>> #define CONFIG_CFB_CONSOLE
>> #define CONFIG_SPLASH_SCREEN
>> #define CONFIG_VGA_AS_SINGLE_DEVICE
>> #define CONFIG_CMD_BMP
>> #endif /* #ifdef CONFIG_VIDEO */
>>
>> Regards,
>> Kazuaki Ichinohe
>>
>