logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[c][vusb] Vendor name oraz Device name, czy to się przydaje?

krdln 29 Gru 2010 13:47 1644 6
REKLAMA
  • #1 8928905
    krdln
    Poziom 13  
    Gdy korzystamy z V-USB, w pliku usbconfig.h możemy znaleźć taki fragment:
    #define USB_CFG_VENDOR_NAME     'o', 'b', 'd', 'e', 'v', '.', 'a', 't'
    #define USB_CFG_VENDOR_NAME_LEN 8
    /* These two values define the vendor name returned by the USB device. The name
     * must be given as a list of characters under single quotes. The characters
     * are interpreted as Unicode (UTF-16) entities.
     * If you don't want a vendor name string, undefine these macros.
     * ALWAYS define a vendor name containing your Internet domain name if you use
     * obdev's free shared VID/PID pair. See the file USB-IDs-for-free.txt for
     * details.
     */
    #define USB_CFG_DEVICE_NAME     'M', 'o', 'u', 's', 'e'
    #define USB_CFG_DEVICE_NAME_LEN 5
    /* Same as above for the device name. If you don't want a device name, undefine
     * the macros. See the file USB-IDs-for-free.txt before you assign a name if
     * you use a shared VID/PID.
     */


    Z tym, że w linuksie np. lsusb (nawet z opcją -v) tych nazw nie pokazuje, co sprawia, że są dla mnie zupełnie nieprzydatne. Sprawdzałem zarówno dla zarezerwowanych par ID oraz dla nieużywanych. Efekt jest np. taki:
    Bus 002 Device 104: ID 16c0:05dc VOTI shared ID for use with libusb
    Bus 002 Device 105: ID 0666:0002


    Czy robię coś źle, jeśli chodzi o urządzenie? Tzn., czy zdefiniowanie tych makr powinno wystarczyć? Natomiast jeśli robię dobrze, to, czy windows wykorzystuje i wyświetla w jakimś wygodnym miejscu takie informacje o urządzeniu, czy też ufa tylko własnym danym? Bo jeśli nie, to po co w ogóle takie coś się definiuje? :/

    [edit]
    Sprawdziłem za pomocą GET_DESCRIPTOR, te napisy tam siedzą. Więc nie jest to raczej wina urządzenia. Czyli nie trafiłem trochę z działem, a teraz za bardzo nie mogę przenieść...

    PS. Jak się robi, żeby było napisane „dodano po ...”? Widzę to często, ale za bardzo nie wiem, jak w ten sposób edytować posty.
  • REKLAMA
  • #2 8933050
    Nagus
    Poziom 27  
    A jesteś pewien że 'lsusb -v' tego nie podaje? W polach iManufacturer/iProduct to się nie pojawia?
    Te elementy deskryptora są konieczne w takich projektach jak te oparte na vusb. Różne projekty korzystają z tego samego VID/PID i rozróżnia się je właśnie po deskryptorach opisowych.
  • REKLAMA
  • #3 8933079
    fantom
    Poziom 31  
    cat /proc/bus/usb/devices

    ewentualnie

    cat /sys/bus/usb/devices
  • REKLAMA
  • #4 8933087
    krdln
    Poziom 13  
    No właśnie napisałem, że nawet z opcją -v tego nie wyświetla. Pola iManufacturer oraz iProduct są puste.

    O, właśnie spróbowałem z sudo:
    sudo lsusb -v -d 0666:0002

    i się udało :) Jednak nawet z sudo samo lsusb (bez -v) daje to samo. Trochę szkoda, że ta informacja nie jest „na wierzchu”

    Dodano po 34 [minuty]:

    fantom napisał:
    cat /proc/bus/usb/devices

    ewentualnie

    cat /sys/bus/usb/devices


    Pierwsze nie działa ani na Archu, ani na Ubuntu.
    Co do drugiego, to jest folder :] o dość skomplikowanej strukturze, więc na pewno nie cat.
  • REKLAMA
  • #6 8936398
    fantom
    Poziom 31  
    krdln napisał:

    Pierwsze nie działa ani na Archu, ani na Ubuntu.


    Mozesz nie miec wsparcia dla usbfs w jadrze lub nie zostal automatycznie zamontowany i trzeba to zrobic recznie ale lsusb z drugiej strony lsusb korzysta z /proc/bus/usb.

    krdln napisał:

    Co do drugiego, to jest folder :] o dość skomplikowanej strukturze, więc na pewno nie cat.


    Chodzilo bardziej o miejsce gdzie szukac ale skoro to dla ciebie zbyt skomplikowana struktura to moze generalnie daj sobie spokoj z USB ;-)
  • #7 8937119
    krdln
    Poziom 13  
    fantom napisał:

    krdln napisał:
    Co do drugiego, to jest folder :] o dość skomplikowanej strukturze, więc na pewno nie cat.
    Chodzilo bardziej o miejsce gdzie szukac ale skoro to dla ciebie zbyt skomplikowana struktura to moze generalnie daj sobie spokoj z USB ;-)

    Nie dam sobie spokoju! :D Napisałem dość, nie zbyt :] Po prostu nie miałem chwilowo czasu się zagłębiać. Wydawało mi się, że chcesz, by potraktować tego cata bezpośrednio.

    Co do usbfs, nie mam tego nigdzie zamontowanego i nie mam też wsparcia w jądrze, nawet jako moduł. Dam znać, jak przekompiluję.
REKLAMA