From owner-freebsd-drivers@freebsd.org  Thu May 23 15:19:51 2019
Return-Path: <owner-freebsd-drivers@freebsd.org>
Delivered-To: freebsd-drivers@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7DB115ADA09
 for <freebsd-drivers@mailman.ysv.freebsd.org>;
 Thu, 23 May 2019 15:19:50 +0000 (UTC)
 (envelope-from kosio.dimitrov@gmail.com)
Received: from mail-lf1-x136.google.com (mail-lf1-x136.google.com
 [IPv6:2a00:1450:4864:20::136])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 server-signature RSA-PSS (4096 bits)
 client-signature RSA-PSS (2048 bits) client-digest SHA256)
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id A959470D94
 for <freebsd-drivers@freebsd.org>; Thu, 23 May 2019 15:19:49 +0000 (UTC)
 (envelope-from kosio.dimitrov@gmail.com)
Received: by mail-lf1-x136.google.com with SMTP id x132so4724336lfd.0
 for <freebsd-drivers@freebsd.org>; Thu, 23 May 2019 08:19:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=PJXBnalO7ugHZHf+0sNI5BOrgYHelsjDXaiYunT6ZqI=;
 b=G2Gj743BMT0BFkRVi1v3QpQl/9j5e48TE9UV553r+4C0wjR7ld9Bzs3kMGhcKxGQQp
 RUatvKrcuMEOjETYUERfto48iaGwv2fEXtZDHUDWLq9Lzdrc6OCuQ8AeOxyWSdrnxZSS
 7GqvXe9E1iq2+P1hBfGr3Hqp1m9b/OF2rd3yxVuYO91O4ao/uV6BxYuzkjKP0xy65B37
 gyMku2VkYege00RVNtDbUwLJCfb4EDCUmA53ksTvapUVJ1DML+m6gAjuPDnXTDApGuDX
 uoFVoazPH2JZbb+LYAMGkn/cHomEZJhE5RmdKz/OhUNrbvI+UQHFyF7zx11tfwWZn4/5
 I7Pg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=PJXBnalO7ugHZHf+0sNI5BOrgYHelsjDXaiYunT6ZqI=;
 b=baCdYocd9He6q4V0uGciaOYSM/Uw0nLb43Sv7vOthWXBHBedCqdTur0joLgl9aO9aD
 Cgf/X8bjSsfpdcKyqpWcuifpwlp8Cy2JvlIDBvulxf2wvYyeAT2O0gG0xFy4LZnntrzH
 cB+xrxH2PH+AkzK7GS3R1B8lu7pDYjblZJSm8j5X2Tgx5GCh1vrITAXNcVp8AvzTv0ZJ
 vvjdjC1k5bXRk6rwhB5U5P8vPbcgr5WKYtYmZyGfARrxu6SJkjSRoa88Il0W5CxCxHdF
 XXwYjKzF1NzKUdgw+qPvftdnHb5u9wNVhZ1WqT3hFsbdNiEvofMe4/WS5Kfh2Dn6mFvY
 8NDg==
X-Gm-Message-State: APjAAAVOi2T3Z7ZgSQWkwKlkoMLT4JCLxWsBtxNb8LWayS9EUoDvPQgt
 aJcy6wVxG+UlCUvNlNo9QTVb4iGiZO27EDE8gE8=
X-Google-Smtp-Source: APXvYqwvXTwy3wqYJsXA4pYWNs2be3vYIvgvHm8/e3k8mH1pBrgyjWM+YmeeQ9sA4QmBX8wNL1iVvuR1okIgQa2S8BE=
X-Received: by 2002:ac2:4899:: with SMTP id x25mr42053765lfc.44.1558624787046; 
 Thu, 23 May 2019 08:19:47 -0700 (PDT)
MIME-Version: 1.0
References: <20190523162305.b2d95a12fc978a77eb4ccc5d@mail.ru>
In-Reply-To: <20190523162305.b2d95a12fc978a77eb4ccc5d@mail.ru>
From: Konstantin Dimitrov <kosio.dimitrov@gmail.com>
Date: Thu, 23 May 2019 18:19:38 +0300
Message-ID: <CAF0Ff2mCHYvN3V24zP_U+EwSrkh15p9xqd8QgG7eFDB=5eQtDA@mail.gmail.com>
Subject: Re: New full-featured driver for ESI Juli@ PCI soundcard
To: fesse <fesse@mail.ru>
Cc: freebsd-drivers@freebsd.org
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: A959470D94
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=gmail.com header.s=20161025 header.b=G2Gj743B;
 dmarc=pass (policy=none) header.from=gmail.com;
 spf=pass (mx1.freebsd.org: domain of kosiodimitrov@gmail.com designates
 2a00:1450:4864:20::136 as permitted sender)
 smtp.mailfrom=kosiodimitrov@gmail.com
X-Spamd-Result: default: False [-6.82 / 15.00]; TO_DN_SOME(0.00)[];
 R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36];
 FREEMAIL_FROM(0.00)[gmail.com]; DKIM_TRACE(0.00)[gmail.com:+];
 RCPT_COUNT_TWO(0.00)[2];
 DMARC_POLICY_ALLOW(-0.50)[gmail.com,none];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 FREEMAIL_TO(0.00)[mail.ru]; FROM_EQ_ENVFROM(0.00)[];
 RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US];
 TAGGED_FROM(0.00)[];
 DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain];
 PREVIOUSLY_DELIVERED(0.00)[freebsd-drivers@freebsd.org];
 TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_IN_DNSWL_NONE(0.00)[6.3.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org
 : 127.0.5.0]; 
 IP_SCORE(-2.85)[ip: (-9.70), ipnet: 2a00:1450::/32(-2.20), asn: 15169(-2.28),
 country: US(-0.06)]; RCVD_COUNT_TWO(0.00)[2]
X-BeenThere: freebsd-drivers@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Writing device drivers for FreeBSD <freebsd-drivers.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-drivers>, 
 <mailto:freebsd-drivers-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-drivers/>
List-Post: <mailto:freebsd-drivers@freebsd.org>
List-Help: <mailto:freebsd-drivers-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-drivers>, 
 <mailto:freebsd-drivers-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 23 May 2019 15:19:51 -0000

hi Aleksei,

that's great and I am very glad to see this! Also, I like that it
seems you want to make it perfect and that's why let me comment a
little bit on the hardware architecture as per your source code:

>     * 5: pulled up to ground with resistor on analog board, may be analog board detector, unused

it's not "maybe", but for sure and '0' means Analog Daughter Board is
present, '1' means it's not present

>     * 6: UNKNOWN - if You know what its function is, please let me know, seems to be always LOW

that's not used, if my memory serves me right, it's not even connected
on the board. so, it's totally irrelevant.

>     * 7: UNKNOWN - if You know what its function is, please let me know, seems to be always LOW

that's most interesting, that GPIO signal is to deal with MCKO1 signal
of AK4114. I am not sure how that exactly works on ESI Juli@, but on
another ESI card Prodigy192, you can read comment about it in ALSA
"prodigy192.c" - by "FPGA" ALSA guys actually mean the CPLD found on
Juli@ as well:

"both MCKO1 and MCKO2 of ak4114 are fed to FPGA, which
* outputs master clock to SPMCLKIN of ice1724.
* Experimentally I found out that only a combination of
* OCKS0=1, OCKS1=1 (128fs, 64fs output) and ice1724 -
* VT1724_MT_I2S_MCLK_128X=0 (256fs input) yields correct
* sampling rate. That means the the FPGA doubles the
* MCK01 rate."

So, without some experiments it could only be speculated how GPIO7
affects MCKO1 signal of AK4114 on Juli@. I really don't know and it's
up to investigation, but one possibility is that for sample rates
lower than 96kHz, they set AK4114 OCKS0 to '0'  and OCKS1 to '0' and
maybe in such cases GPIO7 set to '1' is the intended settings or
something like that. Anyway, someone with Juli@ and proper equipment
needs to see what's going on with the mentioned signals with when
GPIO7 is '0' and when it's set to '1', if anything...

best wishes,
konstantin

On Thu, May 23, 2019 at 4:24 PM fesse via freebsd-drivers
<freebsd-drivers@freebsd.org> wrote:
>
> Hi everyone!
>
> I want to share with the community a new driver for ESI Juli@ PCI soundcard.
> FreeBSD already offers support for such card, but this support is very limited and device is almost unusable.
> Since I like high-quality audio hardware (like Juli@ cards), time was spent writing a new, full-featured driver for it.
> The proposed driver supports playback, recording, MIDI, pass-through channel, clock control, ACPI...
> Also, the driver can be controlled with convenient GUI control panel, as through sysctl(8).
>
> I hope this work was done for a reason and will be useful to someone else.
>
> I have been using this driver successfully for some time, but there may be bugs, so more testing is required.
> It would be great if there were those who wanted to download, test it, and share results.
>
> Driver link: https://sndbro.ru/snd_juliet?lang=en
> Control panel link: https://sndbro.ru/mixate-juliet?lang=en
> _______________________________________________
> freebsd-drivers@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-drivers
> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org"