Hi Niklas,
adv7281m driver powers up the CSI transmitter in s_power(), which is
called before setting up of D-PHY layer of R-Car CSI-2 Receiver.
I shifted the part of code which enables CSI transmitter in adv7281m
(Low Power state to High Speed state) to s_stream() -
if (state->chip_info->flags & ADV7180_FLAG_MIPI_CSI2) {
if (on) {
adv7180_csi_write(state, 0xDE, 0x02);
adv7180_csi_write(state, 0xD2, 0xF7);
adv7180_csi_write(state, 0xD8, 0x65);
adv7180_csi_write(state, 0xE0, 0x09);
adv7180_csi_write(state, 0x2C, 0x00);
if (state->field == V4L2_FIELD_NONE)
adv7180_csi_write(state, 0x1D, 0x80);
adv7180_csi_write(state, 0x00, 0x00);
} else {
adv7180_csi_write(state, 0x00, 0x80);
}
}
After this change, i am not getting timeout of reading the phy clock
lane and capture starts but nothing is displayed on the screen.
On Wed, Jul 26, 2017 at 2:08 PM, Niklas Söderlund
<[email protected]> wrote:
> Hi Naman,
>
> On 2017-07-24 22:43:06 +0530, Naman Jain wrote:
>> On Mon, Jul 24, 2017 at 3:11 PM, Niklas Söderlund
>> <[email protected]> wrote:
>> > Hi Naman,
>> >
>> > On 2017-07-24 14:30:52 +0530, Naman Jain wrote:
>> >> i am using renesas soc with video decoder adv7281m
>> >> i have done thr device tree configuration by following dt bindings
>> >> i am getting timeout of reading the phy clock lane, after i start
>> >> streaming
>> >> and nothing is displayed on the screen
>> >> kindly help me in configuration
>> >
>> > To be able to try and help you I would need a lot more information. For
>> > starters:
>> >
>> > - Which kernel version are you using?
>> >
>> > - How dose the device tree nodes for VIN and ADV7281m look like?
>> >
>> > --
>> > Regards,
>> > Niklas Söderlund
>>
>> Hi Niklas,
>>
>> I am using kernel version - 4.9
>
> The VIN driver which supports CSI-2 and the R-Car CSI-2 driver is not a
> part of the upstream kernel yet, and the latest patches with contains
> the most fixes are based on newer kernels then v4.9. So I assume you are
> using a BSP of some sort, if possible could you tell me which one?
>
> If you want to try with later increments of the VIN and CSI-2 patches
> please see:
>
> http://elinux.org/R-Car/Tests:rcar-vin
>
>
Soc version is rcar-h3 (r8a7795).
Can tell me dependency patches required?
>>
>> following is the device tree configuration :
>>
>> &i2c6 {
>> status = "okay";
>> clock-frequency = <400000>;
>> adv7281m@21{
>> compatible = "adi,adv7281-m";
>> reg = <0x20>;
>> interrupt-parent = <&gpio6>;
>> interrupts = <4 IRQ_TYPE_LEVEL_LOW>
>> adv7281m_out: endpoint {
>> clock-lanes = <0>;
>> data-lanes = <1>;
>> remote-endpoint = <&csi20_in>;
>> };
>> };
>>
>> }
>>
>> &csi20 {
>> status = "okay";
>> ports {
>> #address-cells = <1>;
>> #size-cells = <0>;
>>
>> port@0 {
>> reg = <0>;
>> csi20_in: endpoint {
>> clock-lanes = <0>;
>> data-lanes = <1>;
>>
>> virtual-channel-number=<0>;
>
> This is interesting for me, I have not worked with any driver for the
> R-Car CSI-2 driver which understands the virtual-channel-number
> property.
>
>> remote-endpoint =
>> <&adv7281m_out>;
>> };
>> };
>> };
>> };
>>
>> &vin0 {
>> status = "okay";
>> };
>>
>> &vin1 {
>> status = "okay";
>> };
>>
>> &vin2 {
>> status = "okay";
>> };
>>
>> &vin3 {
>> status = "okay";
>> };
>>
>> &vin4 {
>> status = "okay";
>> };
>>
>> &vin5 {
>> status = "okay";
>> };
>>
>> &vin6 {
>> status = "okay";
>> };
>>
>> &vin7 {
>> status = "okay";
>> };
>
> --
> Regards,
> Niklas Söderlund