Re: Masquage ressources PCI dans le noyau linux

トップ ページ

このメッセージに返信
著者: Frédéric
日付:  
To: guilde
題目: Re: Masquage ressources PCI dans le noyau linux
Le mercredi 24 octobre 2012, jean-francois simon a écrit :

> je pense que tu fais tu allusion a ceci?
> "....Both PCI I/O and PCI Memory must be allocated to a device in a
> naturally aligned way. For example, if a device asks for 0xB0 of PCI
> I/O space then it must be aligned on an address that is a multiple of
> 0xB0. In addition to this, the PCI I/O and PCI Memory bases for any
> given bridge must be aligned on 4K and on 1Mbyte boundaries
> respectively. Given that the address spaces for downstream devices
> must lie within all of the upstream PCI-PCI Bridge's memory ranges for
> any given device, it is a somewhat difficult problem to allocate space
> efficiently...."


Exctement (on a les même lectures...)

> le vme est big endian, comme les cpu PowerPc. le swap c'est pour quand
> ton cpu est un x86. Le swapping est fait a la volee ds ce cas. Mais
> est ce qu'il n' y a pas un bit ds l'espace de configuration PCI de la
> carte vme pour devalider le swapping?


Ben, si c'est le cas, ce n'est pas documenté. Mais on est arrivé à la même conclusion.

D'autant plus que sur la carte précédente, c'est exactement le même bridge. En tout cas, même
ids. Et comme il n'a qu'ne seule ressource, soit ce n'est pas tout à fait le même hard, soit il
y a effectivement un truc qui permet de désactiver les autres. Mais ça se fait peut-être lors
de la fabrication. Va savoir.

> j'irai voir ici: http://lxr.linux.no/linux+v3.6.3/drivers/pci/quirks.c


Très intéressant ! Je me disais justement que ce serait bien d'avoir des hooks dans le noyau...
Visiblement, ça existe :o)

> Une solution c'est d'utiliser un kernel linux64bit. Cela suppose que
> la carte PPC est en 64bit, et la carte pci-vme supporte aussi le 64b,
> bien sur. Dans ce cas il n'y a plus de probleme d'allocation de
> resources: la carte pci-vme sera mappee au dela des premiers 4Gbytes.


Euh, là, ça va dépasser nos compétences. On utilise une chaine de cross-compilation, avec un
BSP spécial. S'il faut tout se refarcir !!! Et on n'a pas les sous pour racheter une version
plus récente :o/

--
Frédéric