linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: jassisinghbrar@gmail.com (jassi brar)
To: linux-arm-kernel@lists.infradead.org
Subject: Samsung SoC ASOC drivers
Date: Fri, 4 Sep 2009 13:10:24 +0900	[thread overview]
Message-ID: <1b68c6790909032110r68710ccdjefeafae0eec3fda5@mail.gmail.com> (raw)
In-Reply-To: <20090904012736.GA3997@prithivi.gnumonks.org>

On Fri, Sep 4, 2009 at 10:27 AM, Harald Welte<laforge@gnumonks.org> wrote:
> Hi Jassi,
>>
>> I hope we agree the SoC-Master/Slave option should be selected in make
>> menuconfig. ?Direction of LRCLK, BCLK thus gets decided there.
>>
>> IMHO, source of MCLK - I2SCDCLK, PCLK, SCLK_Audio(with further options) - is
>> better decided during compile-time too. Otherwise, put-get-put-setrate-'ing
>> different clocks, according to the LRCLK needed, in runtime will add more
>> complexity than flexibility to the driver. Or so do i think.
>
> I'm sorry to have to disagree. ?The driver is compiled once into a kernel or
> kernel module. ?The resulting kernel module has to run on every board (mach-*)
> that is out there
Hmmm...  i didn't realize that scenario.
Esp for source clocks, which has to do with cpu_dai.

Anyways, I will have to consider such expert comments when i submit the code.


>> Yes, state-machine code of v3.2 can run both v4 and v5 and 5.1channel
>> support of v4 can run that of v5 too. Now v5 has got an added feature
>> ?- LowPowerAudioMode(LPAM) which wud rather take minor tweaks in even
>> the ALSA stack to run.
>> And I think we can no longer juggle and reuse the 24xx code.
>> Either we manage two classes of I2S drivers - simple 2channel Vs
>> sophisticated 5.1channel with h/w mixing and LPAM etc,
>> Or we restructure to drivers around "library" like functionality - like PXA.
>
> I'm personally not too much into any of those details. ?Having two drivers
> with one 2channel and one 5.1channel sounds a bit like the 5.1channel will
> be a superset of the 2channel driver, i.e. it will (among many other things)
> also implement those bits in the 2channel driver - which I believe would be
> suboptimal.
So do i think. I'd rather favor the second option.

>> >> As a starter we cud do by converting Samsung's I2S code 24xx(and even
>> >> s3c) agnostic?
>> > I'm not quite sure what you mean by this?
>> I meant we can atleast make names of functions and datastructures 2410 neutral,
>> like changing from s3c24xx_i2s to samsung_i2s_v2 or somthing like that.
>> i.e, designing around IPs rather than SoCs.
>>
>> Not just for I2S, rather for entire BSP, I believe an approach with
>> riddance from
>> the jargon of Samsung SoCs(s3c, s5p, 2410, 24xx, 2412, 64xx etc) and centered
>> around IPs rather than the SoCs wud server us better.
>
> I like that approach, but two comments:
>
> 1) The problem is just that the samsung user manuals never specify the version
> ? of the IP cores, so for anyone outside samsung it is impossible to know
> ? those version numbers. ?Maybe a publicly releaseable single page table
> ? listing all IP cores in the rows and have one column for every SoC would help
Yes, and the classification can be maintainer defined and maybe kept
in some Documentations/samsung-soc.txt  or something.

A similar IP based classification is already in place and a very
successful example -- ARM cpu.


> 2) it would mean that we start with renaming many things across arch/arm code
> ? and in the drivers subdirectory, which is difficult to synchronize and will
> ? cause delays for any real development (i.e. becoming more feature-complete).
> We really should focus on adding features and fixing bugs right now, rather than
> thinking of the perfect solution which would hold back any real pogress.
I share you concern. I don't intend to start submiting patches right away.
I am only trying to bring to notice one point to the maintainers and
if everybody agrees, that wud be taken up slowly and steadily.

Btw, I am already modifying Samsung 6410 I2S and SPI code to fit in
the existing mainline structure.

  reply	other threads:[~2009-09-04  4:10 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-02  3:17 Samsung S3C6410 mainline merge coordination Harald Welte
2009-09-02  9:51 ` Nelson Castillo
2009-09-02 12:15   ` Harald Welte
2009-09-02 15:58     ` Nelson Castillo
2009-09-02 10:05 ` Mark Brown
2009-09-02 12:11   ` Harald Welte
2009-09-02 13:44     ` jassi brar
2009-09-02 14:47       ` Mark Brown
2009-09-03  0:38         ` jassi brar
2009-09-03 12:14           ` Mark Brown
2009-09-03 13:39             ` jassi brar
2009-09-03 15:18               ` Mark Brown
2009-09-04  1:08                 ` jassi brar
2009-09-04 13:41                   ` Mark Brown
2009-09-04 14:27                     ` jassi brar
2009-09-04 14:57                       ` Mark Brown
2009-09-04  1:27               ` Samsung SoC ASOC drivers Harald Welte
2009-09-04  4:10                 ` jassi brar [this message]
2009-09-02 19:09       ` Samsung S3C6410 mainline merge coordination Ben Dooks
2009-09-03  0:21       ` Joonyoung Shim
2009-09-03 11:06         ` Mark Brown
2009-09-03 12:48           ` Joonyoung Shim
2009-09-02 13:45     ` Mark Brown
2009-09-02 19:22     ` Ben Dooks
     [not found] ` <19987914.1168001251884594226.JavaMail.coremail@bj126app54.126.com>
2009-09-02 12:01   ` Harald Welte
2009-09-02 19:10     ` Ben Dooks
2009-09-02 22:26       ` Harald Welte
2009-09-03  9:51         ` Daniel Silverstone
2009-09-03 10:34           ` Russell King - ARM Linux
2009-09-03 10:40             ` Daniel Silverstone
2009-09-04  5:48           ` Pavel Machek
2009-09-02 12:03 ` David F. Carlson
2009-09-02 12:46   ` Peter Korsgaard
2009-09-02 19:16   ` Ben Dooks
2009-09-03  1:56     ` Harald Welte
2009-09-03 10:04       ` Peter Korsgaard
2009-09-03 10:57       ` Mark Brown
     [not found]     ` <7641737.122161251944382753.JavaMail.coremail@bj126app17.126.com>
2009-09-03  4:31       ` Harald Welte
2009-09-10  5:49   ` Samsung S3C6410 / SmartQ / 2D acceleration / Xorg Harald Welte
2009-09-15 23:34     ` Ben Dooks
2009-09-15  9:49       ` Samsung S3C6410 / SmartQ / 2D acceleration / Xorgy David F. Carlson
2009-09-02 12:49 ` Samsung S3C6410 mainline merge coordination Peter Korsgaard
2009-09-02 22:30   ` Harald Welte
2009-09-02 16:12 ` Ben Dooks
2009-09-02 21:25   ` David F. Carlson
2009-09-02 23:18   ` Harald Welte
2009-09-03  3:31     ` Bill Gatliff
2009-09-03  3:38     ` Nelson Castillo
2009-09-03  4:33       ` Harald Welte
2009-09-04  7:15         ` Nelson Castillo
2009-09-02 16:58 ` Mark Brown

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=1b68c6790909032110r68710ccdjefeafae0eec3fda5@mail.gmail.com \
    --to=jassisinghbrar@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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;
as well as URLs for NNTP newsgroup(s).