Skip to content

Home > GNU/Linux > Configuration du noyau pour le support des chipsets HPT

Configuration du noyau pour le support des chipsets HPT

Thursday 2 October 2003

Voici comment j’ai effectué une mise à jour de mon système pour utiliser le chipset HPT372 alors non supporté par le dernier noyau coompilé par Mandrake. J’espère que cela sera utilisable pour d’autres révisions du chipset.

Configuration du chipset RAID

Voici ce qui a fonctionné chez moi après l'installation de la distribution Mandrake 9.0, en suivant les explications décrites sur le site du fabricant, rubrique support->drivers->HPT372.

Il faut compiler un nouveau noyau (plus de précisions sur le site de Mandrake User). Voici le détail de la procédure à suivre :

Note pour les versions plus récentes : le module est (était ?) compilé avec gcc 2.9.x. La procédure décrite ci-dessous fonctionne avec le noyau fourni dans la distribution Mandrake 9.0, mais les versions ultérieures risquent de nécessiter une nouvelle version du pilote.

  1. cd /usr/src/linux-2.4.19-16mdk
  2. Editer le fichier drivers/ide/ide-pci.c : enlever les lignes 957 à 977 en tenant compte des accolades. La partie à extraire est copiée ci-dessous.
    {
    .devid = DEVID_HPT34X,
    .name = "HPT34X",
    .init_chipset = PCI_HPT34X,
    .ata66_check = NULL,
    .init_hwif = INIT_HPT34X,
    .dma_init = NULL,
    .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
    .bootable = NEVER_BOARD,
    .extra = 16,
    },{
    .devid = DEVID_HPT366,
    .name = "HPT366",
    .init_chipset = PCI_HPT366,
    .ata66_check = ATA66_HPT366,
    .init_hwif = INIT_HPT366,
    .dma_init = DMA_HPT366,
    .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
    .bootable = OFF_BOARD,
    .extra = 240,
    }
    Remarque : ne pas enlever autre chose de ce fichier, sinon, vous risquez de compromettre la reconnaissance de votre matériel.
  3. copier le fichier .config original de Mandrake en config_orig si vous souhaitez conserver la configuration du noyau d'origine de la distribution
  4. make mrproper
  5. make xconfig (vous devez copier le fichier config_orig en .config si vous voulez conserver les paramètres de Mandrake)
  6. Editer le fichier Makefile pour changer le numéro de version, ainsi si vous vous êtes trompés, vous gardez la possibilité de redémarrer avec l'ancien noyau
  7. make dep
  8. make clean
  9. make bzImage (allez siffloter sur la terrasse)
  10. make modules (allez prendre un café)
  11. make modules_install
  12. installkernel 2.4.19-16
  13. exécuter /sbin/lilo -v pour vérifier que l'entrée pour le nouveau noyau a été correctement ajoutée
  14. voici l'étape importante : décompressez le fichier hpt3xx-opensource-v13.tgz téléchargé sur le site du fabricant dans un répertoire temporaire (/tmp)
  15. make KERNELDIR=/usr/src/linux-2.4.19-16mdk/
  16. copier le module hpt37x2.o ainsi créé dans /lib/modules/2.4.19-16
  17. rajouter le nom du module dans /etc/modules : echo hpt37x2 >> /etc/modules
  18. depmod -a
  19. redémarrez avec le noyau que vous venez de créer. Durant la phase de reconnaisance du matériel, vous devriez apercevoir :
    Device Driver for HPT37x2 ATA RAID Controller
    Version 1.3, Compiled Dec 3 2002 23:33:28
    Found Controller: HPT372 UDMA/ATA133 RAID Controller
    scsi1 : hpt37x2

Les disques situés sur le controlleur sont maintenant accessibles par l'intermédiaire des devices scsi /dev/sdaX, ...
Vous pouvez les monter facilement avec diskdrake.
Cela permet aussi d'ajouter les entrées dans lilo sans provoquer d'erreurs.

Comment on this article