[U-Boot] [PATCH v4] i2c: s3c24xx: add hsi2c controller support

Naveen Krishna Ch
2013-05-02T17:52:42Z

Hello Heiko,

On 2 May 2013 03:06, Heiko Schocher <hs@denx.de> wrote:
> Hello Naveen,
>
> On 01.05.2013 21:04, Naveen Krishna Ch wrote:
>> Hello Heiko,
>>
>> On 29 April 2013 21:14, Heiko Schocher <hs@denx.de> wrote:
>>> Hello Naveen,
>>>
>>> On 26.04.2013 05:08, Naveen Krishna Ch wrote:
>>>> On 14 April 2013 22:48, Heiko Schocher <hs@denx.de> wrote:
>>>>> Hello Naveen Krishna,
>>>>>
>>>>>
>>>>> On 13.04.2013 06:42, Naveen Krishna Ch wrote:
>>>>>>
>>>>>> On 6 April 2013 07:07, Naveen Krishna Chatradhi
>>>>>> <naveenkrishna.ch@gmail.com> wrote:
>>>>>>>
>>>>>>> Add support for hsi2c controller available on exynos5420.
>>>>>>>
>>>>>>> Note: driver currently supports only fast speed mode 100kbps
>>>>>>>
>>>>>>> Change-Id: I02555b1dc8f4ac21c50aa5158179768563c92f43
>>>>>>> Signed-off-by: Naveen Krishna Chatradhi<ch.naveen@samsung.com>
>>>>>>> Signed-off-by: R. Chandrasekar<rc.sekar@samsung.com>
>>>>>>> Reviewed-by: Vadim Bendebury<vbendeb@google.com>
>>>>>>> Reviewed-by: Simon Glass<sjg@google.com>
>>>>>>> ---
>>>>>>> Changes since v3:
>>>>>>>
>>>>>>> 1. Implemented get_timer instead of while and udelay for master busy
>>>>>>> function
>>>>>>> 2. Use reg base address from device tree
>>>>>>> 3. Split the timing function to check for the errors
>>>>>>> 4. Implemented reset function for to recover from failure cases
>>>>>>> 5. Implemented a comat string for hsi2c to distingush the channels
>>>>>>> 6. Minor cosmotic changes
>>>>>>>
>>>>>>> Note: FIFOs will be implemented in subsequent patches
>>>>>>>
>>>>>>> drivers/i2c/s3c24x0_i2c.c | 494
>>>>>>> +++++++++++++++++++++++++++++++++++++++++----
>>>>>>> drivers/i2c/s3c24x0_i2c.h | 36 ++++
>>>>>>> 2 files changed, 486 insertions(+), 44 deletions(-)
>>>>>
>>>>> [...]
>>>>>
>>>>>>> --
>>>>>>> 1.7.9.5
>>>>>>
>>>>>> Hello all i got it review by Simon and Vadim.
>>>>>> Any updates on this driver please
>>>>>
>>>>>
>>>>> As this patch in patchwork is in the responsibilty of Minkyu Kang (why?,
>>>>> added to cc):
>>>>>
>>>>> Reviewed-by: Heiko Schocher<hs@denx.de>
>>>>> Acked-by: Heiko Schocher <hs@denx.de>
>>>> Hello Minkyu Kang,
>>>>
>>>> This patch was Acked and reviewed a while ago.
>>>> Can you please update on this.
>>>
>>> Tom Rini wrote:
>>>>> Naveen Krishna Ch (1):
>>>>> i2c: s3c24xx: add hsi2c controller support
>>>>>
>>>>> drivers/i2c/s3c24x0_i2c.c | 494
>>>>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
>>>>> drivers/i2c/s3c24x0_i2c.h | 36 ++++++++++
>>>>> post/drivers/i2c.c | 2 +
>>>>> 3 Dateien ge?ndert, 488 Zeilen hinzugef?gt(+), 44 Zeilen entfernt(-)
>>>>
>>>> NAK. MAKEALL -a arm:
>>>> --------------------- SUMMARY ----------------------------
>>>> Boards compiled: 306
>>>> Boards with errors: 3 ( snow VCMA9 smdk5250 )
>>>> ----------------------------------------------------------
>>>>
>>>> And the problem is:
>>>> s3c24x0_i2c.c: In function 'board_i2c_init':
>>>> s3c24x0_i2c.c:945:3: error: 'COMPAT_SAMSUNG_EXYNOS5_I2C' undeclared
>>>> (first use in this function)
>>>
>>> Please fix, thanks!
>>
>> I've submitted a patch to u-boot at lists.denx.de as soon as i saw the build error.
>>
>> "fdtdec: Add compatible string for High speed i2c"
>> http://www.mail-archive.com/u-boot at lists.denx.de/msg112143.html
>>
>> which should fix. Can you please confirm the same.
>
> On current HEAD with your 2 patches, I see:
>
> [hs at pollux u-boot]$ ./MAKEALL VCMA9
> Configuring for VCMA9 board...
> s3c24x0_i2c.c:133:16: error: 'i2c_busses' undeclared (first use in this function)
> s3c24x0_i2c.c:134:11: error: 'i2c_bus' undeclared (first use in this function)
> s3c24x0_i2c.c:911:10: error: 'i2c_bus' undeclared (first use in this function)
> s3c24x0_i2c.c:923:18: error: 'i2c_busses' undeclared (first use in this function)
> arm-linux-gnueabi-size: './u-boot': No such file
> s3c24x0_i2c.c: In function 'get_bus':
> s3c24x0_i2c.c:133:16: error: 'i2c_busses' undeclared (first use in this function)
> s3c24x0_i2c.c:133:16: note: each undeclared identifier is reported only once for each function it appears in
> s3c24x0_i2c.c:134:11: error: 'i2c_bus' undeclared (first use in this function)
> s3c24x0_i2c.c: In function 'hsi2c_get_clk_details':
> s3c24x0_i2c.c:267:2: warning: implicit declaration of function 'get_i2c_clk' [-Wimplicit-function-declaration]
> s3c24x0_i2c.c: In function 'process_nodes':
> s3c24x0_i2c.c:911:10: error: 'i2c_bus' undeclared (first use in this function)
> s3c24x0_i2c.c:921:3: warning: implicit declaration of function 'pinmux_decode_periph_id' [-Wimplicit-function-declaration]
> s3c24x0_i2c.c:923:18: error: 'i2c_busses' undeclared (first use in this function)
> s3c24x0_i2c.c:924:3: warning: implicit declaration of function 'exynos_pinmux_config' [-Wimplicit-function-declaration]
> s3c24x0_i2c.c: At top level:
> s3c24x0_i2c.c:264:12: warning: 'hsi2c_get_clk_details' defined but not used [-Wunused-function]
> s3c24x0_i2c.c:899:13: warning: 'process_nodes' defined but not used [-Wunused-function]
> make[1]: *** [s3c24x0_i2c.o] Fehler 1
> make: *** [drivers/i2c/libi2c.o] Fehler 2
> make: *** Warte auf noch nicht beendete Prozesse...

A quick look at the driver shows
"i2c_busses and i2c_bus are defined under #ifdef CONFIG_OF_CONTROL"

A fix submitted by Author: Rajeshwari Shinde <rajeshwari.s@samsung.com>
http://lists.denx.de/pipermail/u-boot/2013-January/144145.html

"I2C: S3C24X0: Resolve build error for VCMA9"
seems to be blocking those variables for not OF_CONTROL builds

Will look for a fix.
>
> --------------------- SUMMARY ----------------------------
> Boards compiled: 1
> Boards with errors: 1 ( VCMA9 )
> ----------------------------------------------------------
> [hs at pollux u-boot]$ git log
> commit b89874f919da1255d50f47b4b349224f5f4fb4a7
> Author: Naveen Krishna Ch <naveenkrishna.ch@gmail.com>
> Date: Fri Apr 5 15:37:57 2013 +0000
>
> i2c: s3c24xx: add hsi2c controller support
>
> Add support for hsi2c controller available on exynos5420.
>
> Note: driver currently supports only fast speed mode 100kbps
>
> Change-Id: I02555b1dc8f4ac21c50aa5158179768563c92f43
> Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
> Signed-off-by: R. Chandrasekar <rc.sekar@samsung.com>
> Reviewed-by: Vadim Bendebury <vbendeb@google.com>
> Reviewed-by: Simon Glass <sjg@google.com>
> Reviewed-by: Heiko Schocher<hs@denx.de>
> Acked-by: Heiko Schocher <hs@denx.de>
>
> commit 1d3381320c9f9181c4dd4f1edf5e7e28285b1c41
> Author: Naveen Krishna Ch <naveenkrishna.ch@gmail.com>
> Date: Mon Apr 29 12:58:52 2013 +0000
>
> fdtdec: Add compatible string for High speed i2c
>
> Adds a new COMPAT string exynos5-hsi2c for high speed i2c controller
> available on exynos5 SoCs from Samsung.
>
> Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
>
> ommit 971020c755e5633c9a8f532356ee1750b38dd86f
> Author: Simon Glass <sjg@chromium.org>
> Date: Sat Apr 20 08:42:52 2013 +0000
>
> sandbox: config: Enable CONFIG_FIT and CONFIG_CMD_FIT
>
> Enable these options to use FITs on sandbox.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
>
> bye,
> Heiko
> --
> DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

--
Shine bright,
(: Nav :)