9
0
Fork 0

net/phy: add driver for LXT PHYs

Based on Linux kernel 3.12 driver.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Antony Pavlov 2013-12-25 11:50:04 +04:00 committed by Sascha Hauer
parent 23e0081cfd
commit ce4e4eff35
3 changed files with 37 additions and 0 deletions

View File

@ -13,6 +13,11 @@ config AT803X_PHY
---help---
Currently supports the AT8030, AT8031 and AT8035 PHYs.
config LXT_PHY
bool "Driver for the Intel LXT PHYs"
---help---
Currently supports the lxt971 PHY.
config MICREL_PHY
bool "Driver for Micrel PHYs"
---help---

View File

@ -1,4 +1,5 @@
obj-y += phy.o mdio_bus.o
obj-$(CONFIG_AT803X_PHY) += at803x.o
obj-$(CONFIG_LXT_PHY) += lxt.o
obj-$(CONFIG_MICREL_PHY) += micrel.o
obj-$(CONFIG_SMSC_PHY) += smsc.o

31
drivers/net/phy/lxt.c Normal file
View File

@ -0,0 +1,31 @@
/*
* drivers/net/phy/lxt.c
*
* Driver for Intel LXT PHYs
*
* base on Andy Fleming's linux lxt.c driver
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*/
#include <common.h>
#include <init.h>
#include <linux/phy.h>
static struct phy_driver lxt97x_driver[] = {
{
.phy_id = 0x001378e0,
.phy_id_mask = 0xfffffff0,
.drv.name = "LXT971",
.features = PHY_BASIC_FEATURES,
} };
static int lxt97x_phy_init(void)
{
return phy_drivers_register(lxt97x_driver,
ARRAY_SIZE(lxt97x_driver));
}
fs_initcall(lxt97x_phy_init);