
I also tried this card under non-Linux platforms, like OpenVMS I64 V8.4 and Windows XP 64-Bit V2003 with SP2 (needless to say the ‘[for] Itanium systems’ version). With VMS, remarkably enough, I get a fully functional ‘glass terminal’ (as I said before; however, no DECwindows though, but that was to be expected) and with Windows I have a very snappy and fully functional framebuffer, which I didn't expect (as the Radeon 7500 and other cards [except for the FireGL X1] don't perform extremely well, even with drivers available).eccerr0r wrote:There are plenty of idiosyncrasies with running x86 cards on a ia64 machine, enough so that the software dev may need the actual hardware to debug the issue. But quite possibly it just is because the devs didn't expect people to use a PCI version of the card and didn't configure the software that way.
Code: Select all
# cat /etc/debian_version
6.0.2
# uname -srmpv
Linux 2.6.32-5-mckinley #1 SMP Tue Jun 14 12:05:22 UTC 2011 ia64 unknown
# free -g
total used free shared buffers cached
Mem: 23 0 23 0 0 0
-/+ buffers/cache: 0 23
Swap: 7 0 7
# lscpu
Architecture: ia64
CPU(s): 8
Thread(s) per core: 1
Core(s) per socket: 1
CPU socket(s): 8
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 32
Model: 0
CPU MHz: 1400.003
L1d cache: 16K
L1i cache: 16K
L2d cache: 256K
L2i cache: 1024K
L3 cache: 6144K
# lspci | grep -i Radeon
81:00.0 VGA compatible controller: ATI Technologies Inc Manhattan [Mobility Radeon HD 5430 Series]
81:00.1 Audio device: ATI Technologies Inc Manhattan HDMI Audio [Mobility Radeon HD 5000 Series]
e0:02.0 VGA compatible controller: ATI Technologies Inc Radeon RV100 QY [Radeon 7000/VE]
# dmesg | grep -i DRM
[ 9.954248] [drm] Initialized drm 1.1.0 20060810
[ 10.720171] [drm] radeon defaulting to userspace modesetting.
[ 10.722446] [drm] Initialized radeon 1.32.0 20080528 for 0000:e0:02.0 on minor 0
[ 10.724609] [drm] Initialized radeon 1.32.0 20080528 for 0000:81:00.0 on minor 1Code: Select all
# dmesg | tail
[ 581.224646] Xorg(11143): unaligned access to 0x2000000000d6d9a9, ip=0x2000000000019321
[ 581.224680] Xorg(11143): unaligned access to 0x2000000000d6d9f1, ip=0x2000000000019321
[ 581.224711] Xorg(11143): unaligned access to 0x2000000000d6d9b2, ip=0x2000000000019321
[ 581.224742] Xorg(11143): unaligned access to 0x2000000000d6d9bb, ip=0x2000000000019321
[ 581.224773] Xorg(11143): unaligned access to 0x2000000000d6d9c4, ip=0x2000000000019321Good question, I haven't tried it yet. I tried it in an IBM x346, though that's hardly an average (i.e. ‘PC’) type of x86/-64 system (I ran into trouble there, because of the boot ROM and BIOS tripping over it, also due to conflicts with the integrated graphics adapter on IBM's RSA II).Does the card work in an x86 box, first?
Is the card dual voltage or 3.3V PCI only (since a lot of PC motherboards are 5V)?
I do have that PCI/-X & AGP combined riser/backplane board (originally intended for the zx6000) and, remarkably, it works with my rx2620! I got better results with the FireGL X1 than with this HD5450 so far.rx2620s have PCIX slots, 64 bit and at least 66MHz. It may have the riser with an AGP slot, but the same ia64/x86 testing may be needed...
Maybe this is a good opportunity? They're not very expensive, even new.(I have never tried a graphics accelerator card in my SR870BH2 ia64 box, I just have never gotten my hands on a PCI graphics accelerator card...)

I didn't tell the OS anything, nor instructed it to flag anything. All I did, so far, is simply install Debian ‘Squeeze’ IA-64 (6.0.2) along with the "xserver-xorg-video-radeonhd" (by the way, I naturally also tried "-ati" and "-radeon") package and see if I can get anything out of the card (i.e. GNOME), besides a text console. Same results under Gentoo IA-64. But, I'll soon give Gentoo another shot. I like Gentoo a lot better for customizations, including the whole kernel configuration and building procedure.eccerr0r wrote:First off the "unaligned access" is not an error unless you told the OS to flag it as such.
Sorry, but what is ‘it’ and why should ‘it’ be compatible with IA-32? (Or are you saying that it's more than just a performance improvement?)Ia64 was not meant to do unaligned accesses for speed, but to be compatible with ia32 it needed to support them, so the OS handles unaligned accesses and when the OS does, it prints the warning out so people can remove them from the code.
From where I'm standing, not a terrible lot. Ironically, I get more out of this card under a neglected oddball of an operating system like Windows XP V2003 SP2 IA-64 (with no drivers available for the HD5450, or any other HD-series graphics adapter whatsoever) than under Linux (the supposed friend of cross-platform users).What does it do?
Well, that's the thing: It does not work. (About X.org, how would you suggest me to contact them about this? Is there an IA-64 specific mailing list? I haven't dealt with them yet.)If Debian works, it should also work with Gentoo unless the code suffered bit rot... This needs to go to xorg.
Why would it be ‘pretty dumb’ to pay a modest sum for a modern graphics adapter?Unfortunately for me, any graphics investment to my ia64 box is pretty dumb unless I get the hardware for free.
There aren't any apps that I run on the ia64 that would benefit from the graphics accelerator...
(I'm a bit confused now. Didn't you just say that, for the software that you typically use, you don't really need graphics acceleration...?)I have a pci matrox card that I could try but it's not an accelerator and probably the onboard ati is faster anyway...
So, is it then safe to say that X.org doesn't particularly concern itself with anything except x86/-64...?I was also trying to get the mach64 driver to work on the internal rage pro. That didn't work very well either, with lots of errors that I don't see when running on my x86 pc's with a similar ati rage pro card...

Don't too easily assume things: My rx2620s actually have Itanium 9000-series (“Montecito”; DC, MT) processors. So, my hunch was correct (that the lack of IA-32/x86 emulation would mean bad news down the road). I guess I could try my AGP cards (including the FireGL X1) in one of my rx2620s and the HD5450 [PCI] in one of my rx2600 (“Madison”) systems then, for the time being and in the short term.eccerr0r wrote:However it needs to at least detect them and handle them gracefully (instead of cause a bus fault/floating point, which it could do and kill the program... which is not a clean thing to do.) Keep in mind that ia64 initially started out as able to run ia32 apps as a feature, all ia64 machines previous to the dual core 9000 series can run them without software emulation - emulation done in hardware (slowly, without dynamic translation.) Your(and my) machine should be(is) able to cleanly chroot into an ia32 directory and run native ia32 linux apps as is!

Actually, Gentoo gave me the exact same "lscpu" results (it also thought it was an 8-socket system). Or, are you saying that a customized/tailored kernel could do miracles?eccerr0r wrote:Ah... stupid debian pretexted "McKinley" and lscpu reported eight 1.4GHz cores without multithreading that matches up with a ... Madison :p (and rx2620's don't have 8 sockets...) You're right, the 9000-series CPUs do not have on-chip hardware ia32 execution code and may make it hard to boot video cards that require firmware to be executed.
Madisons as well. So, like I said, I'll give one of my rx2600s a try then. Not ideal, but better than nothing at the moment.McKinleys do have ia32 emulation hardware.
Not for Linux, obviously. (The thing is: A Radeon 7500 under OpenVMS, FireGL X1 under Windows XP IA-64 and so on, with the drivers installed, will still work just fine. Yes, I actually tested this and before I started messing around with Linux...)I really don't think that 9000-series and graphics accelerator options have been tested
Yes, that should be interesting. But, only from a performance and availability perspective. The same problems as with my HD5450 (normally also a PCIe card) would arise, with regard to the IA-32/x86 ROMs...Though there are 9000-series systems with pcie, no clue how those work... And of course the QPI IA64's have pcie...

Today I had time to try it with the FireGL X1 (AGP) card in my rx2620, with Debian IA-64 still, this is what I see:eccerr0r wrote:Nevertheless good luck. It's definitely not something that was intended ever since people stopped putting ia64 into the desktop... I'm sure someone would have donated an ia64 box to do dev work on; after all, Gentoo got an ia64 box from HP to dev on, even...
Code: Select all
# dmesg | grep -i AGP
[ 0.895403] IOC: reserving 512Mb of IOVA space at 0x60000000 for agpgart
[ 1.900236] Linux agpgart interface v0.103
[ 1.973839] agpgart: HP ZX1 IOC: IOPDIR shared with sba_iommu
[ 1.974124] <NULL>: AGP aperture is 512M @ 0x60000000
[ 1.974159] agpgart: Detected HP ZX1 HWP0003 AGP chipset (ioc=fed01000, lba=fed28000)Code: Select all
# dmesg | grep -i DRM
[ 9.615633] [drm] Initialized drm 1.1.0 20060810
[ 10.423821] [drm] radeon defaulting to userspace modesetting.
[ 10.425178] [drm] Initialized radeon 1.32.0 20080528 for 0000:80:00.0 on minor 0
[ 10.426725] [drm] Initialized radeon 1.32.0 20080528 for 0000:e0:02.0 on minor 1
depending on the chipset, the ram there is simply not accessible or can be remapped to higher addresses.eccerr0r wrote:That's odd. I guess I don't quite know how ia64 machines deal with memory mapped devices that were meant for ia32, but the aperature at 0x60000000 looks like it's at 1.5GB. If the machine has 4GB, that would lie in the same address space?! Wonder where the physical memory is mapped...
Interesting, will have to look at what my machine does. It has 4G which should completely cover the address space of 32-bit PCI, where would the machine put the video buffer, unless it has a separate address space for legacy cards? Weeiirrd....

The RAM is all accessible of course, but the question is whether or not the I/O device, namely the video card, is. Because it has a 32 bit address, where in the 64-bit physical address space is it (well, not all cpus have h/w to support all 64 bits physical but you get the idea...)? And why is it only a 32-bit address, how will software know to map into that address space if it's only 32-bit?roarinelk wrote:depending on the chipset, the ram there is simply not accessible or can be remapped to higher addresses.
i don't know how the ZX1 works, but my guess is the designers foresaw a situation like this and added
a remapping function, especially since the address space on ia64 is huge and for a modern OS it doesn't
matter one bit where RAM is located.
You seen an issue where there is none. There is no difference between ram and a device window; look at the 32biteccerr0r wrote:The RAM is all accessible of course, but the question is whether or not the I/O device, namely the video card, is. Because it has a 32 bit address, where in the 64-bit physical address space is it (well, not all cpus have h/w to support all 64 bits physical but you get the idea...)? And why is it only a 32-bit address, how will software know to map into that address space if it's only 32-bit?roarinelk wrote:depending on the chipset, the ram there is simply not accessible or can be remapped to higher addresses.
i don't know how the ZX1 works, but my guess is the designers foresaw a situation like this and added
a remapping function, especially since the address space on ia64 is huge and for a modern OS it doesn't
matter one bit where RAM is located.
If it displayed as 0x000060000000, note it 's the same number but has 16 more bits (48 bit phys address) then I'd be a little less worried it's not doing the right thing.
Again I'll have to look at the memory map and see how my ia64 (deals with)/(maps) PCI memory. The ATI Rage Pro onboard my machine should have 8MB RAM that it has to map somewhere... it most definitely does work as a frame buffer at least, so they handled it some way...
(The ATI Rage Pro seems slow on my ia64 box compared to my discrete AGP ATI Rage Pro... but that's just a guess based on how it *seems* to run.)

The issue at hand is that there IS an issue. The cards do NOT work on ia64. They may recognize the cards, but they don't work. I'm just speculating potential issues of how they may have implemented the mapping, as these are issues that may affect architectures not tested for by the original drivers (including the fact that the drivers may not even handle the fact it could be running on machines with > 32bit address space). If the graphics drivers were truely arch independent, this thread wouldn't be here...roarinelk wrote:You seen an issue where there is none. There is no difference between ram and a device window; look at the 32bit
address space as a tiny subset of the larger 64bit space, and the arbiter inside the chipset knows based on the configuration
which chipselect line to pull when presented with a memory address (the ZX1 has an io virtualization unit which does IOMMU and
GART [AGP] duties]). Also since most PCI devices can't really cope with >32bit addresses (really, some broadcom network cards
can't even handle that little space) it's just easier to move the windows for pci (really, all external devices) somewhere in the
32 bit space and remap usable ram to just above the 4G barrier. Try it with 4g ram on a x64 box: bios will usually report 3G
of usable ram in the 32bit space and an extra 1g above 4g because of all the hardware windows (and kernel space) between 3g and 4g.
The reason it's printed as 32bit hex is because the format string for that particular printk is "%lx" ;)
As to the original issue: It works, doesn't it? Kernel recognizes both radeons. The alignment warnings are probably
the result of using either an older compiler and/or bad coding in the driver. I've seen similar issues when I initially
started out with Gentoo on MIPS (like all other archs mips is quite allergic to unaligned accesses for obvious reasons,
but doesn't warn about them and traps into the kernel to emulate them), but they gradually went away while rebuilding
all packages.

Do you perhaps have any pictures to show of this configuration? I have an ATi Radeon HD4670 (AGP) here, which also has an additional/external power requirement. Especially now that I'm planning to reinstall Gentoo, this time hopefully with DRM/DRI, it's definitely an interesting thing to try. I was going to go with an HD5450 (PCI), for obvious reasons, but the HD4670 should be a bit more interesting...RussianE39 wrote:I have HP ZX6000 machine (cousin of rx2600 server) and after some little tricks I was able to run Radeon HD 4650 AGP card in it. Main problem would be lack of any Molex connector to feed modern card VRM's, if card needs only +12V for their supply, you could tap to CPU VRM's feed line. If you card also needs +5V, things would be more tricky, althogh my particular 4650 from gigabyte won't need any +5V from molex supply. I can report, that KMS and DRI partially works with this card.