linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vladimir Zapolskiy <vladimir_zapolskiy-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
To: Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
Cc: Philipp Zabel <p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 0/3] i2c: i2c-imx-hdmi: add support of iMX6 HDMI DDC I2C bus
Date: Mon, 24 Nov 2014 21:15:19 +0200	[thread overview]
Message-ID: <547383C7.8000705@mentor.com> (raw)
In-Reply-To: <20141124122052.GI3733@katana>

Hi Wolfram,

On 24.11.2014 14:20, Wolfram Sang wrote:
> On Sat, Nov 15, 2014 at 07:49:16PM +0200, Vladimir Zapolskiy wrote:
>> Please review a proposed iMX6 HDMI DDC controller driver written on
>> top of I2C framework.
>>
>> Changes from RFC to v1 version:
>> * added I2C bus ducumentation,
>> * updated iMX6 HDMI device tree bindings documentation,
>> * device resource information is collected from parent HDMI phandle,
>> * minor clean-ups.
>>
>> The driver intends to support HDMI on-controller I2C master bus with
>> limited cababilities, however by nature of the sub-device it seems
>> reasonable to separate it into a stand-alone driver, which also can be
>> used independently on general HDMI controller driver, for example as
>> an additional I2C bus on a board, but please be aware that the bus is
>> not compliant to I2C specification.
>>
>> In my practice I've met iMX6Q boards, where HDMI DDC lines are
>> connected to iMX6 HDMI DDC pins and not to any of 3 I2C busses, so
>> support of iMX6 HDMI I2C bus is important to have.
>>
>> Main issues with the device/driver:
>> * iMX6 HDMI controller becomes a shared device (both interrupt and
>>   memory region) between HDMI driver itself and this I2C bus driver.
>> * Only two patterns of I2C transactions are supported due to hardware
>>   limitation, these patters are described in driver's code header.
>> * The bus controller supports one more multi-byte read pattern (so
>>   called Extended Read Mode), but Freescale documentation is too vague
>>   to easily add this mode into the driver.
>>
>> The bus driver may be used independently on presence/absence of iMX6
>> HDMI controller driver, so build dependeny is not set.

thank you for review.

> I think there are now 3 drivers in my queue which are not fully I2C
> compatible but more supporting the very minimum to, say, read an eeprom.
> I am not feeling well to allow them to use I2C_FUNC_I2C. So, I want to
> think about ways how to communicate deficiencies like "only 255 byte" or
> "only WRRD messages" to users of that I2C controller. This is most
> likely not happening before 3.19. But assistance is very welcome.
> 

Yeah, it sounds absolutely correct *not* to allow such drivers (and this
one in particular) to provide naked I2C_FUNC_I2C.

Is there any chance to extend I2C_FUNC_* list? It still has some free
bits, not so many though.

Probably it might be possible to create another list of quirks or
exceptions (in opposite to functionality) and export quirks of a
particular I2C bus to userspace over some userspace to kernel channel
(e.g. adding one more ioctl).

--
With best wishes,
Vladimir

      reply	other threads:[~2014-11-24 19:15 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1416073759-19939-1-git-send-email-vladimir_zapolskiy@mentor.com>
     [not found] ` <1416073759-19939-1-git-send-email-vladimir_zapolskiy-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2014-11-15 17:49   ` [PATCH 1/3] staging: imx-drm: document internal HDMI I2C master controller DT binding Vladimir Zapolskiy
     [not found]     ` <1416073759-19939-2-git-send-email-vladimir_zapolskiy-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2014-12-01 14:54       ` Vladimir Zapolskiy
2014-12-01 15:11         ` Philipp Zabel
     [not found]           ` <1417446703.4624.18.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2014-12-01 15:39             ` Vladimir Zapolskiy
     [not found]               ` <547C8B9E.8050605-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2014-12-01 16:22                 ` Philipp Zabel
     [not found]                   ` <1417450979.4624.23.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2014-12-02  6:36                     ` Andy Yan
     [not found]                       ` <547D5DE2.2040704-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2014-12-02 13:11                         ` Vladimir Zapolskiy
     [not found]                           ` <547DBA99.1010703-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2014-12-02 13:21                             ` Wolfram Sang
2014-11-15 17:49   ` [PATCH 2/3] i2c: i2c-imx-hdmi: add support of iMX6 HDMI DDC I2C master bus Vladimir Zapolskiy
2014-11-15 17:49   ` [PATCH 3/3] i2c: i2c-imx-hdmi: add documentation file of the bus Vladimir Zapolskiy
2014-11-24 12:20   ` [PATCH 0/3] i2c: i2c-imx-hdmi: add support of iMX6 HDMI DDC I2C bus Wolfram Sang
2014-11-24 19:15     ` Vladimir Zapolskiy [this message]

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=547383C7.8000705@mentor.com \
    --to=vladimir_zapolskiy-nmggyn9qbj3qt0dzr+alfa@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
    --cc=wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.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).