mvebu: Add rudimental MV78230 support
This adds basic support for Marvell's MV78230 SoC which belongs to the Armada XP series. Signed-off-by: Phil Sutter <phil@nwl.cc> Acked-by: Stefan Roese <sr@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
parent
4444d230ac
commit
6202953df4
@ -49,13 +49,16 @@ int mvebu_soc_family(void)
|
|||||||
{
|
{
|
||||||
u16 devid = (readl(MVEBU_REG_PCIE_DEVID) >> 16) & 0xffff;
|
u16 devid = (readl(MVEBU_REG_PCIE_DEVID) >> 16) & 0xffff;
|
||||||
|
|
||||||
if ((devid == SOC_MV78260_ID) || (devid == SOC_MV78460_ID))
|
switch (devid) {
|
||||||
|
case SOC_MV78230_ID:
|
||||||
|
case SOC_MV78260_ID:
|
||||||
|
case SOC_MV78460_ID:
|
||||||
return MVEBU_SOC_AXP;
|
return MVEBU_SOC_AXP;
|
||||||
|
case SOC_88F6810_ID:
|
||||||
if (devid == SOC_88F6810_ID || devid == SOC_88F6820_ID ||
|
case SOC_88F6820_ID:
|
||||||
devid == SOC_88F6828_ID)
|
case SOC_88F6828_ID:
|
||||||
return MVEBU_SOC_A38X;
|
return MVEBU_SOC_A38X;
|
||||||
|
}
|
||||||
return MVEBU_SOC_UNKNOWN;
|
return MVEBU_SOC_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,6 +143,9 @@ int print_cpuinfo(void)
|
|||||||
puts("SoC: ");
|
puts("SoC: ");
|
||||||
|
|
||||||
switch (devid) {
|
switch (devid) {
|
||||||
|
case SOC_MV78230_ID:
|
||||||
|
puts("MV78230-");
|
||||||
|
break;
|
||||||
case SOC_MV78260_ID:
|
case SOC_MV78260_ID:
|
||||||
puts("MV78260-");
|
puts("MV78260-");
|
||||||
break;
|
break;
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
#ifndef _MVEBU_SOC_H
|
#ifndef _MVEBU_SOC_H
|
||||||
#define _MVEBU_SOC_H
|
#define _MVEBU_SOC_H
|
||||||
|
|
||||||
|
#define SOC_MV78230_ID 0x7823
|
||||||
#define SOC_MV78260_ID 0x7826
|
#define SOC_MV78260_ID 0x7826
|
||||||
#define SOC_MV78460_ID 0x7846
|
#define SOC_MV78460_ID 0x7846
|
||||||
#define SOC_88F6810_ID 0x6810
|
#define SOC_88F6810_ID 0x6810
|
||||||
|
@ -199,7 +199,9 @@ u16 ctrl_model_get(void)
|
|||||||
* SoC version can't be autodetected. So we need to rely on a define
|
* SoC version can't be autodetected. So we need to rely on a define
|
||||||
* from the config system here.
|
* from the config system here.
|
||||||
*/
|
*/
|
||||||
#ifdef CONFIG_MV78260
|
#if defined(CONFIG_MV78230)
|
||||||
|
return MV_78230_DEV_ID;
|
||||||
|
#elif defined(CONFIG_MV78260)
|
||||||
return MV_78260_DEV_ID;
|
return MV_78260_DEV_ID;
|
||||||
#else
|
#else
|
||||||
return MV_78460_DEV_ID;
|
return MV_78460_DEV_ID;
|
||||||
@ -217,6 +219,8 @@ u32 get_line_cfg(u32 line_num, MV_BIN_SERDES_CFG *info)
|
|||||||
static int serdes_max_lines_get(void)
|
static int serdes_max_lines_get(void)
|
||||||
{
|
{
|
||||||
switch (ctrl_model_get()) {
|
switch (ctrl_model_get()) {
|
||||||
|
case MV_78230_DEV_ID:
|
||||||
|
return 7;
|
||||||
case MV_78260_DEV_ID:
|
case MV_78260_DEV_ID:
|
||||||
return 12;
|
return 12;
|
||||||
case MV_78460_DEV_ID:
|
case MV_78460_DEV_ID:
|
||||||
|
Loading…
Reference in New Issue
Block a user