Amanero supporta DSD nativo sotto Linux

Pagina 1 di 3 1 2 3 ultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1
    Moderatore L'avatar di bibo01
    Registrato
    Oct 2010
    Messaggi
    4,591
    configurazione

    Predefinito Amanero supporta DSD nativo sotto Linux

    Sembra che bisogna aggiornare il firmware.

    http://www.amanero.com/drivers/nativeDSD.txt

    To enable/disable native DSD on Combo384 an USB Control request must be sent to endpoint 0. This procedure is supported on all firmware versions.
    On firmware_1099rc1 an USB alternate settings "2" with a native DSD endpoint is supported.

    The control request is of type Vendor to the Device.

    bmRequestType=0x40,
    bRequest=0xB1,
    wLength=sizeof( struct VAD_DATA ),
    Data is a variable of type struct VAD_DATA

    struct VAD_DATA {

    unsigned int command;
    unsigned int length;
    unsigned int buffer[64];
    };


    To enable native DSD
    command=0x8000
    length=0
    buffer=undefined values

    To disable native DSD
    command=0x10000
    length=0
    buffer=undefined values
    Ultima modifica di bibo01 : 02-03-2016 a 02:04

  2. #2
    Moderatore L'avatar di bibo01
    Registrato
    Oct 2010
    Messaggi
    4,591
    configurazione

    Predefinito

    Ho chiesto a Domenico di Amanero la procedura per l'aggiornamento. Speriamo sia fattibile tramite il suo ConfigTool.exe per il firmware...
    Vi tengo aggiornati.

  3. #3
    Moderatore L'avatar di bibo01
    Registrato
    Oct 2010
    Messaggi
    4,591
    configurazione

    Predefinito

    Ho parlato poco fa con Domenico di Amanero.
    I comandi da lui pubblicati (ha detto che nel testo pubblicato aggiungerà il VID e il PID della scheda generica) devono essere aggiunti ad ALSA.
    Per cui ora vorrei contattare il manutentore di ALSA.
    Che voi sappate è "lintweaker"? Qual'è la maniera più semplice per contattarlo?
    https://github.com/lintweaker/xmos-native-dsd

  4. #4

  5. #5

  6. #6
    Moderatore L'avatar di bibo01
    Registrato
    Oct 2010
    Messaggi
    4,591
    configurazione

    Predefinito

    Grazie!
    vediamo che risponde...

  7. #7
    kibibyte
    Registrato
    Apr 2014
    Messaggi
    269

    Predefinito

    Alsa è formato da due parti: alcuni moduli per il kernel + le applicazioni relative.
    Di solito funziona così: la modifica, se funziona, viene inviata "upstream" e sarà disponibile in uno dei prossimi kernel (a meno che non compili un kernel con la patch...).

  8. #8
    tebibyte L'avatar di UnixMan
    Registrato
    Sep 2013
    Messaggi
    2,529
    configurazione

    Predefinito

    Originariamente inviato da bibo01
    I comandi da lui pubblicati (ha detto che nel testo pubblicato aggiungerà il VID e il PID della scheda generica) devono essere aggiunti ad ALSA.
    Originariamente inviato da hifi25nl
    Di solito funziona così: la modifica, se funziona, viene inviata "upstream" e sarà disponibile in uno dei prossimi kernel
    ovviamente la "strada maestra" è quella. Non di meno, aggiungere gli ID di una scheda (compatibile) al driver esistente è banale e, nell'attesa che la cosa entri a far parte dei sorgenti standard, non è difficile farlo in proprio.
    Ciao, Paolo.

    «Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee.»

  9. #9
    Moderatore L'avatar di bibo01
    Registrato
    Oct 2010
    Messaggi
    4,591
    configurazione

    Predefinito

    Originariamente inviato da UnixMan
    ovviamente la "strada maestra" è quella. Non di meno, aggiungere gli ID di una scheda (compatibile) al driver esistente è banale e, nell'attesa che la cosa entri a far parte dei sorgenti standard, non è difficile farlo in proprio.
    Mi dici per favore come?!

  10. #10
    kibibyte
    Registrato
    Apr 2014
    Messaggi
    269

    Predefinito

    Però non basta. Bisogna modificare/sound/usb/quirks.c nella sorgente del kernel per specificare l'alternate settings "2"
    Non è chiaro inoltre come inserire il comando per abilitare DSD nativo
    Esempio:

    codice:
    /* XMOS based USB DACs */
    	switch (chip->usb_id) {
    	case USB_ID(0x20b1, 0x3008): /* iFi Audio micro/nano iDSD */
    	case USB_ID(0x20b1, 0x2008): /* Matrix Audio X-Sabre */
    	case USB_ID(0x20b1, 0x300a): /* Matrix Audio Mini-i Pro */
    	case USB_ID(0x25ce, 0x001f): /* Mytek Brooklyn DAC */
    		if (fp->altsetting == 2)
    			return SNDRV_PCM_FMTBIT_DSD_U32_BE;
    		break;
    
    	case USB_ID(0x20b1, 0x000a): /* Gustard DAC-X20U */
    	case USB_ID(0x20b1, 0x2009): /* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
    	case USB_ID(0x20b1, 0x2023): /* JLsounds I2SoverUSB */
    	case USB_ID(0x20b1, 0x3023): /* Aune X1S 32BIT/384 DSD DAC */
    		if (fp->altsetting == 3)
    			return SNDRV_PCM_FMTBIT_DSD_U32_BE;
    		break;
    	default:
    		break;
    	}

Pagina 1 di 3 1 2 3 ultimo

Informazioni Thread

Users Browsing this Thread

Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 ospiti)

Regole d'invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
nexthardware.com - © 2002-2022