# PCI_MSI required for ati-drivers [SOLVED]

## mounty1

Emerging ati-drivers-8.582 fails with

```
You need PCI_MSI enabled in order to build ati-drivers
```

However, the symbol PCI_MSI depends on the symbol X86_64 which is not enabled.  I have a 32 bit system on an AMD Turion CPU so presumably the build is detecting that the CPU is 64 bit and is assuming that X86_64 is set.  It seems most inadvisable to modify /usr/src/linux/.config directly but X86_64 cannot be set via make menuconfig and I presume that that is intented.

So, how to spoof the ati-drivers build into not expecting PCI_MSI to be set ?

----------

## albright

FWIW, I have a 32 bit intel dual core and the 

```
[*] Message Signaled Interrupts (MSI and MSI-X)
```

option is available and, needless to say, I do not have CONFIG_X86_64

set.

What kernel are you (I am 2.6.28r3tuxonice)?

----------

## krinn

my kernel is 32bits and i can select PCI_MSI.

I don't have an ATI cards, but i suppose not all ATI owners are running a 64bits kernel...

You seems wrong, recheck your kernel options

----------

## mounty1

Thanks for the answers so far.  I was looking at the Selected by line rather than Depends on but there is still a problem.  Can I start with this screenshot from make menuconfig, "/PCI_MSI":

```
 .config - Linux Kernel v2.6.28-tuxonice Configuration

 ──────────────────────────────────────────────────────────────────────────────

  ┌──────────────────────────── Search Results ─────────────────────────────┐

  │ Symbol: PCI_MSI [=n]                                                    │

  │ Prompt: Message Signaled Interrupts (MSI and MSI-X)                     │

  │   Defined at drivers/pci/Kconfig:8                                      │

  │   Depends on: PCI && ARCH_SUPPORTS_MSI                                  │

  │   Location:                                                             │

  │     -> Bus options (PCI etc.)                                           │

  │   Selected by: AMD_IOMMU && X86_64 && PCI && ACPI                       │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  │                                                                         │

  ├─────────────────────────────────────────────────────────────────(100%)──┤

  │                                < Exit >                                 │

  └─────────────────────────────────────────────────────────────────────────┘
```

But ARCH_SUPPORTS_MSI depends on X86_IO_APIC and X86_LOCAL_APIC, both of which are N and not modifiable via make menuconfig.  Is it possible to do anything about that ?  This is with tuxonice 2.6.28 but 2.6.28-r3 is the same. Incidentally, I'm not using 2.6.28-r3 because it produces a kernel of about 1.0 MiB (2.6.28:  1.6 MiB) which crashes on boot.  That's a separate problem however.

----------

## albright

Well, here's mine just so you can see. I don't know what's going

on in your kernel   :Question:  I guess you already checked that all the

needed pci options are selected and the right cpu architecture 

(I don't know what that would be for turion).

```
Symbol: PCI_MSI [=y]                                                                                                                    

  │ Prompt: Message Signaled Interrupts (MSI and MSI-X)                                                                                     

  │   Defined at drivers/pci/Kconfig:8                                                                                                      

  │   Depends on: PCI && ARCH_SUPPORTS_MSI                                                                                                  

  │   Location:                                                                                                                            

  │     -> Bus options (PCI etc.)                                                                                                           

  │   Selected by: AMD_IOMMU && X86_64 && PCI && ACPI                                                                                       

  │                                                                                                                                        

  │                                                                                                                                       

  │ Symbol: ARCH_SUPPORTS_MSI [=y]                                                                                                          

  │   Selected by: PCI && X86_LOCAL_APIC && X86_IO_APIC   
```

----------

## mounty1

So I set CONFIG_X86_UP_APIC via make menuconfig, then set CONFIG_X86_IO_APIC and CONFIG_X86_LOCAL_APIC by editing /usr/src/linux/.config but loading up make menuconfig afterwards to make sure the settings weren't removed.  However, X won't start at all now and /var/log/Xorg.0.log has

```
(EE) fglrx(0): Unknown EDID version 0
```

Does the standard X distribution support ATI cards now ?  The machine is used for programming, email and lighting surfing, so super-fast graphics are not so important.

----------

## pappy_mcfae

Look through one of my kernel seeds. You will see that option turned on.

Blessed be!

Pappy

----------

## mounty1

X does start via startx so it looks like the problem is actually in startkde (which is in the latest emerge --sync that I'm just picking up).  startx does report the unknown EDID version but it doesn't stop it working.

Thanks to all for their help.

----------

## tuber

BTW, I think if you also enable CONFIG_X86_UP_IOAPIC (IO-APIC support on uniprocessors under Processor type and features), then you won't need to muck with .config by hand.

----------

## mounty1

Well, maybe that is so but it wasn't detailed in the help.  Anyway, I did it manually and it all seems to be alright now.  Thanks to all for their help.

----------

## wuschel41

i had the same problem..

 *tuber wrote:*   

> BTW, I think if you also enable CONFIG_X86_UP_IOAPIC (IO-APIC support on uniprocessors under Processor type and features), then you won't need to muck with .config by hand.

 

works fine, ty

----------

