FreeBSD 13.0-CURRENT on BBB: cpswss0: failed to get PHY address from FDT

Dr. Rolf Jansen rj at obsigna.com
Wed Feb 13 01:57:04 UTC 2019


> Am 12.02.2019 um 13:17 schrieb Emmanuel Vadot <manu at bidouilliste.com>:
> On Mon, 11 Feb 2019 21:54:06 -0200 "Dr. Rolf Jansen" <rj at obsigna.com> wrote:
> 
>> I loaded the latest snapshot FreeBSD-13.0-CURRENT-arm-armv7-BEAGLEBONE-20190207-r343862 on my BeagleBone Black, and with that one the ethernet NIC does not work anymore. In the startup log I see:
>> 
>> cpswss0: failed to get PHY address from FDT
>> 
>> What can/shall I do?
> 
> This is due to this commit in the DTS :
> https://github.com/torvalds/linux/commit/4d8b032d3c03f4e9788a18bbb51b10e6c9e8a56b
> 
> For a quick fix you can edit the DTS, revert this and recompile it.
> (from a FreeBSD machine exec this from /usr/src :
> MACHINE=arm sh sys/tools/fdt/make_dtb.sh `pwd`/sys
> sys/gnu/dts/arm/am335x-boneblack.dts . )
> 
> Someone will need to fix this in
> our cpsw driver.

Thank you very much for the hint. Using the diff of the commit which you mentioned, I was able to create an overlay and it works fine. So, no need to recompile the whole DTB. The overlay is:

/dts-v1/;
/plugin/;

/ {
	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";

	part-number = "cpsw_emac0";
	version = "0001";
};

&cpsw_emac0 {
   phy_id = <&davinci_mdio>, <0>;
};


This is meant to be compiled as follows:
   dtc -I dts -O dtb -b0 -@ -o /boot/dtbo/am335x-boneblack-cpsw.dtbo am335x-boneblack-cpsw.dtso

Finally, I needed to add it to my other overlays in /boot/loader.conf:
   fdt_overlays=„/boot/dtbo/am335x-boneblack-tscadc.dtbo,/boot/dtbo/am335x-boneblack-pruss.dtbo,/boot/dtbo/am335x-boneblack-i2c1.dtbo,/boot/dtbo/am335x-boneblack-cpsw.dtbo"

Problem solved, thank you very much again.

Best regards

Rolf



More information about the freebsd-arm mailing list