I use ti-processor-sdk-linux-am57xx-evm-06.03.00.106 on am5749 (custom board).
I would like to cut ov2659 support from dts:
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I use ti-processor-sdk-linux-am57xx-evm-06.03.00.106 on am5749 (custom board).
I would like to cut ov2659 support from dts:
Hi Keerty,
In my case I should use : am574x-idk-pps.dtb
How I can understand we have a 3 methods:
1.Just a cut couple of code from dtb. Which located : rootfs/boot/am574x-idk.dtb
2.Disable a code from this dtb. Which located: rootfs/boot/am574x-idk.dtb
3.It is disable or delet couple of coude from dtsi and the rebuild dtb. Which located: SDK/board-support/linux-4.19.94+gitAUTOINC+be5389fd85-gbe5389fd85/arch/arm/boot/dts/am574x-idk.dtsi(dts)
So like you understood I interest the 3 method.
Actualy I can't find the right location in dtsi, when I try to cut something I had a many errors because you have very strong and difficult dependency between dts.
The same situation with: e2e.ti.com/.../3445830
Regards,
Oleg
Hi Oleg,
Instead of deleting any node any place just try to disable the node in your am574x-idk-pps.dts.
Do not delete any node from anywhere. This will localize build issues only w.r.t to your dts file.
Like the top node that you want to disable ov2659. Then in your am574x-idk-pps.dts
just do:
&ov2659 {
status = "disabled";
};
Regards,
Keerthy
Hi Keerthy,
I can't find am574x-idk-pps.dts in my directory I just a have am574x-idk-pps.dtso ,but
what I see in this file, nothing similar with ov2659.
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/pinctrl/dra.h>
&mac {
/* cptr pps1 generator and latch properties */
pps_timer = <&timer16>;
latch_timer = <&timer15>;
pinctrl-names = "pwm_off", "pwm_on", "ref_off", "ref_on",
"latch_on", "latch_off";
pinctrl-0 = <&pps1_timer16_pwm_off>;
pinctrl-1 = <&pps1_timer16_pwm_on>;
pinctrl-2 = <&pps1_timer16_pwm2_off>;
pinctrl-3 = <&pps1_timer16_pwm2_on>;
pinctrl-4 = <&pps1_timer15_latch_on>;
pinctrl-5 = <&pps1_timer15_latch_off>;
pps-enable-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
ref-enable-gpios = <&gpio6 19 GPIO_ACTIVE_HIGH>;
};
&pruss2_eth {
pinctrl-names = "sync0_off", "sync0_on", "latch0_off", "latch0_on",
"sync1_off", "sync1_on";
pinctrl-0 = <&pr2_edc_sync0_off>;
pinctrl-1 = <&pr2_edc_sync0_on>;
pinctrl-2 = <&pr2_edc_latch0_off>;
pinctrl-3 = <&pr2_edc_latch0_on>;
pinctrl-4 = <&pr2_edc_sync1_off>;
pinctrl-5 = <&pr2_edc_sync1_on>;
};
&dra7_pmx_core {
pps1_timer16_pwm_on: pps1_timer16_pwm_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x36a0, PIN_OUTPUT | MUX_MODE10)
>;
};
pps1_timer16_pwm_off: pps1_timer16_pwm_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x36a0, PIN_OUTPUT_PULLDOWN | MUX_MODE15)
>;
};
pps1_timer16_pwm2_on: pps1_timer16_pwm2_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x3680, PIN_OUTPUT | MUX_MODE7)
>;
};
pps1_timer16_pwm2_off: pps1_timer16_pwm2_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x3680, PIN_OUTPUT_PULLDOWN | MUX_MODE15)
>;
};
pps1_timer15_latch_on: pps1_timer15_latch_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x3684, PIN_INPUT | MUX_MODE7)
>;
};
pps1_timer15_latch_off: pps1_timer15_latch_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x3684, PIN_INPUT | MUX_MODE15)
>;
};
pr2_edc_sync0_on: pr2_edc_sync0_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35f8, PIN_OUTPUT | MUX_MODE10)
>;
};
pr2_edc_sync0_off: pr2_edc_sync0_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35f8, PIN_OUTPUT_PULLDOWN | MUX_MODE15)
>;
};
pr2_edc_latch0_on: pr2_edc_latch0_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35f0, PIN_INPUT | MUX_MODE10)
>;
};
pr2_edc_latch0_off: pr2_edc_latch0_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35f0, PIN_INPUT | MUX_MODE15)
>;
};
pr2_edc_sync1_on: pr2_edc_sync1_on {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35fc, PIN_OUTPUT | MUX_MODE10)
>;
};
pr2_edc_sync1_off: pr2_edc_sync1_off {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x35fc, PIN_OUTPUT_PULLDOWN | MUX_MODE15)
>;
};
};
&ptp_bc {
pps-sel0-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
pps-sel1-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
status = "okay";
};
Regards,
Oleg
Oleg,
"In my case I should use : am574x-idk-pps.dtb"
How are you getting a dtb without am574x-idk-pps.dts.
If its dtso then you should see dtbo. Can you please tell me for your custom board what is the .dtb
that gets loaded? If its am574x-idk.dtb then do the disabling of nodes in am574x-idk.dts
Best Regards,
Keerthy
Hi Keerthy,
For a load I use :am574x-idk.dtb
I mean I can't find am574x-idk-pps.dts in my SDK directory.
If we talking about Boot directory on a flash ..Yes I have am574x-idk-pps.dtb
But I'm confused ....you sad for a normal work and boot I should have only 3 files in boot directory:
am574x-idk.dtb
zImage-4.19.94-gbe5389fd85
zImage(link)
I dont know how I get: am574x-idk-pps.dtb
But what I have here: linux-4.19.94+gitAUTOINC+be5389fd85-gbe5389fd85/arch/arm/boot/
am574x-idk-pps.dtb
am574x-idk-pps.dtbo
am574x-idk.dts no have information about ov2659
but it is have many includes and actually it is awful...because of the versatility we get confusion
for example:
#include "dra74x-p.dtsi"
#include "dra7-mmc-iodelay.dtsi"
#include "dra76x-mmc-iodelay.dtsi"
#include "am572x-idk-common.dtsi"
#include "am57xx-evm-cmem-am574x.dtsi"
I should find some code ov2659 in some of the includes....but I dont know where exactly I should disable it...
Best Regards,
Oleg
Hi Oleg,
In dts i did this change:
diff --git a/arch/arm/boot/dts/am574x-idk.dts b/arch/arm/boot/dts/am574x-idk.dts
index 9418828ee2..a231054ffd 100644
--- a/arch/arm/boot/dts/am574x-idk.dts
+++ b/arch/arm/boot/dts/am574x-idk.dts
@@ -46,4 +46,8 @@
reset-delay-us = <2>; /* PHY datasheet states 1uS min */
};
+&ov2659 {
+status = "disabled";
+};
+
You can be sure that ov2659 will never be probed on am574x-idk.
I agree due to the number of boards supported the tree structure will get complicated
and deletion will tough but disabling it is as easy as above.
Regards,
Keerthy