2014-05-12 2 views
0

J'utilise linux sur powerpc p1020, et Freescale fournit un système complet incluant u-boot, linux. Le système n'active pas la vérification ecc par défaut. J'essaie d'activer cette fonction en modifiant le registre ddr_sdram_cfg de p1020, mais je failed.In linux, je pouvais seulement mmap enregistrer l'espace mémoire avec les permissions PROT_READ et faire une panne de linux si ajouter des permissions PROT_WRITE. Puis j'essaie d'activer ecc dans u-boot, mais j'ai échoué aussi, le u-boot s'arrête si j'utilise mw pour modifiez ddr_sdram_cfg. Quelqu'un pourrait-il répondre à ce problème? Merci à tous ceux qui m'aident.Comment activer l'ecc de ddr sous Linux?

+0

Cela dépendra du contrôleur de mémoire et de la mémoire DIMM elle-même. La plupart des conceptions de FSL utilisent également le MEMC de FSL, ce qui facilite le retour de code de port d'autres machines vers votre plate-forme. @ Joe Kul déjà mentionné ci-dessous, vous ne devriez pas essayer d'activer ECC dans le noyau. Faites ceci en u-boot très tôt. Définissez les paramètres ECC en même temps que u-boot configure MEMC (avant que u-boot soit déplacé sur RAM). Faites-le une fois, faites-le tôt. –

Répondre

0

La réponse dépendra de votre plate-forme cible, par exemple vous pouvez avoir P1020RDB, ou autre chose. En supposant que SDRAM ECC puisse être activé sur la plate-forme (ceci peut inclure une RAM supplémentaire pour contenir des bits de syndrome, par exemple un chemin de données de 36 bits), l'ECC doit être activé au moment de l'initialisation du contrôleur SDRAM. Il ne peut pas être activé au moment de l'exécution alors que la SDRAM est déjà utilisée. Une étude approfondie du manuel de référence de la puce, de la documentation de la plate-forme cible et (idéalement) de la source d'amorçage BSP cible révélera tout ce qui est nécessaire.