[From nobody Sat Aug 16 21:14:30 2008
Return-Path: &lt;andy@openmoko.com&gt;
Received: from mail.openmoko.org ([unix socket])
	by mail.openmoko.org (Cyrus v2.1.18-IPv6-Debian-2.1.18-5.1) with LMTP; 
	Tue, 15 Apr 2008 14:21:26 +0000
X-Sieve: CMU Sieve 2.2
Return-path: &lt;andy@openmoko.com&gt;
Received: from sita.openmoko.org ([88.198.124.203])
	by mail.openmoko.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32)
	(Exim 4.63) (envelope-from &lt;andy@openmoko.com&gt;) id 1Jlm2I-0008Mo-Er
	for graeme@imap.openmoko.org; Tue, 15 Apr 2008 14:21:26 +0000
Received: from mail.openmoko.org ([88.198.124.205])
	by sita.openmoko.org with esmtp (Exim 4.50) id 1Jlm23-0008Lm-IJ
	for graeme@openmoko.org; Tue, 15 Apr 2008 16:21:26 +0200
Received: from cpc1-nthc5-0-0-cust289.nrth.cable.ntl.com ([82.29.29.34]
	helo=meerkat.home.warmcat.com)
	by mail.openmoko.org with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32)
	(Exim 4.63) (envelope-from &lt;andy@openmoko.com&gt;)
	id 1Jlm23-0008Le-8r; Tue, 15 Apr 2008 14:21:11 +0000
Message-ID: &lt;4804B9CB.40500@openmoko.com&gt;
Date: Tue, 15 Apr 2008 15:20:59 +0100
From: Andy Green &lt;andy@openmoko.com&gt;
User-Agent: Thunderbird 2.0.0.12 (X11/20080407)
MIME-Version: 1.0
To: Graeme Gregory &lt;graeme@openmoko.org&gt;
CC: gta04@lists.internal.openmoko.org
References: &lt;20080415132946.GF31722@cimmeria&gt; &lt;4804B0D4.5080508@openmoko.com&gt;
	&lt;20080415134804.GG31722@cimmeria&gt; &lt;4804B479.60204@openmoko.com&gt;
	&lt;20080415140831.GI31722@cimmeria&gt;
In-Reply-To: &lt;20080415140831.GI31722@cimmeria&gt;
X-Enigmail-Version: 0.95.6
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Subject: Re: [gta04] GTA04 Bluetooth and VOIP
X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on sita.openmoko.org
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham 
	version=3.0.3
X-SA-Exim-Version: 4.2 (built Thu, 03 Mar 2005 10:44:12 +0100)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Somebody in the thread at some point said:

|&gt; We can use your suggestion and just wire it all up together like CPU and
|&gt; WM8753 are both master, but set CPU GPIO to forced float when WM8753
|&gt; drives it, force WM8753 PCM interface tristate (and CPU GPIO into I2S
|&gt; peripheral mode) when CPU drives it.  Zero glue logic needed.
|&gt;
| On the s3c24XX CPU the codec and bluetooth always master as the
| cpu is crap (cant even make an approximately right frequency) at
| generating audio clocks.
|
| I guess similar will be true on the s3c6400.

It is true there are just some crappy canned division ratios.  However
on p36-3 of the SC36400X54_UM_PreliminaryRev0.0_20071019.pdf document it
says:

''Master or slave mode can be selected by setting IMS bit of IISMOD
register. In master mode, I2SSCLK and I2SLRCLK are generated internally
and supplied to external device. Therefore a root clock is needed for
generating I2SSCLK and I2SLRCLK by dividing. The IIS pre-scaler (clock
divider) is employed for generating a root clock with divided frequency
from internal system clock. In external master mode, the root clock can
be fed from IIS external directly. &lt;&lt;&lt;====

The I2SSCLK and I2SLRCLK are supplied from the pin (GPIOs) in slave mode.''

So we can be in master mode at CPU and yet still accept external I2S
clock from Codec.

The WM8753 uses a PLL to generate the special I2S clock, the PLL output
is issues on the CLK1 / CLK2 pins so it is accessible even if the WM8753
I2S side is also in slave.

- -Andy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iEYEARECAAYFAkgEucUACgkQOjLpvpq7dMpveQCfSCv2Z7yT0oxs48V1zF8YRGn/
RdUAn2XbZgo0bFd/5WcbVrKDZsgvcjQg
=JKs7
-----END PGP SIGNATURE-----
]