De toute façon pour envoyer des commandes à la carte SD à partir de l'espace utilisateur Linux?
J'ai une Debian 7.0 Linux 3.2 incorporé BRAS TI AM335x système. C'est une coutume conseil d'administration, nous avons développé, mais la section carte SD au moins est le même que le conseil de développement. Il y a quelques spécifiques au fournisseur de la carte SD commandes j'aimerais question à la carte, à savoir la lecture de certaines données à l'aide de CMD56.
Est-il possible d'envoyer des commandes à la carte SD de contrôleur et de lire la réponse à partir de l'espace utilisateur?
Fred, qu'est-ce que le pilote, responsable pour le travail avec la carte SD (contrôleur de vérifier
Je n'ai pas accès au système en ce moment (c'est dans le bureau), mais je suppose que sa carte SD standard pilote.
Il n'y a pas de "pilote standard". Il est de base standard SD/MMC sous-système dans le noyau de linux, et des dizaines de pilotes de contrôleur. Pouvez-vous ajouter quelques informations à votre question: exact BRAS puce/SoC/nom de la sd (contrôleur est intégré dans le SoC en général), la commande qui vous souhaitez envoyer vers la carte SD? Est-il SDIO ou de la carte SD? La version de SD standard est utilisé par la carte?
OK je vais affiner ma question quand je reçois accès au conseil d'administration le lundi.
merci à vous, des informations complémentaires (commande exacte CMD56 aka spécifiques au fournisseur GEN_CMD et TI docs) m'a aidé à faire les bons web de recherche et de trouver
dmesg
de sortie)?Je n'ai pas accès au système en ce moment (c'est dans le bureau), mais je suppose que sa carte SD standard pilote.
Il n'y a pas de "pilote standard". Il est de base standard SD/MMC sous-système dans le noyau de linux, et des dizaines de pilotes de contrôleur. Pouvez-vous ajouter quelques informations à votre question: exact BRAS puce/SoC/nom de la sd (contrôleur est intégré dans le SoC en général), la commande qui vous souhaitez envoyer vers la carte SD? Est-il SDIO ou de la carte SD? La version de SD standard est utilisé par la carte?
OK je vais affiner ma question quand je reçois accès au conseil d'administration le lundi.
merci à vous, des informations complémentaires (commande exacte CMD56 aka spécifiques au fournisseur GEN_CMD et TI docs) m'a aidé à faire les bons web de recherche et de trouver
mmc-tools
et MMC_IOC_CMD
générique MMC/SD ioctl pour envoyer des commandes personnalisées dans linux. Dans windows, il est semblable DeviceIoControl(drv_hdl, IOCTL_SFFDISK_DEVICE_COMMAND,
avec SDCMD_DESCRIPTOR sdCmdDescriptor
struct.OriginalL'auteur fred basset | 2014-04-26
Vous devez vous connecter pour publier un commentaire.
Votre pilote est
omap_hsmmc
selon http://processors.wiki.ti.com/index.php/AM335x_MMC/SD_Driver%27s_Guide quelques infos aussi dans https://www.kernel.org/doc/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txtAprès quelques web la recherche de SMART en charge la surveillance dans les cartes sd, je reçois la requête de recherche
mmc smartctl
(parce quesmartctl
est le nom de SMART utilitaire de surveillance *ATA sous Linux, etmmc
est le sous-système du noyau de mettre en œuvre MMC, SD, SDHC, les cartes et les contrôleurs. J'ai trouvé le bug rempli contre certains PC mobile OS, https://code.google.com/p/chromium/issues/detail?id=315380 par Gwendal GrignouIl sonne comme le
mmc-utils
il l'outil de choix pour mettre en application INTELLIGENTE pour les cartes SD. Il est à la maison git demmc-utils
sur kernel.org: http://git.kernel.org/cgit/linux/kernel/git/cjb/mmc-utils.git/tree/Je ne vois aucun "INTELLIGENTS" ici, mais la mmc-utils/mmc_cmds.c a le code pour envoyer des commandes personnalisées à la carte à l'aide
ioctl(fd, MMC_IOC_CMD, (struct mmc_ioc_cmd*) &ioctl_data)
avec fd pointant à corrigermmcblkX
appareil (j'espère que cela fonctionne avec la plupart des SD des contrôleurs). Code par Johan RUDHOLM (à partir de st-ericsson, 2012, la GPLv2):De la documentation et des exemples pour MMC_IOC_CMD ont été publiés dans la LKML par Shashidhar Hiremath au 20 Déc-14:54 2011 "[PATCH 1/1] mmc: l'Utilisateur de l'Application pour les essais SD/MMC Commandes et extra IOCTL Commande pour carte MMC reset"
Officiel userAPI (uapi) pour
struct mmc_ioc_cmd
est source de linux arbreinclude/uapi/linux/mmc/ioctl.h
:Je suis heureux de vous aider, et espère que cela va fonctionner.
J'ai enfin pu obtenir le temps de travailler sur ce sujet et la CMD56 via mmc-utils approche travaillé.
Fred, toute chance que vous pourriez mettre votre mmc-utils fork sur github?
OriginalL'auteur osgx
La façon la plus simple est mmap l'espace de la mémoire de SD contrôleur,puis la commande d'écriture de la sd du contrôleur de la fiche de données de contrôleur.
J'en suis sûr. si il n'y a pas d'exemple existant,mais il est facile de le faire vous-même.
Ezio, vous l'avez déjà fait cela? Quel fichier je doit mmap? Ce décalage? De quoi écrire et où?
Vous peut mal comprendre mon idée.À mon avis, vous mmap sd contrôleur de l'espace d'adresse de l'adresse de mémoire(reportez-vous à l'homme mmap) pas un fichier.Le décalage et la place pour écrire est basé sur la sd du contrôleur de la feuille de données (vous pouvez consulter la carte sd pilote)
Ezio, Comment puis-je trouver l'adresse de contrôleur de l'espace à partir du programme utilisateur? Je sais
man mmap
. Mais quel fichier dois-je mmap, et ce décalage? Je pense que votre post n'est pas de vraie réponse, et le poste peut être downvoted.OriginalL'auteur Ezio
Oui, il ya des fournisseurs spécifiques de la carte SD commandes que vous pouvez lire SMART données de la carte SD de votre appareil à l'aide de CMD56.
L'Hôte doit être en mesure de soutenir le vendeur de la commande “CMD61” et “CMD56”. Et il doit avoir 5ms retard pour FW temps occupé entre la question CMD61 et CMD56.
Paul.

OriginalL'auteur Paul Son