Fixed PHY problems

Joakim Tjernlund joakim.tjernlund at transmode.se
Fri May 11 23:41:12 EST 2007


On Fri, 2007-05-11 at 11:04 +0200, Joakim Tjernlund wrote:
> On Fri, 2007-05-11 at 12:07 +0400, Vitaly Bordug wrote:
> > On Thu, 10 May 2007 19:41:53 +0200
> > Joakim Tjernlund wrote:
> > 
> > > Trying to boot todays linus tree with fixed PHY support enabled gets
> > > me this: Fixed PHY: Registered new driver
> > > Device 'fixed at 100:1' does not have a release() function, it is broken
> > > and must be fixed. ------------[ cut here ]------------
> > > Badness at drivers/base/core.c:107
> > > Call Trace:
> > > [cffc1dc0] [c0008324] show_stack+0x48/0x194 (unreliable)
> > > [cffc1df0] [c00f4a4c] report_bug+0x84/0xec
> > > [cffc1e00] [c000dde8] program_check_exception+0x274/0x55c
> > > [cffc1e20] [c000f770] ret_from_except_full+0x0/0x4c
> > > --- Exception: 700 at device_release+0x54/0x90
> > >     LR = device_release+0x54/0x90
> > > [cffc1ef0] [c00f5e1c] kobject_cleanup+0xb4/0xb8
> > > [cffc1f10] [c00f6ca0] kref_put+0x68/0x80
> > > [cffc1f20] [c00f5d58] kobject_put+0x24/0x34
> > > [cffc1f30] [c01150bc] put_device+0x1c/0x2c
> > > [cffc1f40] [c0243a9c] fixed_init+0x1cc/0x210
> > > [cffc1f60] [c022e828] kernel_init+0x8c/0x2b4
> > > [cffc1ff0] [c000ff4c] kernel_thread+0x44/0x60
> > > 
> > > The other thing is, how do I specify a fixed PHY
> > > in OF?
> > > 
> > I have a patch that  fixes it but was busy with other stuff because of merge window.
> > Can send it to you meanwhile, going to deal with it after next rc released...
> 
> Please do, thanks.
> 
> Do you have any idea what needs to go into the DTS file to make my
> 832x(ucc_geth) find it?

hmm, been trying to figure out all day how to make ucc_geth find my
fixed PHY without success. OF experts, please give me some hints.
My board is derived from the in tree mpc832x_mds bord and I am trying to
convert this part:
	mdio at 2320 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <2320 18>;
			device_type = "mdio";
			compatible = "ucc_geth_phy";

			phy3: ethernet-phy at 03 {
				interrupt-parent = < &ipic >;
				interrupts = <11 8>;
				reg = <3>;
				device_type = "ethernet-phy";
			};
			phy4: ethernet-phy at 04 {
				interrupt-parent = < &ipic >;
				interrupts = <12 8>;
				reg = <4>;
				device_type = "ethernet-phy";
			};
		};
into fixed PHYs, how do I do that?

 Jocke



More information about the Linuxppc-dev mailing list