From: Clemens Ladisch <clemens@ladisch.de>
To: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
Etilem <contact@etilem.net>
Subject: Re: probe issue for Dice/OXFW drivers
Date: Wed, 12 Aug 2015 11:20:49 +0200 [thread overview]
Message-ID: <55CB0FF1.1040100@ladisch.de> (raw)
In-Reply-To: <55CA9C07.40702@sakamocchi.jp>
Takashi Sakamoto wrote:
> Recently, I received an issue from a user of Mackie Onyx-i series.
> According to the user, snd-dice is not applied to his Dice model.
> [...] According to the log, I cannot find the first
> transaction which snd-dice performs. Additionally, no error messages in
> syslog.
There are some checks performed before the first actual transaction.
The kernel loads the driver if an entry in dice_id_table[] matches, i.e.,
if version==1. This values indeed is in the unit directory:
> ROM header and bus information block
> -----------------------------------------------------------------
> 400 0404f507 bus_info_length 4, crc_length 4, crc 62727
> 404 31333934 bus_name "1394"
> 408 e0008102 irmc 1, cmc 1, isc 1, bmc 0, cyc_clk_acc 0, max_rec 8 (512)
> 40c 000ff210 company_id 000ff2 |
> 410 01800af7 device_id 1001800af7 | EUI-64 000ff21001800af7
>
> root directory
> -----------------------------------------------------------------
> 414 000639d3 directory_length 6, crc 14803
> 418 03000ff2 vendor
> 41c 8100000a --> descriptor leaf at 444
> 420 17000006 model
> 424 8100000d --> descriptor leaf at 458
> 428 0c0087c0 node capabilities per IEEE 1394
> 42c d1000001 --> unit directory at 430
>
> unit directory at 430
> -----------------------------------------------------------------
> 430 00045246 directory_length 4, crc 21062
> 434 12000ff2 specifier id
> 438 13000001 version
> 43c 17000006 model
> 440 8100000b --> descriptor leaf at 46c
The dice_interface_check() function then makes other checks:
/*
* Check that GUID and unit directory are constructed according to DICE
* rules, i.e., that the specifier ID is the GUID's OUI, and that the
* GUID chip ID consists of the 8-bit category ID, the 10-bit product
* ID, and a 22-bit serial number.
*/
These values are correct, except for the category ID.
The driver already has an category ID exception for Weiss devices.
It would be possible to add another exception, but given that firmware
writers apparently like to change this value without good reason, it
might be a better idea to just remove the category ID check.
Regards,
Clemens
next parent reply other threads:[~2015-08-12 9:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <55CA9C07.40702@sakamocchi.jp>
2015-08-12 9:20 ` Clemens Ladisch [this message]
2015-08-17 15:30 ` probe issue for Dice/OXFW drivers Takashi Sakamoto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55CB0FF1.1040100@ladisch.de \
--to=clemens@ladisch.de \
--cc=alsa-devel@alsa-project.org \
--cc=contact@etilem.net \
--cc=o-takashi@sakamocchi.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox