IP1001C 规格书
通过以上从规格书里面或者的ID 寄存器我们得到IP1001C 的ID 为
0x02430c54
0x02430c20
接下来我们需要移植驱动
因为IP1001C 属于ICPLUS
所以我们可以参考内核目录下原本的驱动将IP1001C 相关的驱动和初始化部分添加进icplus.c 这样既可以做到兼容之前的驱动,也使我们移植能够省去不少时间
common/drivers/net/phy/icplus.c
/*
* Driver for ICPlus PHYs
*
* Copyright (c) 2007 Freescale Semiconductor, Inc.
*
* 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 <linux/kernel.h>
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/unistd.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/spinlock.h>
#include <linux/mm.h>
#include <linux/module.h>
#include <linux/mii.h>
#include <linux/ethtool.h>
#include <linux/phy.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
MODULE_DESCRIPTION("ICPlus IP175C/IP101A/IP101G/IC1001 PHY drivers");
MODULE_AUTHOR("Michael Barkowski");
MODULE_LICENSE("GPL");
/* IP101A/G - IP1001 */
#define IP10XX_SPEC_CTRL_STATUS 16 /* Spec. Control Register */
#define IP1001_RXPHASE_SEL (1<<0) /* Add delay on RX_CLK */
#define IP1001_TXPHASE_SEL (1<<1) /* Add delay on TX_CLK */
#define IP1001_SPEC_CTRL_STATUS_2 20 /* IP1001 Spec. Control Reg 2 */
#define IP1001_APS_ON 11 /* IP1001 APS Mode bit */
#define IP101A_G_APS_ON 2 /* IP101A/G APS Mode bit */
#define IP101A_G_IRQ_CONF_STATUS 0x11 /* Conf Info IRQ & Status Reg */
#define IP101A_G_IRQ_PIN_USED (1<<15) /* INTR pin used */
#define IP101A_G_IRQ_DEFAULT IP101A_G_IRQ_PIN_USED
static int ip175c_config_init(struct phy_device *phydev)
{
int err, i;
static int full_reset_performed;
if (full_reset_performed == 0) {
/* master reset */
err = mdiobus_write(phydev->mdio.bus, 30, 0, 0x175c);
if (err < 0)
return err;
/* ensure no bus delays overlap reset period */
err = mdiobus_read(phydev->mdio.bus, 30, 0);
/* data sheet specifies reset period is 2 msec */
mdelay(2);
/* enable IP175C mode */
err = mdiobus_write(phydev->mdio.bus, 29, 31, 0x175c);
if (err < 0)
return err;
/* Set MII0 speed and duplex (in PHY mode) */
err = mdiobus_write(phydev->mdio.bus, 29, 22, 0x420);
if (err < 0)
return err;
/* reset switch ports */
for (i = 0; i < 5; i++) {
err = mdiobus_write(phydev->mdio.bus, i,
MII_BMCR, BMCR_RESET);
if (err < 0)
return err;
}
for (i = 0; i < 5; i++)
err = mdiobus_read(phydev->mdio.bus, i, MII_BMCR);
mdelay(2);
full_reset_performed = 1;
}
if (phydev->mdio.addr != 4) {
phydev->state = PHY_RUNNING;
phydev->speed = SPEED_100;
phydev->duplex = DUPLEX_FULL;
phydev->link = 1;
netif_carrier_on(phydev->attached_dev);
}
return 0;
}
static int ip1xx_reset(struct phy_device *phydev)
{
int bmcr;
/* Software Reset PHY */
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
bmcr |= BMCR_RESET;
bmcr = phy_write(phydev, MII_BMCR, bmcr);
if (bmcr < 0)
return bmcr;
do {
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
} while (bmcr & BMCR_RESET);
return 0;
}
static int ip1001_config_init(struct phy_device *phydev)
{
int c;
c = ip1xx_reset(phydev);
if (c < 0)
return c;
/* Enable Auto Power Saving mode */
c = phy_read(phydev, IP1001_SPEC_CTRL_STATUS_2);
if (c < 0)
return c;
c |= IP1001_APS_ON;
c = phy_write(phydev, IP1001_SPEC_CTRL_STATUS_2, c);
if (c < 0)
return c;
if (phy_interface_is_rgmii(phydev)) {
c = phy_read(phydev, IP10XX_SPEC_CTRL_STATUS);
if (c < 0)
return c;
c &= ~(IP1001_RXPHASE_SEL | IP1001_TXPHASE_SEL);
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
c |= (IP1001_RXPHASE_SEL | IP1001_TXPHASE_SEL);
else if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)
c |= IP1001_RXPHASE_SEL;
else if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)
c |= IP1001_TXPHASE_SEL;
c = phy_write(phydev, IP10XX_SPEC_CTRL_STATUS, c);
if (c < 0)
return c;
}
return 0;
}
static int ip101a_g_config_init(struct phy_device *phydev)
{
int c;
c = ip1xx_reset(phydev);
if (c < 0)
return c;
/* INTR pin used: speed/link/duplex will cause an interrupt */
c = phy_write(phydev, IP101A_G_IRQ_CONF_STATUS, IP101A_G_IRQ_DEFAULT);
if (c < 0)
return c;
/* Enable Auto Power Saving mode */
c = phy_read(phydev, IP10XX_SPEC_CTRL_STATUS);
c |= IP101A_G_APS_ON;
return phy_write(phydev, IP10XX_SPEC_CTRL_STATUS, c);
}
static int ip175c_read_status(struct phy_device *phydev)
{
if (phydev->mdio.addr == 4) /* WAN port */
genphy_read_status(phydev);
else
/* Don't need to read status for switch ports */
phydev->irq = PHY_IGNORE_INTERRUPT;
return 0;
}
static int ip175c_config_aneg(struct phy_device *phydev)
{
if (phydev->mdio.addr == 4) /* WAN port */
genphy_config_aneg(phydev);
return 0;
}
static int ip101a_g_ack_interrupt(struct phy_device *phydev)
{
int err = phy_read(phydev, IP101A_G_IRQ_CONF_STATUS);
if (err < 0)
return err;
return 0;
}
static struct phy_driver icplus_driver[] = {
{
.phy_id = 0x02430d80,
.name = "ICPlus IP175C",
.phy_id_mask = 0x0ffffff0,
.features = PHY_BASIC_FEATURES,
.config_init = &ip175c_config_init,
.config_aneg = &ip175c_config_aneg,
.read_status = &ip175c_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430d90,
.name = "ICPlus IP1001",
.phy_id_mask = 0x0ffffff0,
.features = PHY_GBIT_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.config_init = &ip1001_config_init,
.config_aneg = &genphy_config_aneg,
.read_status = &genphy_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430c54,
.name = "ICPlus IP101A/G",
.phy_id_mask = 0x0ffffff0,
.features = PHY_BASIC_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.flags = PHY_HAS_INTERRUPT,
.ack_interrupt = ip101a_g_ack_interrupt,
.config_init = &ip101a_g_config_init,
.config_aneg = &genphy_config_aneg,
.read_status = &genphy_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
} };
module_phy_driver(icplus_driver);
static struct mdio_device_id __maybe_unused icplus_tbl[] = {
{ 0x02430d80, 0x0ffffff0 },
{ 0x02430d90, 0x0ffffff0 },
{ 0x02430c54, 0x0ffffff0 },
{ }
};
MODULE_DEVICE_TABLE(mdio, icplus_tbl);
这是原始驱动,现在我们为了支持IP1001C 将IP1001C 的驱动部分合成进来
/*
* Driver for ICPlus PHYs
*
* Copyright (c) 2007 Freescale Semiconductor, Inc.
*
* 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 <linux/kernel.h>
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/unistd.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/spinlock.h>
#include <linux/mm.h>
#include <linux/module.h>
#include <linux/mii.h>
#include <linux/ethtool.h>
#include <linux/phy.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
MODULE_DESCRIPTION("ICPlus IP175C/IP101A/IP101G/IC1001/IP1001C PHY drivers");
MODULE_AUTHOR("Michael Barkowski");
MODULE_LICENSE("GPL");
/* IP101A/G - IP1001 */
#define IP10XX_SPEC_CTRL_STATUS 16 /* Spec. Control Register */
#define IP1001_RXPHASE_SEL (1<<0) /* Add delay on RX_CLK */
#define IP1001_TXPHASE_SEL (1<<1) /* Add delay on TX_CLK */
#define IP1001_SPEC_CTRL_STATUS_2 20 /* IP1001 Spec. Control Reg 2 */
#define IP1001_APS_ON 11 /* IP1001 APS Mode bit */
#define IP101A_G_APS_ON 2 /* IP101A/G APS Mode bit */
#define IP101A_G_IRQ_CONF_STATUS 0x11 /* Conf Info IRQ & Status Reg */
#define IP101A_G_IRQ_PIN_USED (1<<15) /* INTR pin used */
#define IP101A_G_IRQ_DEFAULT IP101A_G_IRQ_PIN_USED
//Sam add for IP1001C
#define IP1001C_MMD_CTRL 0x0D
#define IP1001C_MMD_DATA 0x0E
#define IP1001C_EXT_STATUS 0x0F
#define IP1001C_SPEC_CTRL_STATUS 0x10
#define IP1001C_APS_ON (0x1 << 7)
#define IP1001C_PAGE_SEL 0x14
#define REG_MODE_FIBER 0x01
#define REG_MODE_TP 0x02
#define REG_MODE_AUTO 0x03
static void ip1001c_write_mmd(
struct phy_device *phydev, unsigned int reg, unsigned short val)
{
phy_write(phydev, IP1001C_MMD_CTRL, 0x001F);
phy_write(phydev, IP1001C_MMD_DATA, reg);
phy_write(phydev, IP1001C_MMD_CTRL, 0x401F);
phy_write(phydev, IP1001C_MMD_DATA, val);
phy_write(phydev, IP1001C_MMD_CTRL, 0x0000); //to avoid broadcast write
}
static void set_reg_mode(struct phy_device *phydev, unsigned char rmode)
{
phy_write(phydev, IP1001C_PAGE_SEL, 0);
switch (rmode)
{
case REG_MODE_FIBER:
ip1001c_write_mmd(phydev, 0x031B, 0x0000); break;
case REG_MODE_TP:
ip1001c_write_mmd(phydev, 0x031B, 0x0100); break;
case REG_MODE_AUTO:
ip1001c_write_mmd(phydev, 0x031B, 0x0A00); break;
}
}
static unsigned char get_reg_mode(struct phy_device *phydev)
{
int ext_satus;
phy_write(phydev, IP1001C_PAGE_SEL, 0);
ext_satus = phy_read(phydev, IP1001C_EXT_STATUS);
if (ext_satus & 0x3000) //link at TP port
{
return (unsigned char)REG_MODE_TP;
}
else //link at Fiber port
{
return (unsigned char)REG_MODE_FIBER;
}
}
static int ip175c_config_init(struct phy_device *phydev)
{
int err, i;
static int full_reset_performed;
if (full_reset_performed == 0) {
/* master reset */
err = mdiobus_write(phydev->mdio.bus, 30, 0, 0x175c);
if (err < 0)
return err;
/* ensure no bus delays overlap reset period */
err = mdiobus_read(phydev->mdio.bus, 30, 0);
/* data sheet specifies reset period is 2 msec */
mdelay(2);
/* enable IP175C mode */
err = mdiobus_write(phydev->mdio.bus, 29, 31, 0x175c);
if (err < 0)
return err;
/* Set MII0 speed and duplex (in PHY mode) */
err = mdiobus_write(phydev->mdio.bus, 29, 22, 0x420);
if (err < 0)
return err;
/* reset switch ports */
for (i = 0; i < 5; i++) {
err = mdiobus_write(phydev->mdio.bus, i,
MII_BMCR, BMCR_RESET);
if (err < 0)
return err;
}
for (i = 0; i < 5; i++)
err = mdiobus_read(phydev->mdio.bus, i, MII_BMCR);
mdelay(2);
full_reset_performed = 1;
}
if (phydev->mdio.addr != 4) {
phydev->state = PHY_RUNNING;
phydev->speed = SPEED_100;
phydev->duplex = DUPLEX_FULL;
phydev->link = 1;
netif_carrier_on(phydev->attached_dev);
}
return 0;
}
static int ip1xx_reset(struct phy_device *phydev)
{
int bmcr;
/* Software Reset PHY */
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
bmcr |= BMCR_RESET;
bmcr = phy_write(phydev, MII_BMCR, bmcr);
if (bmcr < 0)
return bmcr;
do {
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
} while (bmcr & BMCR_RESET);
return 0;
}
static int ip1001c_reset(struct phy_device *phydev)
{
int i, bmcr;
for (i=0; i < 2; i++)
{
if (i==0)
set_reg_mode(phydev, REG_MODE_FIBER);
else
set_reg_mode(phydev, REG_MODE_TP);
phy_write(phydev, IP1001C_PAGE_SEL, 0);
// Software Reset PHY
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
bmcr |= BMCR_RESET;
bmcr = phy_write(phydev, MII_BMCR, bmcr);
if (bmcr < 0)
return bmcr;
do {
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
} while (bmcr & BMCR_RESET);
}
return 0;
}
static int ip1001_config_init(struct phy_device *phydev)
{
int c;
c = ip1xx_reset(phydev);
if (c < 0)
return c;
/* Enable Auto Power Saving mode */
c = phy_read(phydev, IP1001_SPEC_CTRL_STATUS_2);
if (c < 0)
return c;
c |= IP1001_APS_ON;
c = phy_write(phydev, IP1001_SPEC_CTRL_STATUS_2, c);
if (c < 0)
return c;
if (phy_interface_is_rgmii(phydev)) {
c = phy_read(phydev, IP10XX_SPEC_CTRL_STATUS);
if (c < 0)
return c;
c &= ~(IP1001_RXPHASE_SEL | IP1001_TXPHASE_SEL);
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
c |= (IP1001_RXPHASE_SEL | IP1001_TXPHASE_SEL);
else if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)
c |= IP1001_RXPHASE_SEL;
else if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)
c |= IP1001_TXPHASE_SEL;
c = phy_write(phydev, IP10XX_SPEC_CTRL_STATUS, c);
if (c < 0)
return c;
}
return 0;
}
static int ip1001c_config_init(struct phy_device *phydev)
{
int c;
c = ip1001c_reset(phydev);
if (c < 0)
return c;
set_reg_mode(phydev, REG_MODE_TP);
//enable Auto Power Saving mode
phy_write(phydev, IP1001C_PAGE_SEL, 0x0000);
c = phy_read(phydev, IP1001C_SPEC_CTRL_STATUS);
if (c >= 0)
{
c |= IP1001C_APS_ON;
phy_write(phydev, IP1001C_SPEC_CTRL_STATUS, c);
}
phy_write(phydev, 0x10, 0x3BA8);
phy_write(phydev, 0x1C, 0xEC40);
phy_write(phydev, IP1001C_PAGE_SEL, 0x0002);
phy_write(phydev, 0x10, 0x5A09);
phy_write(phydev, IP1001C_PAGE_SEL, 0x0003);
phy_write(phydev, 0x10, 0xC0CF);
phy_write(phydev, 0x18, 0x3C38);
phy_write(phydev, IP1001C_PAGE_SEL, 0x0004);
phy_write(phydev, 0x1A, 0x0608);
phy_write(phydev, IP1001C_PAGE_SEL, 0x0010);
phy_write(phydev, 0x1D, 0xB000);
phy_write(phydev, 0x1E, 0xB2B2);
phy_write(phydev, 0x1F, 0x7AB2);
phy_write(phydev, IP1001C_PAGE_SEL, 0x0000);
phy_write(phydev, 0x00, 0x1340);
set_reg_mode(phydev, REG_MODE_FIBER);
phy_write(phydev, 0x15, 0x2470);
set_reg_mode(phydev, REG_MODE_AUTO);
return 0;
}
static int ip101a_g_config_init(struct phy_device *phydev)
{
int c;
c = ip1xx_reset(phydev);
if (c < 0)
return c;
/* INTR pin used: speed/link/duplex will cause an interrupt */
c = phy_write(phydev, IP101A_G_IRQ_CONF_STATUS, IP101A_G_IRQ_DEFAULT);
if (c < 0)
return c;
/* Enable Auto Power Saving mode */
c = phy_read(phydev, IP10XX_SPEC_CTRL_STATUS);
c |= IP101A_G_APS_ON;
return phy_write(phydev, IP10XX_SPEC_CTRL_STATUS, c);
}
static int ip175c_read_status(struct phy_device *phydev)
{
if (phydev->mdio.addr == 4) /* WAN port */
genphy_read_status(phydev);
else
/* Don't need to read status for switch ports */
phydev->irq = PHY_IGNORE_INTERRUPT;
return 0;
}
static int ip1001c_read_status(struct phy_device *phydev)
{
int err;
int bmcr;
int lpa;
unsigned char mode = 0;
phy_write(phydev, IP1001C_PAGE_SEL, 0);
if (get_reg_mode(phydev) == REG_MODE_FIBER)
set_reg_mode(phydev, REG_MODE_FIBER);
else
set_reg_mode(phydev, REG_MODE_TP);
phy_write(phydev, IP1001C_PAGE_SEL, 0);
/* Update the link, but return if there was an error */
err = genphy_update_link(phydev);
if (err)
return err;
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
if (bmcr & BMCR_FULLDPLX)
phydev->duplex = DUPLEX_FULL;
else
phydev->duplex = DUPLEX_HALF;
if (bmcr & BMCR_SPEED1000)
phydev->speed = SPEED_1000;
else if (bmcr & BMCR_SPEED100)
phydev->speed = SPEED_100;
else
phydev->speed = SPEED_10;
phydev->pause = 0;
phydev->asym_pause = 0;
lpa = phy_read(phydev, MII_LPA);
if (lpa < 0)
{
return lpa;
}
if (mode == REG_MODE_TP) //link at TP port
{
if (phydev->duplex == DUPLEX_FULL)
{
phydev->pause = lpa & LPA_PAUSE_CAP ? 1 : 0;
phydev->asym_pause = lpa & LPA_PAUSE_ASYM ? 1 : 0;
}
}
else //link at Fiber port
{
if (phydev->speed == SPEED_1000)
{
phydev->pause = lpa & LPA_1000XPAUSE ? 1 : 0;
phydev->asym_pause = lpa & LPA_1000XPAUSE_ASYM ? 1 : 0;
}
}
set_reg_mode(phydev, REG_MODE_AUTO);
return 0;
}
static int ip175c_config_aneg(struct phy_device *phydev)
{
if (phydev->mdio.addr == 4) /* WAN port */
genphy_config_aneg(phydev);
return 0;
}
static int ip1001c_config_aneg(struct phy_device *phydev)
{
int bmcr, adv;
int err;
set_reg_mode(phydev, REG_MODE_FIBER);
phy_write(phydev, IP1001C_PAGE_SEL, 0);
if (AUTONEG_ENABLE != phydev->autoneg)
{
phydev->pause = 0;
phydev->asym_pause = 0;
bmcr = 0;
if (SPEED_1000 == phydev->speed)
bmcr |= BMCR_SPEED1000;
else if (SPEED_100 == phydev->speed)
bmcr |= BMCR_SPEED100;
if (DUPLEX_FULL == phydev->duplex)
bmcr |= BMCR_FULLDPLX;
err = phy_write(phydev, MII_BMCR, bmcr);
if (err < 0)
return err;
}
else
{
phydev->advertising &= phydev->supported;
adv = phy_read(phydev, MII_ADVERTISE);
if (adv < 0)
return adv;
adv &= ~(ADVERTISE_1000XPAUSE | ADVERTISE_1000XPSE_ASYM);
if (phydev->advertising & ADVERTISED_Pause)
adv |= ADVERTISE_1000XPAUSE;
if (phydev->advertising & ADVERTISED_Asym_Pause)
adv |= ADVERTISE_1000XPSE_ASYM;
err = phy_write(phydev, MII_ADVERTISE, adv);
if (err < 0)
return err;
bmcr = phy_read(phydev, MII_BMCR);
if (bmcr < 0)
return bmcr;
bmcr |= (BMCR_SPEED1000 | BMCR_SPEED100 | BMCR_FULLDPLX |
BMCR_ANENABLE | BMCR_ANRESTART);
err = phy_write(phydev, MII_BMCR, bmcr);
if (err < 0)
return err;
}
set_reg_mode(phydev, REG_MODE_TP);
phy_write(phydev, IP1001C_PAGE_SEL, 0);
err = genphy_config_aneg(phydev);
set_reg_mode(phydev, REG_MODE_AUTO);
return err;
}
static int ip101a_g_ack_interrupt(struct phy_device *phydev)
{
int err = phy_read(phydev, IP101A_G_IRQ_CONF_STATUS);
if (err < 0)
return err;
return 0;
}
static struct phy_driver icplus_driver[] = {
{
.phy_id = 0x02430d80,
.name = "ICPlus IP175C",
.phy_id_mask = 0x0ffffff0,
.features = PHY_BASIC_FEATURES,
.config_init = &ip175c_config_init,
.config_aneg = &ip175c_config_aneg,
.read_status = &ip175c_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430d90,
.name = "ICPlus IP1001",
.phy_id_mask = 0x0ffffff0,
.features = PHY_GBIT_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.config_init = &ip1001_config_init,
.config_aneg = &genphy_config_aneg,
.read_status = &genphy_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430c50,
.name = "ICPlus IP1001C FX PHY",
.phy_id_mask = 0x0ffffff0,
.features = PHY_GBIT_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.config_init = &ip1001c_config_init,
.config_aneg = &ip1001c_config_aneg,
.read_status = &ip1001c_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430c20,
.name = "ICPlus IP1001C GPHY",
.phy_id_mask = 0x0ffffff0,
.features = PHY_GBIT_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.config_init = &ip1001c_config_init,
.config_aneg = &ip1001c_config_aneg,
.read_status = &ip1001c_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
}, {
.phy_id = 0x02430c54,
.name = "ICPlus IP101A/G",
.phy_id_mask = 0x0ffffff0,
.features = PHY_BASIC_FEATURES | SUPPORTED_Pause |
SUPPORTED_Asym_Pause,
.flags = PHY_HAS_INTERRUPT,
.ack_interrupt = ip101a_g_ack_interrupt,
.config_init = &ip101a_g_config_init,
.config_aneg = &genphy_config_aneg,
.read_status = &genphy_read_status,
.suspend = genphy_suspend,
.resume = genphy_resume,
} };
module_phy_driver(icplus_driver);
static struct mdio_device_id __maybe_unused icplus_tbl[] = {
{ 0x02430d80, 0x0ffffff0 },
{ 0x02430d90, 0x0ffffff0 },
{ 0x02430c50, 0x0ffffff0 },
{ 0x02430c20, 0x0ffffff0 },
{ 0x02430c54, 0x0ffffff0 },
{ }
};
MODULE_DEVICE_TABLE(mdio, icplus_tbl);
将驱动移植合成后,进行编译,当然添加进来的函数,可能编译有问题,请视情况进行驱动的更改
更改后重现编译驱动
开机加载:
Starting kernel ...
uboot time: 2976857 us
[ 0.000000@0] Booting Linux on physical CPU 0x0
[ 0.000000@0] Linux version 4.9.113 (yxt-rd01@yxtrd01-Super-Server) (gcc version 6.3.1 20170109 (Linaro GCC 6.3-2017.02) ) #1 SMP PREEMPT Mon Aug 23 17:56:15 CST 2021
[ 0.000000@0] CPU: ARMv7 Processor [411fd050] revision 0 (ARMv7), cr=10c5383d
[ 0.000000@0] CPU: div instructions available: patching division code
[ 0.000000@0] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000@0] Machine model: Amlogic
[ 0.000000@0] 07400000 - 07500000, 1024 KB, ramoops@0x07400000
[ 0.000000@0] 05000000 - 05400000, 4096 KB, linux,secmon
[ 0.000000@0] df800000 - e0000000, 8192 KB, linux,meson-fb
[ 0.000000@0] 78000000 - 80000000, 131072 KB, linux,ion-dev
[ 0.000000@0] ee000000 - f0800000, 40960 KB, linux,di_cma
[ 0.000000@0] Reserved memory: regions without no-map are not yet supported
[ 0.000000@0] 64c00000 - 78000000, 315392 KB, linux,codec_mm_cma
[ 0.000000@0] f0900000 - f0900000, 0 KB, linux,codec_mm_reserved
[ 0.000000@0] ea000000 - ee000000, 65536 KB, linux,vdin0_cma
[ 0.000000@0] e6000000 - ea000000, 65536 KB, linux,vdin1_cma
[ 0.000000@0] e4000000 - e6000000, 32768 KB, linux,vm0_cma
[ 0.000000@0] cma: Reserved 8 MiB at 0xe3800000
[ 0.000000@0] Memory policy: Data cache writealloc
[ 0.000000@0] psci: probing for conduit method from DT.
[ 0.000000@0] psci: PSCIv1.0 detected in firmware.
[ 0.000000@0] psci: Using standard PSCI v0.2 function IDs
[ 0.000000@0] psci: MIGRATE_INFO_TYPE not supported.
[ 0.000000@0] psci: SMC Calling Convention v1.1
[ 0.000000@0] percpu: Embedded 15 pages/cpu @ee167000 s32140 r8192 d21108 u61440
[ 0.000000@0] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 983554
[ 0.000000@0] Kernel command line: init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xff803000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 hdr_policy=0 hdr_priority= otg_device=0 reboot_mode_android=normal logo=osd0,loaded,0x3d800000 vout=1080p60hz,enable panel_type=lcd_1 lcd_ctrl=0x00000000 hdmitx=,444,8bit hdmimode=1080p60hz hdmichecksum=0xcbc80000 dolby_vision_on=0 frac_rate_policy=1 hdmi_read_edid=1 cvbsmode=576cvbs osd_reverse=0 video_reverse=0 irq_check_en=0 androidboot.selinux=permissive androidboot.firstboot=0 jtag=disable androidboot.hardware=amlogic androidboot.bootloader=U-Boot 2015.01 androidboot.build.expect.baseband=N/A androidboot.serialno=1234567890 mac=90:0e:b3:2c:ea:da androidboot.mac=90:0e:b3:2c:ea:da androidboot.oem.key1=ATV00104319 androidboot.rpmb_state=0 ro rootwait skip_initramfs androidboot.dtbo_idx=0 --cmdline root=/dev/mmcblk0p18 buildvariant=userdebug
[ 0.000000@0] am_vecm: boot hdr_policy: 0
[ 0.000000@0] fb: osd0
[ 0.000000@0] fb: loaded
[ 0.000000@0] fb: 0x3d800000
[ 0.000000@0] vout: 1080p60hz
[ 0.000000@0] vout: enable: 1
[ 0.000000@0] lcd: panel_type: lcd_1
[ 0.000000@0] lcd: lcd_ctrl: 0x00000000
[ 0.000000@0] vout: get hdmimode: 1080p60hz
[ 0.000000@0] vout: get hdmi checksum: 0xcbc80000
[ 0.000000@0] get_dolby_on: 0
[ 0.000000@0] hdmitx: hdmitx boot frac_rate_policy: 1
[ 0.000000@0] vout: get cvbsmode: 576cvbs
[ 0.000000@0] vpp_axis_reverse: bootargs is 0
[ 0.000000@0] DI: di_read_canvas_reverse: bootargs is 0.
[ 0.000000@0] vdin_get_video_reverse: bootargs is 0.
[ 0.000000@0] phlock_phase_config: bootargs is 0.
[ 0.000000@0] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000@0] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000@0] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000@0] Memory: 3211120K/3940352K available (14336K kernel code, 1336K rwdata, 5108K rodata, 1024K init, 1395K bss, 57488K reserved, 671744K cma-reserved, 2487296K highmem)
[ 0.000000@0] Virtual kernel memory layout:
[ 0.000000@0] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000@0] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000@0] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
[ 0.000000@0] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
[ 0.000000@0] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000@0] modules : 0xbc000000 - 0xbfe00000 ( 62 MB)
[ 0.000000@0] .text : 0xc0108000 - 0xc1000000 (15328 kB)
[ 0.000000@0] .init : 0xc1600000 - 0xc1700000 (1024 kB)
[ 0.000000@0] .data : 0xc1700000 - 0xc184e2e8 (1337 kB)
[ 0.000000@0] .bss : 0xc1850000 - 0xc19ace84 (1396 kB)
[ 0.000000@0] zone:Normal, spaned pages:196352, total:196352
[ 0.000000@0] zone:HighMem, spaned pages:788736, total:985088
[ 0.000000@0] page_trace_pre_work, trace buffer:edc00000, size:3c2000, used:edfc2000, end:ee000000
[ 0.000000@0] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000@0] Preemptible hierarchical RCU implementation.
[ 0.000000@0] Build-time adjustment of leaf fanout to 32.
[ 0.000000@0] RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[ 0.000000@0] RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=4
[ 0.000000@0] NR_IRQS:16 nr_irqs:16 16
[ 0.000000@0] irq_meson_gpio: 100 to 8 gpio interrupt mux initialized
[ 0.000000@0] g12a_aoclkc_init: register ao clk ok!
[ 0.000000@0] Meson chip version = RevB (2B:B - 1:0)
[ 0.000000@0] meson_g12a_sdemmc_init: register amlogic sdemmc clk
[ 0.000000@0] meson_g12a_sdemmc_init: register amlogic sdemmc clk
[ 0.000000@0] meson_g12a_gpu_init: register meson gpu clk
[ 0.000000@0] meson_g12a_media_init: register meson media clk
[ 0.000000@0] meson_g12a_misc_init: register amlogic g12a misc clks
[ 0.000000@0] meson_g12a_misc_init: done.
[ 0.000000@0] g12a_clkc_init initialization complete
[ 0.000000@0] sm1 clk probe ok
[ 0.000000@0] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (virt).
[ 0.000000@0] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[ 0.000005@0] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[ 0.000017@0] Switching to timer-based delay loop, resolution 41ns
[ 0.000063@0] meson_bc_timer: mclk->mux_reg =f080c190,mclk->reg =f080e194
[ 0.000719@0] Console: colour dummy device 80x30
[ 0.000746@0] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[ 0.000765@0] pid_max: default: 32768 minimum: 301
[ 0.000823@0] thread_stack_cache_init, vmap:c012a980, bitmap:c0130400, cache page:e3400
[ 0.000837@0] thread_stack_cache_init, allocation vm area:c012c180, addr:bc000000, size:3001000
[ 0.000908@0] Security Framework initialized
[ 0.000921@0] SELinux: Initializing.
[ 0.001011@0] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.001027@0] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.001835@0] CPU: Testing write buffer coherency: ok
[ 0.001880@0] ftrace: allocating 44814 entries in 132 pages
[ 0.087742@0] sched-energy: CPU device node has no sched-energy-costs
[ 0.087763@0] CPU0: update cpu_capacity 1024
[ 0.087772@0] CPU0: thread 0, cpu 0, socket 0, mpidr 81000000
[ 0.087802@0] Setting up static identity map for 0x200000 - 0x200058
[ 0.132505@0] secmon: can't fine clear_range
[ 0.180429@1] CPU1: update cpu_capacity 1024
[ 0.180434@1] CPU1: thread 0, cpu 1, socket 0, mpidr 81000100
[ 0.212538@2] CPU2: update cpu_capacity 1024
[ 0.212543@2] CPU2: thread 0, cpu 2, socket 0, mpidr 81000200
[ 0.244661@3] CPU3: update cpu_capacity 1024
[ 0.244665@3] CPU3: thread 0, cpu 3, socket 0, mpidr 81000300
[ 0.244779@0] Brought up 4 CPUs
[ 0.244810@0] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[ 0.244818@0] CPU: All CPU(s) started in SVC mode.
[ 0.245754@0] addr:bc045cce is in kernel, size fix 4096->10, data:mode=0755
[ 0.245901@0] devtmpfs: initialized
[ 0.279236@0] VFP support v0.3: implementor 41 architecture 3 part 40 variant 5 rev 2
[ 0.279780@0] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.279807@0] futex hash table entries: 1024 (order: 4, 65536 bytes)
[ 0.280025@0] pinctrl core: initialized pinctrl subsystem
[ 0.281370@0] NET: Registered protocol family 16
[ 0.285491@0] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.285506@0] schedtune: init normalization constants...
[ 0.285515@0] schedtune: no energy model data
[ 0.285523@0] schedtune: disabled!
[ 0.300359@0] cpuidle: using governor menu
[ 0.300483@0] register canvas platform driver
[ 0.300534@0] register rdma platform driver
[ 0.304238@0] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.304253@0] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.304689@0] clkmsr: clkmsr: driver init
[ 0.304700@0] codec_mm_module_init
[ 0.304751@0] media_configs_system_init
[ 0.305106@0] aml_watch_point_probe, in, wp:4
[ 0.306026@0] pstore: using zlib compression
[ 0.306721@0] console [pstore-1] enabled
[ 0.306766@0] pstore: Registered ramoops as persistent store backend
[ 0.306780@0] ramoops: attached 0x100000@0x7400000, ecc: 0/0
[ 0.306794@0] ramoops: ramoops_io_en:0 1 old:0x0 ftrace_size:0x40000
[ 0.309632@0] aml_iomap: amlogic iomap probe done
[ 0.310388@0] vpu: driver version: v20190329(10-sm1)
[ 0.310407@0] vpu: load vpu_clk: 666666667Hz(7)
[ 0.310633@0] vpu: clktree_init
[ 0.310722@0] vpu: vpu_probe OK
[ 0.316853@0] clkmsr: msr_clk_reg0=f09c0004,msr_clk_reg2=f09c200c
[ 0.316879@0] clkmsr: msr_ring_reg0=f09c45fc
[ 0.320933@0] audio_clocks: audio_clocks_probe done
[ 0.324951@0] aml_snd_reg_map[0], reg:ff661000, size:400
[ 0.324987@0] aml_snd_reg_map[1], reg:ff660000, size:1000
[ 0.325015@0] aml_snd_reg_map[2], reg:ff661400, size:400
[ 0.325043@0] aml_snd_reg_map[3], reg:ff662000, size:1000
[ 0.325070@0] aml_snd_reg_map[4], reg:ffd01000, size:1000
[ 0.325097@0] aml_snd_reg_map[5], reg:ff661800, size:400
[ 0.325127@0] aml_snd_reg_map[6], reg:ff661c00, size:104
[ 0.325152@0] aml_snd_reg_map[7], reg:ff664000, size:104
[ 0.325162@0] amlogic auge_snd_iomap probe done
[ 0.327899@0] aml_vdac_config_probe: cpu_id:6, name:meson-sm1-vdac
[ 0.328172@0] aml_vdac_probe: ok
[ 0.328393@0] canvas_probe reg=ff638000,size=2000
[ 0.328422@0] canvas maped reg_base =f09d8000
[ 0.339273@0] rdma_probe,cpu_type:1, ver:0, len:8
[ 0.339580@0] rdma_register, rdma_table_addr f0ad1000 rdma_table_addr_phy e3840000 reg_buf ed718000
[ 0.339598@0] rdma_register success, handle 1 table_size 32768
[ 0.339611@0] set_rdma_handle video rdma handle = 1.
[ 0.339657@0] classs created ok
[ 0.339681@0] classs file created ok
[ 0.345338@0] cvbs_out: cvbsout_probe, cpu_id:6,name:meson-sm1-cvbsout
[ 0.345533@0] cvbs_out: find performance_pal config
[ 0.345557@0] cvbs_out: clk path:0x0
[ 0.345570@0] vout: vout1: register server: cvbs_vout_server
[ 0.345584@0] cvbs_out: register cvbs module server ok
[ 0.345594@0] vout: vout2: register server: cvbs_vout2_server
[ 0.345607@0] cvbs_out: register cvbs module vout2 server ok
[ 0.345622@0] cvbs_out: chrdev devno 264241152 for disp
[ 0.345939@0] cvbs_out: create cdev cvbs
[ 0.345953@0] cvbs_out: cvbsout_probe OK
[ 0.346817@0] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma
[ 0.346951@0] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma
[ 0.346963@0] codec_mm_probe ok
[ 0.350222@0] earc_platform_probe
[ 0.350341@0] regmap_resource, rx_cmdc, start:0xff663800, size:0x400
[ 0.350472@0] regmap_resource, rx_dmac, start:0xff663c00, size:0x200
[ 0.350586@0] regmap_resource, rx_top, start:0xff663e00, size:0x200
[ 0.350658@0] EARC ff663800.earc: Can't get earc gate
[ 0.350940@0] EARC ff663800.earc: Check whether support eARC TX
[ 0.350959@0] EARC ff663800.earc: Check whether support eARC TX
[ 0.350977@0] EARC ff663800.earc: Check whether support eARC TX
[ 0.350992@0] EARC ff663800.earc: Check whether support eARC TX
[ 0.351039@0] EARC ff663800.earc: platform get irq earc_tx failed, Check whether support eARC TX
[ 0.351053@0] earc_platform_probe, irq_earc_rx:48, irq_earc_tx:-6
[ 0.351505@3] earc_rx_isr EARCRX_CMDC_IDLE1
[ 0.351537@0] earc_platform_probe, register soc platform
[ 0.688078@0] vgaarb: loaded
[ 0.688466@0] SCSI subsystem initialized
[ 0.688856@0] usbcore: registered new interface driver usbfs
[ 0.688949@0] usbcore: registered new interface driver hub
[ 0.689060@0] usbcore: registered new device driver usb
[ 0.689226@0] Linux video capture interface: v2.00
[ 0.689383@0] pps_core: LinuxPPS API ver. 1 registered
[ 0.689395@0] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.689433@0] PTP clock support registered
[ 0.690399@0] secmon: reserve_mem_size:0x300000
[ 0.690554@0] secmon secmon: assigned reserved memory node linux,secmon
[ 0.690910@0] secmon: get page:ee27f000, 5000
[ 0.690926@0] secmon: share in base: 0xc50fe000, share out base: 0xc50ff000
[ 0.690938@0] secmon: phy_in_base: 0x50fe000, phy_out_base: 0x50ff000
[ 0.691314@0] fb: osd_init_module
[ 0.691977@0] fb: viu vsync irq: 58
[ 0.692007@0] fb: viu2 vsync irq: 67
[ 0.692145@0] 0x000000d8:Y=d8,U=0,V=0
[ 0.692157@0] 0x000000d9:Y=d9,U=0,V=0
[ 0.692168@0] 0x000000da:Y=da,U=0,V=0
[ 0.692180@0] 0x000000db:Y=db,U=0,V=0
[ 0.692190@0] 0x000000dc:Y=dc,U=0,V=0
[ 0.692202@0] 0x000000dd:Y=dd,U=0,V=0
[ 0.692628@0] fb: osd_rdma_init: rdma_table p=0xe3848000,op=0xe3848000 , v=0xf0ada000
[ 0.692705@0] rdma_register, rdma_table_addr f0adc000 rdma_table_addr_phy e3849000 reg_buf ed7c6000
[ 0.692721@0] rdma_register success, handle 2 table_size 4096
[ 0.692734@0] fb: osd_rdma_init:osd rdma handle = 2.
[ 0.692759@0] fb: mem_size: 0x800000
[ 0.692769@0] fb: mem_size: 0x1980000
[ 0.692779@0] fb: mem_size: 0x100000
[ 0.692789@0] fb: mem_size: 0x100000
[ 0.692799@0] fb: mem_size: 0x800000
[ 0.692883@0] meson-fb fb: assigned reserved memory node linux,meson-fb
[ 0.692897@0] fb: reserved memory base:0xdf800000, size:800000
[ 0.693332@0] vout: error: invalid vinfo1. current vmode is not supported
[ 0.693350@0] fb: init fbdev bpp is:32
[ 0.695375@0] fb: set osd0 reverse as NONE
[ 0.695402@0] vout: error: invalid vinfo1. current vmode is not supported
[ 0.702629@0] fb: osd probe OK
[ 0.703686@0] hdmitx: system: amhdmitx_probe start
[ 0.703701@0] hdmitx: system: Ver: 20190815
[ 0.703741@0] hdmitx: system: hdmitx_device.chip_type : 12
[ 0.703794@0] hdmitx: system: not find match pwr-ctl
[ 0.703846@0] hdmitx: system: not find drm_amhdmitx
[ 0.703888@0] hdmitx: system: hpd irq = 51
[ 0.704012@0] hdmitx: system: hdcp22_tx_skp failed to probe
[ 0.704030@0] hdmitx: system: hdcp22_tx_esm failed to probe
[ 0.704672@0] hdmitx: hdmitx20: Mapped PHY: 0xffd00000
[ 0.704702@0] hdmitx: hdmitx20: Mapped PHY: 0xff634400
[ 0.704726@0] hdmitx: hdmitx20: Mapped PHY: 0xff900000
[ 0.704746@0] hdmitx: hdmitx20: Mapped PHY: 0xff800000
[ 0.704763@0] hdmitx: hdmitx20: Mapped PHY: 0xff63c000
[ 0.704777@0] hdmitx: hdmitx20: Mapped PHY: 0xffd00000
[ 0.704792@0] hdmitx: hdmitx20: Mapped PHY: 0xff608000
[ 0.704808@0] hdmitx: hdmitx20: Mapped PHY: 0xff600000
[ 0.704823@0] hdmitx: hdmitx20: Mapped PHY: 0xffe01000
[ 0.704843@0] hdmitx: hw: alread display in uboot 0x10
[ 0.704882@0] hdmitx: hw: avmute set to 1
[ 0.704897@0] vout: vout1: register server: hdmitx_vout_server
[ 0.704910@0] vout: vout2: register server: hdmitx_vout2_server
[ 0.705757@0] hdmitx: system: fmt_attr 444,8bit
[ 0.705917@0] hdmitx: system: amhdmitx_probe end
[ 0.706913@0] lcd: driver version: 20200102(8-sm1)
[ 0.713270@0] lcd: detect mode: tablet, fr_auto_policy: 0, key_valid: 0
[ 0.713290@0] lcd: detect resume_type: 0
[ 0.713557@0] lcd: lcd_clktree_probe
[ 0.713571@0] lcd: status: 0
[ 0.713585@0] vout: vout1: register server: lcd_vout_server
[ 0.713599@0] vout: vout2: register server: lcd_vout2_server
[ 0.713613@0] lcd: lcd_get_config from dts
[ 0.713634@0] lcd: no range_setting
[ 0.713721@0] lcd: P070ACB_FT, mipi, 8bit, 600x1024
[ 0.713743@0] lcd: pixel_clk = 49.434MHz, bit_rate = 395.472MHz
[ 0.714151@0] vout: error: invalid vinfo1. current vmode is not supported
[ 0.714165@0] fb: current vmode=invalid, cmd: 0x20000
[ 0.714178@0] lcd: lcd_probe ok
[ 0.714707@0] vout: create vout attribute OK
[ 0.714916@0] vout: vout_fops_create OK
[ 0.714931@0] vout: vout1: register server: nulldisp_vout_server
[ 0.715080@0] vout: tvout monitor interval:500(ms), timeout cnt:20
[ 0.715113@0] hdmitx: hdmitx_set_current_vmode[4726]
[ 0.715124@0] hdmitx: system: recalc before 1080p60hz 60 1
[ 0.715136@0] hdmitx: system: recalc after 1080p60hz 2997 50
[ 0.715145@0] hdmitx: alread display in uboot
[ 0.715156@0] vout: init mode 1080p60hz set ok
[ 0.715167@0] vout: aml_tvout_mode_monitor
[ 0.715185@0] vout: aml_vout_probe OK
[ 0.716686@0] chip type:0x2b
[ 0.717298@0] MEMORY:[100000+f0800000]
[ 0.717316@0] ramdump_probe, storage device:data
[ 0.717327@0] NO valid ramdump args:0 0
[ 0.717354@0] ramdump_probe, set sticky to 8f09
[ 0.717587@0] VFD Driver
[ 0.717901@0] sm1628_init+++++++++++
[ 0.717912@0] ---MDrv_FrontPnl_Init---.
[ 0.717923@0] ---MDrv_TM1623_Init---++++++++++++.
[ 0.717945@0] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.718005@0] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.718060@0] ---MDrv_TM1623_ShowBoot---++++++++++++.
[ 0.728303@1] ---MDrv_TM1623_Write_Adr_Data---++++++++++++.
[ 0.728350@1] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.728416@1] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.728480@1] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.728541@1] ---MDrv_TM1623_WriteData---++++++++++++.
[ 0.728601@1] ---hardware_init---0++++++++++++.
[ 0.728614@1] vfd_ioremap--------sync time--------------
[ 0.728709@1] power vfd key(116) registed.
[ 0.728722@1] volumn-up vfd key(114) registed.
[ 0.728733@1] volumn-down vfd key(115) registed.
[ 0.728743@1] menu vfd key(139) registed.
[ 0.728755@1] up vfd key(402) registed.
[ 0.728766@1] down vfd key(403) registed.
[ 0.728777@1] enter vfd key(28) registed.
[ 0.728920@1] device_create_file completed
[ 0.729276@1] input: vfd_keypad as /devices/platform/meson-vfd/input/input0
[ 0.729293@1] input_register_device completed
[ 0.729317@1] vfd config major:244
[ 0.730673@1] Advanced Linux Sound Architecture Driver Initialized.
[ 0.731665@1] Bluetooth: Core ver 2.22
[ 0.731801@1] NET: Registered protocol family 31
[ 0.731816@1] Bluetooth: HCI device and connection manager initialized
[ 0.731841@1] Bluetooth: HCI socket layer initialized
[ 0.731861@1] Bluetooth: L2CAP socket layer initialized
[ 0.731913@1] Bluetooth: SCO socket layer initialized
[ 0.732803@1] NetLabel: Initializing
[ 0.732820@1] NetLabel: domain hash size = 128
[ 0.732829@1] NetLabel: protocols = UNLABELED CIPSOv4
[ 0.732917@1] NetLabel: unlabeled traffic allowed by default
[ 0.738516@1] clocksource: Switched to clocksource arch_sys_counter
[ 0.824196@1] VFS: Disk quotas dquot_6.6.0
[ 0.824289@1] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.832603@3] hdmitx: edid: EDID Parser:
[ 0.832640@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832650@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832661@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832692@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832711@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832721@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832731@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832742@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832752@3] hdmitx: hdmitx: reach vesa idx MAX
[ 0.832773@3] [RX]-up_phy_addr = 1
[ 0.832807@3] hdmitx: edid: get dtd0 vic: 19
[ 0.832821@3] hdmitx: hdmitx: get PMT vic: 16
[ 0.832836@3] hdmitx: edid: find IEEEOUT
[ 0.832880@3] hdmitx: edid: check sum valid
[ 0.832891@3] hdmitx: edid: check sum valid
[ 0.832907@3] hdmitx: edid: check sum valid
[ 0.832917@3] hdmitx: edid: check sum valid
[ 0.832948@3] hdmitx: edid: blk0 raw data
[ 0.832996@3] hdmitx: edid:
[ 0.832996@3] 00ffffffffffff004c2d630b47324b300a18010380301b782ad111a55555a028
[ 0.832996@3] 0d5054bfef80714f81c0810081809500a9c0b3000101023a801871382d40582c
[ 0.832996@3] 4500dd0c1100001e011d007251d01e206e285500dd0c1100001e000000fd0032
[ 0.832996@3] 4b1e5111000a202020202020000000fc00533232443339300a202020202001cb
[ 0.832996@3]
[ 0.832996@3]
[ 0.833020@3] hdmitx: edid: blk1 raw data
[ 0.833064@3] hdmitx: edid:
[ 0.833064@3] 02031af14690041f131203230907078301000066030c00100080011d00bc52d0
[ 0.833064@3] 1e20b8285540dd0c1100001e8c0ad090204031200c405500dd0c110000188c0a
[ 0.833064@3] d08a20e02d10103e9600dd0c1100001800000000000000000000000000000000
[ 0.833064@3] 00000000000000000000000000000000000000000000000000000000000000c8
[ 0.833064@3]
[ 0.833064@3]
[ 0.833092@3] hdmitx: system: update rx hdr info 0
[ 0.833816@0] hdmitx: system: irq 80000002 0
[ 0.833832@0] earc_hdmitx_hpdst, plugin
[ 0.842196@1] dtv_dmd:[amldtvdemod..]aml_dtvdemod_init.
[ 0.843384@1] NET: Registered protocol family 2
[ 0.844250@1] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.844325@1] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.844407@1] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.844520@1] UDP hash table entries: 512 (order: 2, 16384 bytes)
[ 0.844571@1] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[ 0.844806@1] NET: Registered protocol family 1
[ 0.848199@1] wifi: power_on_pin_OD = 0;
[ 0.848244@1] aml_wifi wifi: [wifi_dev_probe] no power_on_pin2
[ 0.848519@1] aml_wifi wifi: [pwm_double_channel_conf_dt] wifi pwm dt ok
[ 0.848561@1] aml_wifi wifi: [pwm_double_channel_conf] wifi pwm conf ok
[ 0.848576@1] aml_wifi wifi: [wifi_dev_probe] dhd_static_buf setup
[ 0.848588@1] Wifi: bcmdhd_init_wlan_mem: bcmdhd_init_wlan_mem(): 100.10.545.3
[ 0.849652@1] Wifi: bcmdhd_init_wlan_mem: bcmdhd_init_wlan_mem prealloc ok
[ 0.849671@1] aml_wifi wifi: [wifi_dev_probe] interrupt_pin=483
[ 0.849684@1] aml_wifi wifi: [wifi_dev_probe] irq_num=0, irq_trigger_type=1
[ 0.849697@1] aml_wifi wifi: [wifi_dev_probe] power_on_pin=482
[ 0.849710@1] aml_wifi wifi: [wifi_dev_probe] clock_32k_pin=0
[ 0.850116@1] aml_wifi wifi: [wifi_setup_dt] wifi_setup_dt
[ 0.850293@1] aml_wifi wifi: [wifi_setup_dt] irq num is:(79)
[ 0.850309@1] aml_wifi wifi: [wifi_setup_dt] interrupt_pin(483)
[ 0.850343@1] aml_wifi wifi: [wifi_setup_dt] power_on_pin(482)
[ 0.856639@1] enable_pmuserenr_all() start
[ 0.856683@1] enable_pmuserenr_all() end
[ 0.856720@1] hw perfevents: clusterb_enabled = 0
[ 0.856737@1] hw perfevents: cpumasks 0xf, 0x0
[ 0.856797@1] hw perfevents: cluster A irq = 25
[ 0.856949@1] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
[ 0.862789@1] audit: initializing netlink subsys (disabled)
[ 0.862911@1] audit: type=2000 audit(0.800:1): initialized
[ 0.864497@2] workingset: timestamp_bits=30 max_order=20 bucket_order=0
[ 0.877131@2] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.877353@0] clear:29c00000, free:29c00000, tick:150445 us
[ 0.877590@2] exFAT: Version 1.2.9
[ 0.879154@2] Registering sdcardfs 0.1
[ 0.879476@2] ntfs: driver 2.1.32 [Flags: R/O].
[ 0.879869@2] jffs2: version 2.2. (NAND) (SUMMARY) ?2001-2006 Red Hat, Inc.
[ 0.880860@2] fuse init (API version 7.26)
[ 0.887915@0] NET: Registered protocol family 38
[ 0.887939@0] Key type asymmetric registered
[ 0.887952@0] Asymmetric key parser 'x509' registered
[ 0.888175@0] bounce: pool size: 64 pages
[ 0.888473@0] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 241)
[ 0.888489@0] io scheduler noop registered (default)
[ 0.888500@0] io scheduler deadline registered
[ 0.888537@0] io scheduler cfq registered
[ 0.902914@1] random: fast init done
[ 0.902972@1] random: crng init done
[ 0.917950@0] brd: module loaded
[ 0.925875@0] loop: module loaded
[ 0.926970@0] zram: Added device: zram0
[ 0.927419@0] mtdoops: mtd device (mtddev=name/number) must be supplied
[ 0.928645@0] libphy: Fixed MDIO Bus: probed
[ 0.929071@0] tun: Universal TUN/TAP device driver, 1.6
[ 0.929084@0] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[ 0.930209@0] REG0:Addr = f0c3e540
[ 0.930235@0] ee eth reset:Addr = f0cf9008
[ 0.930260@0] ----auto_cali_idx 255
[ 0.931097@0] meson6-dwmac ff3f0000.ethernet: no reset control found
[ 0.931117@0] stmmac - user ID: 0x11, Synopsys ID: 0x37
[ 0.931127@0] Ring mode enabled
[ 0.931141@0] DMA HW capability register supported
[ 0.931154@0] Normal descriptors
[ 0.931165@0] RX Checksum Offload Engine supported
[ 0.931175@0] COE Type 2
[ 0.931186@0] TX Checksum insertion supported
[ 0.931195@0] Wake-Up On Lan supported
[ 0.931273@0] Enable RX Mitigation via HW Watchdog Timer
[ 0.934375@0] libphy: stmmac: probed
[ 0.934395@0] eth%d: PHY ID 02430c20 at 2 IRQ POLL (stmmac-0:02) active
[ 0.936413@0] PPP generic driver version 2.4.2
[ 0.936694@0] PPP BSD Compression module registered
[ 0.936710@0] PPP Deflate Compression module registered
[ 0.936738@0] PPP MPPE Compression module registered
[ 0.936751@0] NET: Registered protocol family 24
[ 0.936911@0] usbcore: registered new interface driver asix
[ 0.937027@0] usbcore: registered new interface driver ax88179_178a
[ 0.937119@0] usbcore: registered new interface driver cdc_ether
[ 0.937197@0] usbcore: registered new interface driver net1080
[ 0.937269@0] usbcore: registered new interface driver cdc_subset
[ 0.937340@0] usbcore: registered new interface driver zaurus
[ 0.937438@0] usbcore: registered new interface driver cdc_ncm
[ 0.938316@0] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.938333@0] ehci-pci: EHCI PCI platform driver
[ 0.938430@0] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.938465@0] ohci-pci: OHCI PCI platform driver
[ 0.939382@0] usbcore: registered new interface driver cdc_acm
[ 0.939399@0] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[ 0.939496@0] usbcore: registered new interface driver usb-storage
[ 0.939653@0] usbcore: registered new interface driver usbserial
[ 0.939724@0] usbcore: registered new interface driver pl2303
[ 0.939805@0] usbserial: USB Serial support registered for pl2303
[ 0.940352@0] mousedev: PS/2 mouse device common for all mice
[ 0.940902@0] usbcore: registered new interface driver xpad
[ 0.941082@0] i2c /dev entries driver
[ 0.941413@0] IR NEC protocol handler initialized
[ 0.941428@0] IR RC5(x/sz) protocol handler initialized
[ 0.941440@0] IR RC6 protocol handler initialized
[ 0.941452@0] IR JVC protocol handler initialized
[ 0.941462@0] IR Sony protocol handler initialized
[ 0.941473@0] IR SANYO protocol handler initialized
[ 0.941483@0] IR Sharp protocol handler initialized
[ 0.941496@0] IR MCE Keyboard/mouse protocol handler initialized
[ 0.941507@0] IR XMP protocol handler initialized
[ 0.941641@0] usbcore: registered new interface driver uvcvideo
[ 0.941653@0] USB Video Class driver (1.1.1)
[ 0.941744@0] usbcore: registered new interface driver cx231xx
[ 0.941760@0] md: linear personality registered for level -1
[ 0.942450@0] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com
[ 0.942678@0] device-mapper: verity-avb: AVB error handler initialized with vbmeta device:
[ 0.942695@0] Bluetooth: HCI UART driver ver 2.3
[ 0.942708@0] Bluetooth: HCI UART protocol H4 registered
[ 0.943075@0] cpuidle: enable-method property 'psci' found operations
[ 0.943300@0] cpuidle: enable-method property 'psci' found operations
[ 0.943445@0] cpuidle: enable-method property 'psci' found operations
[ 0.943628@0] cpuidle: enable-method property 'psci' found operations
[ 0.945313@0] ledtrig-cpu: registered to indicate activity on CPUs
[ 0.945898@0] hidraw: raw HID events driver (C) Jiri Kosina
[ 0.946459@0] usbcore: registered new interface driver usbhid
[ 0.946473@0] usbhid: USB HID core driver
[ 0.946734@0] ashmem: initialized
[ 0.948293@0] value of voltage_tolerance 0
[ 0.948316@0] meson_cpufreq_init:don't find the node <dynamic_gp1_clk>
[ 0.948328@0] value of gp1_clk_target 0
[ 0.949780@0] cpu cpu0: meson_cpufreq_init: CPU 0 initialized
[ 0.952475@0] ff803000.serial: clock gate not found
[ 0.952527@0] meson_uart ff803000.serial: ==uart0 reg addr = f0cfd000
[ 0.952593@0] ff803000.serial: ttyS0 at MMIO 0xff803000 (irq = 36, base_baud = 1500000) is a meson_uart
[ 0.952613@0] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 0 to 115200
[ 1.021022@3] earc_rx_isr EARCRX_CMDC_IDLE2
[ 1.360262@0] hdmitx: system: ###plugin!
[ 1.360264@0] ###hdmi turn on!
[ 1.503145@0] hdmitx: edid: EDID Parser:
[ 1.503149@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503153@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503156@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503163@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503168@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503170@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503173@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503174@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503175@0] hdmitx: hdmitx: reach vesa idx MAX
[ 1.503183@0] [RX]-up_phy_addr = 1
[ 1.503194@0] hdmitx: edid: get dtd0 vic: 19
[ 1.503198@0] hdmitx: hdmitx: get PMT vic: 16
[ 1.503202@0] hdmitx: edid: find IEEEOUT
[ 1.503224@0] hdmitx: edid: check sum valid
[ 1.503225@0] hdmitx: edid: check sum valid
[ 1.503230@0] hdmitx: edid: check sum valid
[ 1.503231@0] hdmitx: edid: check sum valid
[ 1.503235@0] hdmitx: edid: blk0 raw data
[ 1.503259@0] hdmitx: edid:
[ 1.503259@0] 00ffffffffffff004c2d630b47324b300a18010380301b782ad111a55555a028
[ 1.503259@0] 0d5054bfef80714f81c0810081809500a9c0b3000101023a801871382d40582c
[ 1.503259@0] 4500dd0c1100001e011d007251d01e206e285500dd0c1100001e000000fd0032
[ 1.503259@0] 4b1e5111000a202020202020000000fc00533232443339300a202020202001cb
[ 1.503259@0]
[ 1.503259@0]
[ 1.503264@0] hdmitx: edid: blk1 raw data
[ 1.503286@0] hdmitx: edid:
[ 1.503286@0] 02031af14690041f131203230907078301000066030c00100080011d00bc52d0
[ 1.503286@0] 1e20b8285540dd0c1100001e8c0ad090204031200c405500dd0c110000188c0a
[ 1.503286@0] d08a20e02d10103e9600dd0c1100001800000000000000000000000000000000
[ 1.503286@0] 00000000000000000000000000000000000000000000000000000000000000c8
[ 1.503286@0]
[ 1.503286@0]
[ 1.503290@0] hdmitx: system: update physcial size: 480 270
[ 1.503296@0] hdmitx: hw: set audio
[ 1.503303@0] hdmitx: hw: hdmitx tx_aud_src = 0
[ 1.503315@0] hdmitx: fs = 0, cd = 4, tmds_clk = 148352
[ 1.503319@0] hdmitx: hw: aud_n_para = 5824
[ 1.503327@0] hdmitx: hw: set channel status
[ 3.741081@2] console [ttyS0] enabled
[ 3.745313@2] meson_uart ffd24000.serial: ==uart1 reg addr = f0eae000
[ 3.751171@2] ffd24000.serial: ttyS1 at MMIO 0xffd24000 (irq = 50, base_baud = 1500000) is a meson_uart
[ 3.762608@2] amlogic-new-usb2-v2 ffe09000.usb2phy: USB2 phy probe:phy_mem:0xffe09000, iomap phy_base:0xf0ee2000
[ 3.771313@2] amlogic-new-usb3-v2 ffe09080.usb3phy: USB3 phy probe:phy_mem:0xffe09080, iomap phy_base:0xf0eed080
[ 3.782067@2] meson-g12a-pinctrl pinctrl@ff634480: pin GPIOZ_0 already requested by ff3f0000.ethernet; cannot claim for ffd1f000.i2c
[ 3.792645@2] meson-g12a-pinctrl pinctrl@ff634480: pin-1 (ffd1f000.i2c) status -22
[ 3.800175@2] meson-g12a-pinctrl pinctrl@ff634480: could not request pin 1 (GPIOZ_0) from group i2c0_sda_z0 on device pinctrl-meson
[ 3.812048@2] meson-i2c ffd1f000.i2c: Error applying setting, reverse things back
[ 3.819509@2] meson-i2c: probe of ffd1f000.i2c failed with error -22
[ 3.828012@2] Error: Driver 'meson_reset' is already registered, aborting...
[ 3.833660@2] aml_dma ff63e000.aml_dma: Aml dma
[ 3.839597@2] aml_aes_dma ff63e000.aml_dma:aml_aes: Aml AES_dma
[ 3.846511@2] aml_sha_dma ff63e000.aml_dma:aml_sha: Aml SHA1/SHA224/SHA256 dma
[ 3.850938@2] meson-remote: Driver init
[ 3.854436@2] meson-remote: remote_probe
[ 3.858163@2] meson-remote ff808040.rc: protocol = 0x1
[ 3.863279@2] meson-remote ff808040.rc: led_blink = 1
[ 3.868290@2] meson-remote ff808040.rc: led_blink_frq = 100
[ 3.874010@2] meson-remote ff808040.rc: platform_data irq =49
[ 3.879687@2] meson-remote ff808040.rc: custom_number = 3
[ 3.885053@2] meson-remote ff808040.rc: ptable->map_size = 50
[ 3.890740@2] meson-remote ff808040.rc: ptable->custom_name = amlogic-remote-1
[ 3.897937@2] meson-remote ff808040.rc: ptable->custom_code = 0xfb04
[ 3.904259@2] meson-remote ff808040.rc: ptable->release_delay = 80
[ 3.910417@2] meson-remote ff808040.rc: fn_key_scancode not config yet
[ 3.916913@2] meson-remote ff808040.rc: cursor_left_scancode not config yet
[ 3.923842@2] meson-remote ff808040.rc: cursor_right_scancode not config yet
[ 3.930864@2] meson-remote ff808040.rc: cursor_up_scancode not config yet
[ 3.937622@2] meson-remote ff808040.rc: cursor_down_scancode not config yet
[ 3.944557@2] meson-remote ff808040.rc: cursor_ok_scancode not config yet
[ 3.951344@2] meson-remote ff808040.rc: ptable->map_size = 44
[ 3.957034@2] meson-remote ff808040.rc: ptable->custom_name = amlogic-remote-2
[ 3.964232@2] meson-remote ff808040.rc: ptable->custom_code = 0xfe01
[ 3.970559@2] meson-remote ff808040.rc: ptable->release_delay = 80
[ 3.976739@2] meson-remote ff808040.rc: ptable->map_size = 17
[ 3.982431@2] meson-remote ff808040.rc: ptable->custom_name = amlogic-remote-3
[ 3.989623@2] meson-remote ff808040.rc: ptable->custom_code = 0xbd02
[ 3.995952@2] meson-remote ff808040.rc: ptable->release_delay = 80
[ 4.002104@2] meson-remote ff808040.rc: fn_key_scancode not config yet
[ 4.008602@2] meson-remote ff808040.rc: cursor_left_scancode not config yet
[ 4.015535@2] meson-remote ff808040.rc: cursor_right_scancode not config yet
[ 4.022556@2] meson-remote ff808040.rc: cursor_up_scancode not config yet
[ 4.029316@2] meson-remote ff808040.rc: cursor_down_scancode not config yet
[ 4.036247@2] meson-remote ff808040.rc: cursor_ok_scancode not config yet
[ 4.043015@2] meson-remote ff808040.rc: default protocol = 0x1 and id = 0
[ 4.049769@2] meson-remote ff808040.rc: reg=0x0, val=0x1f40190
[ 4.055575@2] meson-remote ff808040.rc: reg=0x4, val=0x12c00c8
[ 4.061384@2] meson-remote ff808040.rc: reg=0x8, val=0x960050
[ 4.067104@2] meson-remote ff808040.rc: reg=0xc, val=0x480028
[ 4.072821@2] meson-remote ff808040.rc: reg=0x10, val=0x70fa0013
[ 4.078805@2] meson-remote ff808040.rc: reg=0x18, val=0x8616800
[ 4.084695@2] meson-remote ff808040.rc: reg=0x1c, val=0x9f00
[ 4.090337@2] meson-remote ff808040.rc: reg=0x20, val=0x0
[ 4.095703@2] meson-remote ff808040.rc: reg=0x24, val=0x0
[ 4.101075@2] meson-remote ff808040.rc: reg=0x28, val=0x0
[ 4.107777@2] input: aml_keypad as /devices/platform/ff808040.rc/input/input1
[ 4.114939@2] meson-remote: IR XMP protocol handler initialized
[ 4.123591@2] ion_dev soc:ion_dev: assigned reserved memory node linux,ion-dev
[ 4.127211@2] ge2d: ge2d_init_module
[ 4.130538@2] ge2d: ge2d_dev major:235
[ 4.134168@2] ge2d: clock source clk_ge2d_gate ed399f40
[ 4.139304@2] ge2d: clock clk_ge2d source ed5eeb40
[ 4.143919@2] ge2d: clock source clk_vapb_0 ed5ee9c0
[ 4.148832@2] ge2d: ge2d init clock is 500000000 HZ, VPU clock is 666666656 HZ
[ 4.156142@2] ge2d: ge2d clock is 499 MHZ
[ 4.160020@2] ge2d: find address resource
[ 4.164019@2] ge2d: map io source 0xff940000,size=65536 to 0xf1010000
[ 4.170409@2] ge2d: reserved mem init failed
[ 4.174662@2] ge2d: ge2d: pdev=ed6ec800, irq=57, clk=ed399f40
[ 4.180417@2] ge2d: ge2d start monitor
[ 4.184205@3] ge2d: ge2d workqueue monitor start
[ 4.184726@2] [tsync_pcr_init]init success.
[ 4.184959@2] amvideom vsync irq: 58
[ 4.185001@2] create_ge2d_work_queue video task ok
[ 4.185740@2] hdmitx: hdcp: hdmitx_hdcp_init
[ 4.186379@2] vout: vout2: create vout2 attribute OK
[ 4.186516@2] vout: vout2: vout2_fops_create OK
[ 4.186707@2] vout: vout2: clktree_init
[ 4.186712@2] vout: vout2: register server: nulldisp_vout2_server
[ 4.186846@2] vout: vout2: init mode null set ok
[ 4.186848@2] vout: vout2: aml_vout2_probe OK
[ 4.186980@2] DI: di_module_init ok.
[ 4.187211@2] DI: di_probe:
[ 4.187215@2] DI: di_probe: major 509
[ 4.187440@2] deinterlace deinterlace: assigned reserved memory node linux,di_cma
[ 4.187447@2] di:flag_cma=1
[ 4.187451@2] DI: CMA size 0x2800000.
[ 4.187472@2] pre_irq:77
[ 4.187483@2] post_irq:78
[ 4.187486@2] DI: di_probe allocate rdma channel 0.
[ 4.187493@2] di_get_vpu_clkb: get clk vpu error.
[ 4.187497@2] DI: vpu clkb <334000000, 667000000>
[ 4.187530@2] get clkb rate:333333328
[ 4.187538@2] DI:enable vpu clkb.
[ 4.187555@2] 0x000000e1:Y=e1,U=0,V=0
[ 4.187558@2] 0x000000e2:Y=e2,U=0,V=0
[ 4.187560@2] 0x000000e3:Y=e3,U=0,V=0
[ 4.187561@2] 0x000000f0:Y=f0,U=0,V=0
[ 4.187563@2] 0x000000f1:Y=f1,U=0,V=0
[ 4.187565@2] 0x000000f2:Y=f2,U=0,V=0
[ 4.187568@2] 0x000000f3:Y=f3,U=0,V=0
[ 4.187569@2] 0x000000f4:Y=f4,U=0,V=0
[ 4.187571@2] 0x000000f5:Y=f5,U=0,V=0
[ 4.187573@2] 0x000000f6:Y=f6,U=0,V=0
[ 4.187581@2] 0x000000f7:Y=f7,U=0,V=0
[ 4.187583@2] 0x000000f8:Y=f8,U=0,V=0
[ 4.187584@2] 0x000000f9:Y=f9,U=0,V=0
[ 4.187586@2] 0x000000fa:Y=fa,U=0,V=0
[ 4.187589@2] 0x000000fb:Y=fb,U=0,V=0
[ 4.187590@2] 0x000000fc:Y=fc,U=0,V=0
[ 4.187598@2] 0x000000fd:Y=fd,U=0,V=0
[ 4.187600@2] 0x000000fe:Y=fe,U=0,V=0
[ 4.187602@2] 0x000000ff:Y=ff,U=0,V=0
[ 4.187603@2] 0x0000003a:Y=3a,U=0,V=0
[ 4.187605@2] 0x0000003b:Y=3b,U=0,V=0
[ 4.187607@2] 0x0000003c:Y=3c,U=0,V=0
[ 4.187611@2] 0x0000003d:Y=3d,U=0,V=0
[ 4.187612@2] 0x0000003e:Y=3e,U=0,V=0
[ 4.187614@2] 0x0000003f:Y=3f,U=0,V=0
[ 4.187617@2] DI: support multi decoding 61~62~63.
[ 4.187827@2] DI: di_probe:Di use HRTIMER
[ 4.187972@2] DI: di_probe:ok
[ 4.188036@2] dim:dim_module_init
[ 4.188402@2] dim:dim_module_init finish
[ 4.188405@2] dil:dil_init.
[ 4.188644@2] dil:dil_init ok.
[ 4.188677@2] vdin_drv_init: major 508
[ 4.192962@2] rdma_register, rdma_table_addr f1007000 rdma_table_addr_phy e384a000 reg_buf c93ae600
[ 4.192966@2] rdma_register success, handle 3 table_size 512
[ 4.192969@2] vdin_drv_probe:vdin.0 rdma hanld 3.
[ 4.193253@2] vdin vdin0: assigned reserved memory node linux,vdin0_cma
[ 4.193256@2]
[ 4.193256@2] vdin memory resource done.
[ 4.193261@2] vdin0 cma_mem_size = 64 MB
[ 4.193265@2] vdin0 irq: 55 rdma irq: 2
[ 4.193269@2] set_canvas_manual = 0
[ 4.193300@2] get fclk_div5 err
[ 4.193304@2] vdin_drv_probe: vdin cannot get msr clk !!!
[ 4.193331@2] vdin_drv_probe: driver initialized ok
[ 4.193430@2] rdma_register, rdma_table_addr f1009000 rdma_table_addr_phy e384b000 reg_buf c93aea00
[ 4.193433@2] rdma_register success, handle 4 table_size 512
[ 4.193437@2] vdin_drv_probe:vdin.1 rdma hanld 4.
[ 4.193654@2] vdin vdin1: assigned reserved memory node linux,vdin1_cma
[ 4.193656@2]
[ 4.193656@2] vdin memory resource done.
[ 4.193661@2] vdin1 cma_mem_size = 64 MB
[ 4.193664@2] vdin1 irq: 56 rdma irq: videosync_create_instance dev_s ed055c00,dev_s->dev ed076f00
[ 4.199991@0] videosync_create_instance reg videosync.0
[ 4.200074@0] aml_vecm_init:module init
[ 4.200080@1] videosync_thread started
[ 4.200454@0]
[ 4.200454@0] VECM probe start
[ 4.200785@0] Can't find detect_colorbar.
[ 4.200788@0] Can't find detect_face.
[ 4.200790@0] Can't find detect_corn.
[ 4.200792@0] Can't find wb_sel.
[ 4.200794@0] hdr:Can't find cfg_en_osd_100.
[ 4.200802@0] amlogic, vecm
[ 4.200802@0] vlock dt support: 1
[ 4.200804@0] vlock dt new_fsm: 0
[ 4.200806@0] vlock dt hwver: 0
[ 4.200808@0] vlock dt phlock_en: 0
[ 4.200811@0] Can't find vlock_en.
[ 4.200812@0] Can't find vlock_mode.
[ 4.200816@0] Can't find vlock_pll_m_limit.
[ 4.200818@0] Can't find vlock_line_limit.
[ 4.200838@0] lcd vlock_en=1, vlock_mode=0x4
[ 4.200848@0] param_config vlock_en:1 md=0x4
[ 4.200853@0] vlock: maxLine 524,maxPixel 1715
[ 4.200856@0] vlock_status_init vlock_en:1
[ 4.200859@0] pixel_probe: vpp probe func error!
[ 4.200866@0] aml_vecm_probe: ok
[ 4.200931@0] amdolby_vision_init:module init
[ 4.201367@0]
[ 4.201367@0] amdolby_vision probe start & ver: 20181220
[ 4.201375@0]
[ 4.201375@0] cpu_id=2 tvmode=0
[ 4.201548@0] dolby_vision_init_receiver(dvel)
[ 4.201553@0] dolby_vision_init_receiver: dvel
[ 4.201753@0] amdolby_vision_probe: ok
[ 4.201762@0] g12 dovi disable in uboot
[ 4.201829@0] prime_sl module init
[ 4.202448@0] vm_init .
[ 4.203609@0] meson-mmc: mmc driver version: 3.02, 2017-05-15: New Emmc Host Controller
[ 4.204615@0] meson-mmc: >>>>>>>>hostbase f1042000, dmode
[ 4.204908@0] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[ 4.204911@0] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[ 4.206772@0] hdmitx: hdmitx_set_drm_pkt: tf=1, cf=1, colormetry=0
[ 4.252231@0] meson-mmc: meson_mmc_probe() : success!
[ 4.257368@1] meson-mmc: >>>>>>>>hostbase f10cc000, dmode
[ 4.257429@1] meson-mmc: gpio_cd = 1ca
[ 4.298547@1] meson-mmc: meson_mmc_probe() : success!
[ 4.299896@0] meson-mmc: >>>>>>>>hostbase f1156000, dmode
[ 4.300172@0] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[ 4.300177@0] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[ 4.341331@0] meson-aml-mmc ffe07000.emmc: divider requested rate 200000000 != actual rate 199999997: ret=0
[ 4.341336@0] meson-mmc: actual_clock :199999997, HHI_nand: 0x80
[ 4.341339@0] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000245
[ 4.341345@0] meson-mmc: Data 1 aligned delay is 0
[ 4.341349@0] meson-mmc: emmc: clk 199999997 tuning start
[ 4.342573@1] meson-mmc: meson_mmc_probe() : success!
[ 4.343071@1] amlogic mtd driver init
[ 4.344228@2] aml_vrtc rtc: rtc core: registered aml_vrtc as rtc0
[ 4.344445@2] input: aml_vkeypad as /devices/platform/rtc/input/input2
[ 4.345647@2] cectx ff80023c.aocec: cec driver date:2020/03/16:reduece no msg in sleep time
[ 4.345647@2]
[ 4.345906@2] cectx ff80023c.aocec: compatible:amlogic, aocec-sm1
[ 4.345909@2] cectx ff80023c.aocec: cecb_ver:0x2
[ 4.345912@2] cectx ff80023c.aocec: line_reg:0x1
[ 4.345914@2] cectx ff80023c.aocec: line_bit:0x3
[ 4.345917@2] cectx ff80023c.aocec: ee_to_ao:0x1
[ 4.346085@2] input: cec_input as /devices/virtual/input/input3
[ 4.346226@2] cectx ff80023c.aocec: not find 'port_num'
[ 4.346230@2] cectx ff80023c.aocec: using cec:1
[ 4.346259@2] cectx ff80023c.aocec: no hdmirx regs
[ 4.346262@2] cectx ff80023c.aocec: no hhi regs
[ 4.347560@2] irq cnt:2, a:54, b53
[ 4.347954@0] cectx ff80023c.aocec: wakeup_reason:0x0
[ 4.348188@0] cectx ff80023c.aocec: cev val1: 0x0;val2: 0x0
[ 4.348223@0] cectx ff80023c.aocec: aml_cec_probe success end
[ 4.349531@0] unifykey: storage in base: 0xc5000000
[ 4.349534@0] unifykey: storage out base: 0xc5040000
[ 4.349536@0] unifykey: storage block base: 0xc5080000
[ 4.349554@0] unifykey: probe done!
[ 4.349649@0] meson-mmc: emmc: adj_win: < 0 1 2 3 4 >
[ 4.349653@0] meson-mmc: _aml_sd_emmc_execute_tuning() d1_dly 0, window start 0, size 5
[ 4.349658@0] meson-mmc: emmc: clk 199999997 tuning start
[ 4.351733@0] unifykey: no efuse-version set, use default value: -1
[ 4.351755@0] unifykey: key unify config unifykey-num is 18
[ 4.352147@0] unifykey: key unify fact unifykey-num is 18
[ 4.352182@0] unifykey: unifykey_devno: 1f200000
[ 4.352786@2] unifykey: device unifykeys created ok
[ 4.352841@2] unifykey: aml_unifykeys_init done!
[ 4.353064@2] meson ts init
[ 4.353118@2] tsensor id: 0
[ 4.353254@2] tsensor trim info: 0xfa0080a2!
[ 4.353258@2] tsensor hireboot: 0xc0ff2ae0
[ 4.353339@2] meson ts init
[ 4.353357@2] tsensor id: 1
[ 4.353455@2] tsensor trim info: 0xfa0080a9!
[ 4.353457@2] tsensor hireboot: 0xc0ff2ae0
[ 4.353592@2] audio_dsp: [dsp]register dsp to char divece(257)
[ 4.353773@2] amaudio: amaudio: driver amaudio init!
[ 4.354283@2] amaudio: amaudio_init - amaudio: driver amaudio succuess!
[ 4.355148@2] amlkaraoke init success!
[ 4.355371@2] sysled: module init
[ 4.355560@2] sysled: cust gpio register
[ 4.355717@2] meson_wdt ffd0f0d0.watchdog: start watchdog
[ 4.355720@2] meson_wdt ffd0f0d0.watchdog: creat work queue for watch dog
[ 4.356035@2] meson_wdt ffd0f0d0.watchdog: AML Watchdog Timer probed done
[ 4.356745@2] amlogic rfkill init
[ 4.356925@2] enter bt_probe of_node
[ 4.356945@2] not get gpio_en
[ 4.356952@2] not get gpio_btwakeup
[ 4.356958@2] power on valid level is high
[ 4.356958@2] bt: power_on_pin_OD = 0;
[ 4.356960@2] bt: power_off_flag = 1;
[ 4.356963@2] dis power down = 0;
[ 4.357514@0] meson-mmc: emmc: adj_win: < 0 1 2 3 4 >
[ 4.357518@0] meson-mmc: _aml_sd_emmc_execute_tuning() d1_dly 1, window start 0, size 5
[ 4.357523@0] meson-mmc: emmc: clk 199999997 tuning start
[ 4.365072@0] meson-mmc: emmc: adj_win: < 0 1 2 3 4 >
[ 4.365077@0] meson-mmc: _aml_sd_emmc_execute_tuning() d1_dly 2, window start 0, size 5
[ 4.365081@0] meson-mmc: emmc: clk 199999997 tuning start
[ 4.371228@0] meson-mmc: emmc: adj_win: < 0 2 3 4 >
[ 4.371233@0] meson-mmc: emmc: best_win_start =2, best_win_size =4
[ 4.371238@0] meson-mmc: emmc: sd_emmc_regs->gclock=0x10000245,sd_emmc_regs->gadjust=0x42000
[ 4.371241@0] meson-mmc: delay1:0x0, delay2:0x0
[ 4.371394@0] emmc: new HS200 MMC card at address 0001
[ 4.371935@0] emmc: clock 199999997, 8-bit-bus-width
[ 4.371935@0]
[ 4.371935@0] mmcblk0: emmc:0001 BWBD3R 29.1 GiB
[ 4.372135@0] mmcblk0boot0: emmc:0001 BWBD3R partition 1 4.00 MiB
[ 4.372329@0] mmcblk0boot1: emmc:0001 BWBD3R partition 2 4.00 MiB
[ 4.372526@0] mmcblk0rpmb: emmc:0001 BWBD3R partition 3 4.00 MiB
[ 4.373449@0] meson-mmc: Enter aml_emmc_partition_ops
[ 4.374063@0] meson-mmc: [mmc_read_partition_tbl] mmc read partition OK!
[ 4.374066@0] meson-mmc: add_emmc_partition
[ 4.374253@0] meson-mmc: [mmcblk0p01] bootloader offset 0x000000000000, size 0x000000400000
[ 4.374422@0] meson-mmc: [mmcblk0p02] reserved offset 0x000002400000, size 0x000004000000
[ 4.374610@0] meson-mmc: [mmcblk0p03] cache offset 0x000006c00000, size 0x000046000000
[ 4.374755@0] meson-mmc: [mmcblk0p04] env offset 0x00004d400000, size 0x000000800000
[ 4.374894@0] meson-mmc: [mmcblk0p05] logo offset 0x00004e400000, size 0x000000800000
[ 4.375030@0] meson-mmc: [mmcblk0p06] recovery offset 0x00004f400000, size 0x000001800000
[ 4.375179@0] meson-mmc: [mmcblk0p07] misc offset 0x000051400000, size 0x000000800000
[ 4.375322@0] meson-mmc: [mmcblk0p08] dtbo offset 0x000052400000, size 0x000000800000
[ 4.375468@0] meson-mmc: [mmcblk0p09] cri_data offset 0x000053400000, size 0x000000800000
[ 4.375609@0] meson-mmc: [mmcblk0p10] param offset 0x000054400000, size 0x000001000000
[ 4.375751@0] meson-mmc: [mmcblk0p11] boot offset 0x000055c00000, size 0x000001000000
[ 4.375899@0] meson-mmc: [mmcblk0p12] rsv offset 0x000057400000, size 0x000001000000
[ 4.376045@0] meson-mmc: [mmcblk0p13] metadata offset 0x000058c00000, size 0x000001000000
[ 4.376197@0] meson-mmc: [mmcblk0p14] vbmeta offset 0x00005a400000, size 0x000000200000
[ 4.376339@0] meson-mmc: [mmcblk0p15] tee offset 0x00005ae00000, size 0x000002000000
[ 4.376491@0] meson-mmc: [mmcblk0p16] vendor offset 0x00005d600000, size 0x000046000000
[ 4.376647@0] meson-mmc: [mmcblk0p17] odm offset 0x0000a3e00000, size 0x000008000000
[ 4.376795@0] meson-mmc: [mmcblk0p18] system offset 0x0000ac600000, size 0x000050000000
[ 4.376955@0] meson-mmc: [mmcblk0p19] product offset 0x0000fce00000, size 0x000008000000
[ 4.377109@0] meson-mmc: [mmcblk0p20] data offset 0x000105600000, size 0x000642600000
[ 4.377130@0] card key: card_blk_probe.
[ 4.377136@0] emmc_key_init:183 emmc key lba_start:0x12020,lba_end:0x12220
[ 4.377140@0] emmc key: emmc_key_init:205 ok.
[ 4.379090@0] meson-mmc: amlmmc_dtb_init: register dtb chardev
[ 4.379090@0] meson-mmc: calc f22493e0, store f22493e0
[ 4.380968@0] meson-mmc: calc f22493e0, store f22493e0
[ 4.380973@0] meson-mmc: total valid 2
[ 4.381272@0] meson-mmc: amlmmc_dtb_init: register dtb chardev OK
[ 4.381272@0] meson-mmc: Exit aml_emmc_partition_ops OK.
[ 4.386644@2] request_irq error ret=-22
[ 4.386690@2] dev_pm_set_wake_irq failed: -22
[ 4.387636@2] dmc_monitor_probe
[ 4.387815@2] page_trace_module_init, create sysfs failed
[ 4.388801@2] atv_demod: aml_atvdemod_init: OK, atv demod version: V2.15.
[ 4.388980@2] defendkey ff630218.defendkey: Reserved memory is not enough!
[ 4.388993@2] defendkey: probe of ff630218.defendkey failed with error -22
[ 4.389296@0] bl40: bl40 probe
[ 4.389730@1] usbcore: registered new interface driver snd-usb-audio
[ 4.391204@1] aml_codec_T9015 ff632000.t9015: aml_T9015_audio_codec_probe
[ 4.391228@1] T9015 acodec used by auge, tdmout:1
[ 4.394197@1] asoc debug: aml_audio_controller_probe-130
[ 4.394885@1] aml_tdm_platform_probe, tdm ID = 0, lane_cnt = 2
[ 4.394912@1] snd_tdm ff660000.audiobus:tdm@0: lane_mask_out = 1, lane_oe_mask_out = 0
[ 4.394976@1] snd_tdm ff660000.audiobus:tdm@0: neither mclk_pad nor mclk2pad set
[ 4.395104@1] aml_tdm_platform_probe(), share en = 1
[ 4.395104@1] No channel mask node Channel_Mask
[ 4.395375@1] aml_tdm_platform_probe, tdm ID = 1, lane_cnt = 8
[ 4.395463@1] TDM id 1 samesource_sel:3
[ 4.395477@1] snd_tdm ff660000.audiobus:tdm@1: lane_mask_out = 1, lane_oe_mask_out = 0
[ 4.395786@1] TDM id 1 output clk enable:1
[ 4.395817@1] aml_tdm_platform_probe(), share en = 1
[ 4.395817@1] No channel mask node Channel_Mask
[ 4.395840@1] TDM id 1 tuning clk enable:1
[ 4.396035@1] aml_tdm_platform_probe, tdm ID = 2, lane_cnt = 4
[ 4.396058@1] snd_tdm ff660000.audiobus:tdm@2: lane_mask_out = 1, lane_oe_mask_out = 0
[ 4.396256@1] aml_tdm_platform_probe(), share en = 1
[ 4.396256@1] No channel mask node Channel_Mask
[ 4.397527@1] Spdif id 0 tuning clk enable:1
[ 4.397536@1] aml_spdif_platform_probe, register soc platform
[ 4.397653@1] aml_spdif_platform_probe, register soc platform
[ 4.398528@1] default set lane_mask_in as all lanes.
[ 4.398533@1] aml_pdm_platform_probe pdm filter mode from dts:1
[ 4.398545@1] aml_pdm_platform_probe, register soc platform
[ 4.399027@1] audio-ddr-manager ff660000.audiobus:ddr_manager: 0, irqs toddr 37, frddr 41
[ 4.399054@1] audio-ddr-manager ff660000.audiobus:ddr_manager: 1, irqs toddr 38, frddr 42
[ 4.399080@1] audio-ddr-manager ff660000.audiobus:ddr_manager: 2, irqs toddr 39, frddr 43
[ 4.399106@1] audio-ddr-manager ff660000.audiobus:ddr_manager: 3, irqs toddr 40, frddr 44
[ 4.399638@1] datain_src:4, datain_chnum:2, datain_chumask:3
[ 4.399642@1] datalb_src:1, datalb_chnum:2, datalb_chmask:3
[ 4.399644@1] datain_lane_mask:0x1, datalb_lane_mask:0x1
[ 4.399647@1] datalb_format: 1, chmask for lanes: 0x3
[ 4.399885@1] loopback_platform_probe, p_loopback->id:0 register soc platform
[ 4.400922@1] effect_platform_probe, line:569
[ 4.401064@1] eqdrc_clk_set, src pll:399999993, clk:199999997
[ 4.401070@1] effect_platform_probe module:1, lane_mask:1, ch_mask:3
[ 4.402136@1] vad_platform_probe vad data source sel:4, level:1
[ 4.402320@1] input: vad_keypad as /devices/platform/soc/ff660000.audiobus/ff660000.audiobus:vad/input/input4
[ 4.403207@0] Register vad
[ 4.502629@1] meson-mmc: card IN
[ 4.606921@1] meson-mmc: Uart in
[ 4.614861@0] asoc-aml-card auge_sound: control 2:0:0:I2SIn CLK:0 is already present
[ 4.614865@0] snd_tdm ff660000.audiobus:tdm@1: ASoC: Failed to add I2SIn CLK: -16
[ 4.614868@0] aml_dai_tdm_probe, failed add snd tdm controls
[ 4.614877@0] asoc-aml-card auge_sound: control 2:0:0:I2SIn CLK:0 is already present
[ 4.614883@0] snd_tdm ff660000.audiobus:tdm@2: ASoC: Failed to add I2SIn CLK: -16
[ 4.614885@0] aml_dai_tdm_probe, failed add snd tdm controls
[ 4.614890@0] aml_dai_spdif_probe
[ 4.614909@0] aml_dai_spdif_probe
[ 4.614913@0] asoc debug: earc_dai_probe
[ 4.614951@0] master_mode(1), binv(1), finv(0) out_skew(2), in_skew(3)
[ 4.615711@0] asoc-aml-card auge_sound: multicodec <-> TDM-A mapping ok
[ 4.615753@0] master_mode(1), binv(1), finv(1) out_skew(2), in_skew(3)
[ 4.616354@0] asoc-aml-card auge_sound: multicodec <-> TDM-B mapping ok
[ 4.616384@0] master_mode(1), binv(1), finv(1) out_skew(2), in_skew(3)
[ 4.616976@0] asoc-aml-card auge_sound: dummy <-> TDM-C mapping ok
[ 4.617498@0] asoc-aml-card auge_sound: dummy <-> ff660000.audiobus:pdm mapping ok
[ 4.618122@0] asoc-aml-card auge_sound: dummy <-> SPDIF mapping ok
[ 4.618546@0] asoc-aml-card auge_sound: dummy <-> SPDIF-B mapping ok
[ 4.618552@0] asoc earc_dai_set_fmt, 0x4000, ed721d90
[ 4.619162@0] asoc-aml-card auge_sound: dummy <-> ff663800.earc mapping ok
[ 4.622983@0] snd_card_add_kcontrols card:ecc81010
[ 4.623058@0] eq/drc v1 function enable
[ 4.623065@0] no node audio_effect for eq/drc info!
[ 4.623067@0] Failed to add audio effects v1 controls
[ 4.623270@0] GACT probability NOT on
[ 4.623282@0] Mirror/redirect action on
[ 4.623289@0] u32 classifier
[ 4.623291@0] Actions configured
[ 4.623296@0] Netfilter messages via NETLINK v0.30.
[ 4.623532@0] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[ 4.623801@0] ctnetlink v0.93: registering with nfnetlink.
[ 4.624492@2] xt_time: kernel timezone is -0000
[ 4.624575@2] ipip: IPv4 and MPLS over IPv4 tunneling driver
[ 4.625041@2] IPv4 over IPsec tunneling driver
[ 4.637878@2] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 4.638023@2] arp_tables: arp_tables: (C) 2002 David S. Miller
[ 4.649267@2] Initializing XFRM netlink socket
[ 4.649746@2] NET: Registered protocol family 10
[ 4.650842@2] mip6: Mobile IPv6
[ 4.650867@2] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 4.667114@0] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[ 4.668091@0] NET: Registered protocol family 17
[ 4.668114@0] NET: Registered protocol family 15
[ 4.668139@0] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 4.668245@0] Bluetooth: RFCOMM TTY layer initialized
[ 4.668253@0] Bluetooth: RFCOMM socket layer initialized
[ 4.668273@0] Bluetooth: RFCOMM ver 1.11
[ 4.668281@0] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 4.668284@0] Bluetooth: BNEP filters: protocol multicast
[ 4.668294@0] Bluetooth: BNEP socket layer initialized
[ 4.668297@0] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 4.668305@0] Bluetooth: HIDP socket layer initialized
[ 4.668328@0] l2tp_core: L2TP core driver, V2.0
[ 4.668346@0] l2tp_ppp: PPPoL2TP kernel driver, V2.0
[ 4.668347@0] l2tp_ip: L2TP IP encapsulation support (L2TPv3)
[ 4.668367@0] l2tp_netlink: L2TP netlink interface
[ 4.668395@0] l2tp_eth: L2TP ethernet pseudowire support (L2TPv3)
[ 4.668416@0] l2tp_debugfs: L2TP debugfs support
[ 4.668420@0] l2tp_ip6: L2TP IP encapsulation support for IPv6 (L2TPv3)
[ 4.668457@0] NET: Registered protocol family 35
[ 4.668508@0] Key type dns_resolver registered
[ 4.670907@0] Registering SWP/SWPB emulation handler
[ 4.670924@0] disable EAS feature
[ 4.702251@0] registered taskstats version 1
[ 4.713815@0] dwc3 ff500000.dwc3: Configuration mismatch. dr_mode forced to host
[ 4.716592@0] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[ 4.716613@0] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[ 4.716996@0] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228fe6c hci version 0x110 quirks 0x20010010
[ 4.717047@0] xhci-hcd xhci-hcd.0.auto: irq 29, io mem 0xff500000
[ 4.717853@2] hub 1-0:1.0: USB hub found
[ 4.717887@2] hub 1-0:1.0: 2 ports detected
[ 4.718312@2] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[ 4.718323@2] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[ 4.718407@2] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[ 4.718811@1] meson-mmc: JTAG in
[ 4.719052@0] hub 2-0:1.0: USB hub found
[ 4.719079@0] hub 2-0:1.0: 1 port detected
[ 4.723859@0] aml_vrtc rtc: setting system clock to 2015-01-01 00:27:01 UTC (1420072021)
[ 4.724320@0] dwc_otg: usb0: type: 2 speed: 0, config: 0, dma: 0, id: 0, phy: ffe09000, ctrl: 0
[ 4.724323@0] dwc_otg_driver_probe host only, not probe usb_otg!!!
[ 4.725004@0] lcd extern: key_valid: 0
[ 4.725007@0] lcd extern: lcd_extern_get_config from dts
[ 4.725020@0] lcd extern: error: failed to get extern_5
[ 4.725062@0] lcd extern: aml_lcd_extern_probe ok
[ 4.725619@0] bl: chip type/name: (8-sm1)
[ 4.725622@0] bl: key_valid: 0
[ 4.725625@0] bl: aml_bl_config_load from dts
[ 4.725632@0] bl: load: backlight_0
[ 4.725642@0] bl error: failed to get bl_power_attr
[ 4.725651@0] bl: bl pwm_port: PWM_F(5)
[ 4.725656@0] bl: find bl_pwm_en_sequence_reverse: 0
[ 4.725660@0] bl: name = backlight_pwm
[ 4.725664@0] bl: method = pwm(1)
[ 4.725739@0] bl: register pwm_ch(5) 0xed0a20f0
[ 4.726077@2] bl: probe OK
[ 4.727117@2] meson_cdev probe
[ 4.727206@2] meson_cdev index: 0
[ 4.727400@2] meson_cdev index: 1
[ 4.727406@2] cpucore_cooling_register, max_cpu_core_num:4
[ 4.727531@2] meson_cdev index: 2
[ 4.727558@2] meson_cdev index: 3
[ 4.727601@2] find tzd id: 0
[ 4.727735@2] find tzd id: 0
[ 4.727781@2] meson_cdev probe done
[ 4.728012@2] gxbb_pm: enter meson_pm_probe!
[ 4.728028@2] no vddio3v3_en pin
[ 4.728029@2] pm-meson aml_pm: Can't get switch_clk81
[ 4.728064@2] gxbb_pm: meson_pm_probe done
[ 4.728566@2] ALSA device list:
[ 4.728570B 6.418816@0] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 115200 to 115200
[ 6.526551@0] prepare_namespace() wait 79
[ 6.526627@0] md: Waiting for all devices to be available before autodetect
[ 6.531884@0] md: If you don't use raid, use raid=noautodetect
[ 6.538587@2] md: Autodetecting RAID arrays.
[ 6.541909@2] md: Scanned 0 and added 0 devices.
[ 6.546536@2] md: autorun ...
[ 6.549463@2] md: ... autorun DONE.
[ 6.553830@2] EXT4-fs (mmcblk0p18): couldn't mount as ext3 due to feature incompatibilities
[ 6.561646@2] EXT4-fs (mmcblk0p18): couldn't mount as ext2 due to feature incompatibilities
[ 6.572417@2] EXT4-fs (mmcblk0p18): mounted filesystem without journal. Opts: (null)
[ 6.577327@2] VFS: Mounted root (ext4 filesystem) readonly on device 179:18.
[ 6.585825@0] devtmpfs: mounted
[ 6.588235@0] Freeing unused kernel memory: 1024K
[ 6.612711@2] init: init first stage started!
[ 6.613519@2] init: Using Android DT directory /proc/device-tree/firmware/android/
[ 6.623735@0] init: [libfs_mgr]fs_mgr_read_fstab_default(): failed to find device default fstab
[ 6.682567@0] EXT4-fs (mmcblk0p17): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[ 6.687482@0] init: [libfs_mgr]__mount(source=/dev/block/odm,target=/odm,type=ext4)=0: Success
[ 6.698033@0] EXT4-fs (mmcblk0p19): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[ 6.705639@0] init: [libfs_mgr]__mount(source=/dev/block/product,target=/product,type=ext4)=0: Success
[ 6.717547@0] EXT4-fs (mmcblk0p16): mounted filesystem without journal. Opts: barrier=1,inode_readahead_blks=8
[ 6.724860@0] init: [libfs_mgr]__mount(source=/dev/block/vendor,target=/vendor,type=ext4)=0: Success
[ 6.734250@0] init: Skipped setting INIT_AVB_VERSION (not in recovery mode)
[ 6.741186@0] init: Loading SELinux policy
[ 6.931120@0] audit: type=1403 audit(1420072023.708:2): policy loaded auid=4294967295 ses=4294967295
[ 6.934849@0] selinux: SELinux: Loaded policy from /odm/etc/selinux/precompiled_sepolicy
[ 6.934849@0]
[ 6.952462@0] selinux: SELinux: Loaded file_contexts
[ 6.952462@0]
[ 6.958104@2] init: init second stage started!
[ 6.984142@0] init: Using Android DT directory /proc/device-tree/firmware/android/
[ 6.991698@0] selinux: SELinux: Loaded file_contexts
[ 6.991698@0]
[ 6.992699@0] init: Running restorecon...
[ 7.004122@0] init: waitid failed: No child processes
[ 7.009848@0] init: Couldn't load property file '/odm/default.prop': open() failed: No such file or directory: No such file or directory
[ 7.020033@0] init: Created socket '/dev/socket/property_service', mode 666, user 0, group 0
[ 7.025881@0] init: Forked subcontext for 'u:r:vendor_init:s0' with pid 2534
[ 7.032778@0] init: Forked subcontext for 'u:r:vendor_init:s0' with pid 2535
[ 7.039243@0] init: Parsing file /init.rc...
[ 7.135566@0] ueventd: ueventd started!
[ 7.140062@0] selinux: SELinux: Loaded file_contexts
[ 7.140062@0]
[ 7.141282@0] ueventd: Parsing file /ueventd.rc...
[ 7.141395@2] mali_kbase: loading out-of-tree module taints kernel.
[ 7.145846@2] mali ffe40000.bifrost: Continuing without Mali regulator control
[ 7.145936@2] mali ffe40000.bifrost: max pp is 2
[ 7.145941@2] mali ffe40000.bifrost: set min pp to default 1
[ 7.145943@2] mali ffe40000.bifrost: min pp is 1
[ 7.145946@2] mali ffe40000.bifrost: set min clk default to 0
[ 7.145949@2] mali ffe40000.bifrost: min clk is 0
[ 7.145966@2] mali ffe40000.bifrost: hiu io source 0xf15ad000
[ 7.145976@2] mali ffe40000.bifrost: hiu io source 0xf15af000
[ 7.145980@2] mali ffe40000.bifrost: num of pp used most of time 1
[ 7.145986@2] mali ffe40000.bifrost: clock dvfs cfg table size is 6
[ 7.146073@2] mali ffe40000.bifrost: max clk set 4
[ 7.146076@2] mali ffe40000.bifrost: max clk is 4
[ 7.146082@2] mali ffe40000.bifrost: turbo clk set to 5
[ 7.146085@2] mali ffe40000.bifrost: turbo clk is 5
[ 7.146089@2] mali ffe40000.bifrost: default clk set to 4
[ 7.146091@2] mali ffe40000.bifrost: default clk is 4
[ 7.146097@2] mali ffe40000.bifrost: ====================0====================
[ 7.146097@2] clk_freq= 285714285, clk_parent=fclk_div7, voltage=1150, keep_count=5, threshod=<100 190>, clk_sample=285
[ 7.146102@2] mali ffe40000.bifrost: ====================1====================
[ 7.146102@2] clk_freq= 400000000, clk_parent=fclk_div5, voltage=1150, keep_count=5, threshod=<152 207>, clk_sample=400
[ 7.146106@2] mali ffe40000.bifrost: ====================2====================
[ 7.146106@2] clk_freq= 500000000, clk_parent=fclk_div4, voltage=1150, keep_count=5, threshod=<180 220>, clk_sample=500
[ 7.146111@2] mali ffe40000.bifrost: ====================3====================
[ 7.146111@2] clk_freq= 666666666, clk_parent=fclk_div3, voltage=1150, keep_count=5, threshod=<210 236>, clk_sample=666
[ 7.146117@2] mali ffe40000.bifrost: ====================4====================
[ 7.146117@2] clk_freq= 846000000, clk_parent= gp0_pll, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=846
[ 7.146121@2] mali ffe40000.bifrost: ====================5====================
[ 7.146121@2] clk_freq= 846000000, clk_parent= gp0_pll, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=846
[ 7.146125@2] mali ffe40000.bifrost: clock dvfs table size is 6
[ 7.147636@2] mali_plat=bf05e2d8
[ 7.147975@2] find tzd id: 0
[ 7.148046@2] gpu cooling register okay with err=0
[ 7.148229@2] find tzd id: 0
[ 7.148259@2] gpu core cooling register okay with err=0
[ 7.148290@2] shader_present=1, tiler_present=1, l2_present=1
[ 7.148371@2] Mali_pwr_on:gpu_irq : 200
[ 7.148747@2] hrtimer: interrupt took 18084 ns
[ 7.149236@2] mali ffe40000.bifrost: GPU identified as 0x3 arch 7.0.9 r0p0 status 0
[ 7.152920@2] mali ffe40000.bifrost: Probed as mali0
[ 7.311846@2] ATBM: register atbm8881 demod driver version: V2.01 (Linux version 4.9.113-arm Jan 17 2020 17:28:22).
[ 7.312451@2] ATBM: [atbm8881_fe..] probe ok.
[ 7.356187@2] PPMGRVPP: info: RegisterTB_Function: gfunc (null), func: bf0b3000, ver:TB detect: v2016.11.15a *** [ Tue Mar 19 19:21:39 CST 2019]-[ renjiang.han]-[* master]-[67f03d41e0612a58d1edd96db9bc8b92de1a59b1]-[Date: Wed Jul 4 00:44:57 2018 +0800]-[2]
[ 7.437294@2] ueventd: Parsing file /vendor/ueventd.rc...
[ 7.441701@2] ueventd: /vendor/ueventd.rc: 110: /sys/ lines must have 5 entries
[ 7.448042@2] ueventd: Parsing file /odm/ueventd.rc...
[ 7.453080@2] ueventd: Unable to read config file '/odm/ueventd.rc': open() failed: No such file or directory
[ 7.463090@2] ueventd: Parsing file /ueventd.amlogic.rc...
[ 7.468397@2] ueventd: Unable to read config file '/ueventd.amlogic.rc': open() failed: No such file or directory
[ 7.985256@2] ueventd: Coldboot took 0.503 seconds
[ 7.999586@1] audit: type=1400 audit(1420072024.776:3): avc: denied { write } for pid=1 comm="init" name="alignment" dev="proc" ino=4026531967 scontext=u:r:init:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 8.013467@1] audit: type=1400 audit(1420072024.788:4): avc: denied { open } for pid=1 comm="init" path="/proc/cpu/alignment" dev="proc" ino=4026531967 scontext=u:r:init:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 8.059223@2] audit: type=1400 audit(1420072024.836:5): avc: denied { write } for pid=2534 comm="init" name="watermark_scale_factor" dev="proc" ino=11571 scontext=u:r:vendor_init:s0 tcontext=u:object_r:proc_vm_writable:s0 tclass=file permissive=1
[ 8.099260@1] EXT4-fs (mmcblk0p20): Ignoring removed nomblk_io_submit option
[ 8.162307@2] EXT4-fs (mmcblk0p20): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
[ 8.309055@2] e2fsck: e2fsck 1.43.3 (04-Sep-2016)
[ 8.309055@2]
[ 8.309813@2] e2fsck: /dev/block/data: clean, 2439/1643376 files, 285712/6563328 blocks
[ 8.309813@2]
[ 8.321114@2] EXT4-fs (mmcblk0p20): Ignoring removed nomblk_io_submit option
[ 8.334035@3] EXT4-fs (mmcblk0p20): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[ 8.341888@3] EXT4-fs (mmcblk0p3): Ignoring removed nomblk_io_submit option
[ 8.350306@2] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
[ 8.407972@1] e2fsck: e2fsck 1.43.3 (04-Sep-2016)
[ 8.407972@1]
[ 8.408736@1] e2fsck: /dev/block/cache: clean, 14/71712 files, 13057/286720 blocks
[ 8.408736@1]
[ 8.419090@3] EXT4-fs (mmcblk0p3): Ignoring removed nomblk_io_submit option
[ 8.427710@3] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[ 8.437763@3] EXT4-fs (mmcblk0p13): Ignoring removed nomblk_io_submit option
[ 8.445925@3] EXT4-fs (mmcblk0p13): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
[ 8.502090@1] e2fsck: e2fsck 1.43.3 (04-Sep-2016)
[ 8.502090@1]
[ 8.502882@1] e2fsck: /dev/block/metadata: clean, 12/4096 files, 1166/4096 blocks
[ 8.502882@1]
[ 8.513195@3] EXT4-fs (mmcblk0p13): Ignoring removed nomblk_io_submit option
[ 8.521010@3] EXT4-fs (mmcblk0p13): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[ 8.572970@3] e2fsck: e2fsck 1.43.3 (04-Sep-2016)
[ 8.572970@3]
[ 8.573733@3] e2fsck: Pass 1: Checking inodes, blocks, and sizes
[ 8.573733@3]
[ 8.581366@3] e2fsck: Pass 2: Checking directory structure
[ 8.581366@3]
[ 8.588461@3] e2fsck: Pass 3: Checking directory connectivity
[ 8.588461@3]
[ 8.597197@3] EXT4-fs (mmcblk0p10): Ignoring removed nomblk_io_submit option
[ 8.605528@0] EXT4-fs (mmcblk0p10): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[ 8.657288@0] EXT4-fs (mmcblk0p15): Ignoring removed nomblk_io_submit option
[ 8.660701@0] EXT4-fs (mmcblk0p15): mounted filesystem with ordered data mode. Opts: nodelalloc,nomblk_io_submit,errors=panic
[ 8.671054@0] init: 10 output lines suppressed due to ratelimiting
[ 8.685524@0] register clk_set_setting cpu[43]
[ 8.690740@0] Registered firmware driver success.
[ 8.692380@0] Try to load video/h264_enc.bin ...
[ 8.696961@0] load firmware size : 76288, Name : video/h264_enc.bin.
[ 8.701767@0] Try to load video/video_ucode.bin ...
[ 8.725382@3] load firmware size : 1816576, Name : video/video_ucode.bin.
[ 8.756041@3] audit: type=1400 audit(1420072025.532:6): avc: denied { read } for pid=3092 comm="imageserver" name="vndbinder" dev="tmpfs" ino=14820 scontext=u:r:imageserver:s0 tcontext=u:object_r:vndbinder_device:s0 tclass=chr_file permissive=1
[ 8.772401@3] audit: type=1400 audit(1420072025.552:7): avc: denied { write } for pid=3092 comm="imageserver" name="vndbinder" dev="tmpfs" ino=14820 scontext=u:r:imageserver:s0 tcontext=u:object_r:vndbinder_device:s0 tclass=chr_file permissive=1
[ 8.776140@2] Amlogic A/V streaming port init
[ 8.779364@0] get gate demux control ok ed7fae80
[ 8.779382@0] get gate parser_top control ok ed7fa780
[ 8.779413@0] get gate vdec control ok ed7fab80
[ 8.779446@0] get gate clk_81 control ok ed7fa2c0
[ 8.779485@0] get gate clk_vdec_mux control ok ed7fa400
[ 8.779529@0] get gate clk_hcodec_mux control ok ed7fac40
[ 8.779580@0] get gate clk_hevc_mux control ok ed7fa800
[ 8.779636@0] get gate clk_hevcb_mux control ok ed7fa7c0
[ 8.779658@0] get gate ahbarb0 control ok ed7faa40
[ 8.779667@0] get gate asyncfifo control failed (null)
[ 8.801825@2] ammvdec_h264 module init
[ 8.834614@2] ammvdec_mpeg12 module init
[ 8.843713@2] ammvdec_mpeg4_driver_init_module
[ 8.860670@3] audit: type=1400 audit(1420072025.640:8): avc: denied { open } for pid=3092 comm="imageserver" path="/dev/vndbinder" dev="tmpfs" ino=14820 scontext=u:r:imageserver:s0 tcontext=u:object_r:vndbinder_device:s0 tclass=chr_file permissive=1
[ 8.874079@2] amvenc_avc_probe -- reserved memory config fail.
[ 8.874082@2] amvenc_avc - cma memory pool size: 60 MB
[ 8.874106@2] encode_wq_init.
[ 8.874112@2] encode start monitor.
[ 8.874228@0] encode workqueue monitor start.
[ 8.879560@2] vpu_init
[ 8.879828@2] vpu_probe
[ 8.879832@2] HevcEnc reserved memory config fail.
[ 8.879834@2] HevcEnc - cma memory pool size: 64 MB
[ 8.879859@2] HevcEnc - wave420l_irq: 65
[ 8.879929@2] vpu base address get from platform driver physical base addr=0xff610000, virtual base=0xf27cc000
[ 8.880223@2] success to probe vpu device with video memory from cma
[ 8.913457@2] audit: type=1400 audit(1420072025.684:9): avc: denied { setattr } for pid=1 comm="init" name="slabinfo" dev="proc" ino=4026532028 scontext=u:r:init:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 8.962740@3] audit: type=1400 audit(1420072025.740:10): avc: denied { ioctl } for pid=3092 comm="imageserver" path="/dev/vndbinder" dev="tmpfs" ino=14820 ioctlcmd=0x6209 scontext=u:r:imageserver:s0 tcontext=u:object_r:vndbinder_device:s0 tclass=chr_file permissive=1
[ 8.988968@0] logd.auditd: start
[ 9.128221@0] type=1400 audit(1420072025.904:11): avc: denied { setattr } for pid=2534 comm="init" name="droidota" dev="mmcblk0p20" ino=654085 scontext=u:r:vendor_init:s0 tcontext=u:object_r:update_data_file:s0 tclass=dir permissive=1
[ 9.147708@0] type=1400 audit(1420072025.904:11): avc: denied { setattr } for pid=2534 comm="init" name="droidota" dev="mmcblk0p20" ino=654085 scontext=u:r:vendor_init:s0 tcontext=u:object_r:update_data_file:s0 tclass=dir permissive=1
[ 9.164329@0] type=1400 audit(1420072025.904:12): avc: denied { setattr } for pid=2534 comm="init" name="log" dev="mmcblk0p20" ino=130822 scontext=u:r:vendor_init:s0 tcontext=u:object_r:log_file:s0 tclass=dir permissive=1
[ 9.183966@0] type=1400 audit(1420072025.904:12): avc: denied { setattr } for pid=2534 comm="init" name="log" dev="mmcblk0p20" ino=130822 scontext=u:r:vendor_init:s0 tcontext=u:object_r:log_file:s0 tclass=dir permissive=1
[ 9.203313@0] type=1400 audit(1420072025.924:13): avc: denied { setattr } for pid=2534 comm="init" name="media" dev="mmcblk0p20" ino=392452 scontext=u:r:vendor_init:s0 tcontext=u:object_r:media_rw_data_file:s0 tclass=dir permissive=1
[ 9.231089@2] aml dvb init
[ 9.283446@2] nn is disable,should not do probe continue
[ 9.331154@0] logd.daemon: reinit
[ 9.749313@3] healthd: BatteryTemperaturePath not found
[ 9.749357@3] healthd: BatteryCycleCountPath not found
[ 9.849979@3] unifykey: amlkey_init_gen() enter!
[ 9.854856@3] emmc_key_read:114, read ok
[ 9.854899@3] unifykey: amlkey_init_gen() storagekey_info.buffer=c5080000, storagekey_info.size = 40000!
[ 9.869359@3] android.hardware.health@2.0-impl: wakealarm_init: timerfd_create failed
[ 9.870674@3] healthd: battery l=42 v=4 t=42.4 h=2 st=2 c=1 fc=10000000 chg=u
[ 9.875141@2] fb: osd_open, 1507, fb_index=0,fb_rmem_size=26738688
[ 9.875266@2] fb: osd_open, 1507, fb_index=1,fb_rmem_size=1048576
[ 9.875301@2] fb: osd_open, 1507, fb_index=2,fb_rmem_size=1048576
[ 9.875474@2] fb: vpu clkc clock is 199 MHZ
[ 9.875485@2] vpu: switch_vpu_mem_pd: unsupport vpu mod: 18
[ 9.875488@2] vpu: switch_vpu_mem_pd: unsupport vpu mod: 22
[ 9.875490@2] vpu: switch_vpu_mem_pd: unsupport vpu mod: 54
[ 9.875498@2] fb: osd_open, 1507, fb_index=3,fb_rmem_size=8388608
[ 9.956362@3] VID: VD1 off
[ 9.957600@3] hdmitx: system: set hdcp_pwr 1
[ 9.987153@2] vfm_map_store:rm default
[ 9.988241@2] vfm_map_store:add default decoder ppmgr deinterlace amvideo
[ 10.004617@3] hdmitx: system: restore hdcp_pwr 0
[ 10.006208@2] file system registered
[ 10.007695@1] hdmitx: system: sname = 1080p60hz
[ 10.011819@1] hdmitx: system: char_clk = 148500
[ 10.015628@2] assign_ffs_buffer FFS_BUFFER_MAX=100!!!
[ 10.022655@1] hdmitx: system: cd = 4
[ 10.023095@3] cpufreq_interactive: cpufreq_hmp_boost_start()
[ 10.023097@3] cpufreq_interactive: no need to active hmp boost!
[ 10.042858@1] hdmitx: system: cs = 2
[ 10.046597@1] hdmitx: RX tmds clk: 150 Calc clk: 148
[ 10.091487@3] dhd_module_init: in Dongle Host Driver, version 100.10.545.5 (r826445-20190922-1) (amlogic-20191015-3)
[ 10.096449@3] ======== dhd_wlan_init_plat_data ========
[ 10.101752@3] dhd_wlan_init_gpio: WL_HOST_WAKE=-1, oob_irq=79, oob_irq_flags=0x418
[ 10.109170@3] dhd_wlan_init_gpio: WL_REG_ON=-1
[ 10.113617@3] dhd_wifi_platform_load: Enter
[ 10.117766@3] Power-up adapter 'DHD generic adapter'
[ 10.122659@3] wifi_platform_set_power = 1, delay: 200 msec
[ 10.128266@3] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 10.133557@3] aml_wifi wifi: [extern_wifi_set_enable] WIFI Disable! 482
[ 10.340442@3] aml_wifi wifi: [extern_wifi_set_enable] WIFI Enable! 482
[ 10.603277@2] aml_tdm_open
[ 10.604916@1] aml_spdif_open
[ 10.606204@2] aml_spdif_close
[ 10.607166@2] aml_tdm_open
[ 10.614265@1] earc_dai_startup
[ 10.614304@1] asoc debug: earc_open
[ 10.615920@1] earc_dai_shutdown
[ 10.618593@1] asoc debug: earc_close
[ 10.622664@1] aml_tdm_open
[ 10.623432@2] type=1400 audit(1420072025.924:13): avc: denied { setattr } for pid=2534 comm="init" name="media" dev="mmcblk0p20" ino=392452 scontext=u:r:vendor_init:s0 tcontext=u:object_r:media_rw_data_file:s0 tclass=dir permissive=1
[ 10.623465@2] type=1400 audit(1420072027.400:14): avc: denied { create } for pid=3284 comm="HwBinder:3284_1" scontext=u:r:hal_audio_default:s0 tcontext=u:r:hal_audio_default:s0 tclass=netlink_kobject_uevent_socket permissive=1
[ 10.623991@2] type=1400 audit(1420072027.400:14): avc: denied { create } for pid=3284 comm="HwBinder:3284_1" scontext=u:r:hal_audio_default:s0 tcontext=u:r:hal_audio_default:s0 tclass=netlink_kobject_uevent_socket permissive=1
[ 10.846558@1] wifi_platform_bus_enumerate device present 1
[ 10.846595@1] ======== Card detection to detect SDIO card! ========
[ 10.854045@0] meson-mmc: sdio: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[ 10.859234@0] meson-mmc: sdio: err: wait for irq service, bus_fsm:0x8
[ 10.866996@0] meson-mmc: sdio: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[ 10.872231@0] meson-mmc: sdio: err: wait for irq service, bus_fsm:0x8
[ 10.883259@0] meson-mmc: sdio: resp_timeout,vstat:0xa1ff2800,virqc:3fff
[ 10.885239@0] meson-mmc: sdio: err: wait for irq service, bus_fsm:0x8
[ 10.910575@1] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[ 10.910689@1] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c
[ 10.936457@1] sdio: queuing unknown CIS tuple 0x80 (2 bytes)
[ 10.941534@1] sdio: queuing unknown CIS tuple 0x80 (7 bytes)
[ 10.944883@1] sdio: queuing unknown CIS tuple 0x80 (3 bytes)
[ 10.950560@1] sdio: queuing unknown CIS tuple 0x80 (3 bytes)
[ 11.052076@1] meson-aml-mmc ffe03000.sdio: divider requested rate 150000000 != actual rate 142857141: ret=0
[ 11.056297@1] meson-mmc: actual_clock :142857141, HHI_nand: 0x80
[ 11.062230@1] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000247
[ 11.069279@1] meson-mmc: Data 1 aligned delay is 0
[ 11.074007@1] meson-mmc: sdio: clk 142857141 tuning start
[ 11.088115@1] meson-mmc: sdio: adj_win: < 0 2 3 4 5 6 >
[ 11.088148@1] meson-mmc: sdio: best_win_start =2, best_win_size =6
[ 11.093921@1] meson-mmc: sdio: sd_emmc_regs->gclock=0x10000247,sd_emmc_regs->gadjust=0x52000
[ 11.102370@1] meson-mmc: delay1:0x0, delay2:0x0
[ 11.112886@1] sdio: new ultra high speed SDR104 SDIO card at address 0001
[ 11.114160@1] sdio: clock 142857141, 4-bit-bus-width
[ 11.120154@3] meson-mmc: [sdio_reinit] finish
[ 11.140240@3] bcmsdh_register: register client driver
[ 11.140462@3] bcmsdh_sdmmc_probe: Enter num=1
[ 11.144214@3] bcmsdh_sdmmc_probe: Enter num=2
[ 11.148362@3] bus num (host idx)=2, slot num (rca)=1
[ 11.153279@3] found adapter info 'DHD generic adapter'
[ 11.158428@3] Wifi: bcmdhd_mem_prealloc: sectoin 3, size 139264
[ 11.164332@3] succeed to alloc static buf
[ 11.168273@3] Wifi: bcmdhd_mem_prealloc: sectoin 4, size 0
[ 11.173855@3] sdioh_attach: set sd_f2_blocksize 256
[ 11.178689@3] sdioh_attach: sd clock rate = 0
[ 11.183607@3] dhdsdio_probe : no mutex held. set lock
[ 11.188297@3] F1 signature read @0x18000000=0x17014354
[ 11.199442@2] F1 signature OK, socitype:0x1 chip:0x4354 rev:0x1 pkg:0x0
[ 11.201209@3] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000
[ 11.207587@3] Wifi: bcmdhd_mem_prealloc: sectoin 7, size 25064
[ 11.213282@3] [dhd] dhd_conf_set_chiprev : chip=0x4354, chiprev=1
[ 11.219398@3] Wifi: bcmdhd_mem_prealloc: sectoin 0, size 10320
[ 11.225892@3] Wifi: bcmdhd_mem_prealloc: sectoin 5, size 65536
[ 11.231434@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.239387@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.247775@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.256184@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.264599@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.273011@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.281410@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.289834@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 11.298403@3] Wifi: bcmdhd_mem_prealloc: sectoin 19, size 65652
[ 11.304122@3] Wifi: bcmdhd_mem_prealloc: sectoin 20, size 262144
[ 11.310130@3] Wifi: bcmdhd_mem_prealloc: sectoin 22, size 65536
[ 11.315977@3] dhd_log_dump_init: kernel log buf size = 512KB; logdump_prsrv_tailsize = 80KB; limit prsrv tail size to = 76KB
[ 11.327154@3] dhd_log_dump_init : Try to allocate memory total(4194304) special(8192)
[ 11.334959@3] Wifi: bcmdhd_mem_prealloc: sectoin 15, size 4194304
[ 11.341765@3] Wifi: bcmdhd_mem_prealloc: sectoin 16, size 8192
[ 11.346967@3] dhd_attach(): thread:dhd_watchdog_thread:d64 started
[ 11.353115@2] dhd_attach(): thread:dhd_dpc:d65 started
[ 11.358288@2] dhd_attach(): thread:dhd_rxf:d66 started
[ 11.363219@2] dhd_deferred_work_init: work queue initialized
[ 11.368878@2] dhd_tcpack_suppress_set: TCP ACK Suppress mode 0 -> mode 2
[ 11.375612@2] get_mem_val_from_file: File [/data/vendor/misc/wifi/.memdump.info] doesn't exist
[ 11.384135@2] dhd_get_memdump_info: MEMDUMP ENABLED = 3
[ 11.389352@2] Wifi: bcmdhd_mem_prealloc: sectoin 1, size 10300
[ 11.395156@2] Wifi: bcmdhd_mem_prealloc: sectoin 2, size 65536
[ 11.401051@2] dhdsdio_probe_init: making DHD_BUS_DOWN
[ 11.406214@2] sdioh_cis_read: func_cis_ptr[0]=0x10ac
[ 11.428211@0] Dongle Host Driver, version 100.10.545.5 (r826445-20190922-1) (amlogic-20191015-3)
[ 11.432540@0] Register interface [wlan0] MAC: 90:b6:86:6d:af:e1
[ 11.432540@0]
[ 11.439226@0] dhd_dbg_detach_pkt_monitor, 2099
[ 11.443530@0] dhd_bus_devreset: == Power OFF ==
[ 11.448456@3] dhd_bus_stop: making DHD_BUS_DOWN
[ 11.452520@3] bcmsdh_oob_intr_unregister: Enter
[ 11.456960@3] bcmsdh_oob_intr_unregister: irq is not registered
[ 11.462871@3] dhd_bus_devreset: making dhdpub up FALSE
[ 11.467960@3] dhd_txglom_enable: enable 0
[ 11.471941@3] dhd_bus_devreset: making DHD_BUS_DOWN
[ 11.476808@3] dhd_bus_devreset: WLAN OFF DONE
[ 11.481311@3] wifi_platform_set_power = 0, delay: 0 msec
[ 11.486532@3] ======== PULL WL_REG_ON(-1) LOW! ========
[ 11.486558@0] vout: aml_tvout_mode_work: monitor_timeout
[ 11.497016@3] dhd_ifname: ifidx 16 out of range
[ 11.501498@3] <if_bad>: set cur_etheraddr failed
[ 11.506091@3] dhd_ifname: ifidx 16 out of range
[ 11.510616@3] dhd_register_if: _dhd_set_mac_address() failed
[ 11.517221@3] Register interface [wlan1] MAC: 92:b6:86:6d:af:e1
[ 11.517221@3]
[ 11.523881@3] dhdsdio_probe : the lock is released.
[ 11.528958@3] dhd_module_init: Exit err=0
[ 11.537571@3] vout: vout_io_open
console:/ $ [ 11.595832@2] [DI] load 0x3e00 pq table len 424 later.
[ 11.629702@2] read descriptors
[ 11.629746@2] read strings
[ 12.023273@3] init: Could not find service hosting interface vendor.amlogic.hardware.hdmicec@1.0::IDroidHdmiCEC/default
[ 12.035405@3] vout: vout_io_open
[ 12.035440@3] vout: vout_ioctl: cmd_dir = 0x2, cmd_nr = 0x0
[ 12.038679@3] vout: vout_io_release
[ 12.586979@0] capability: warning: `main' uses 32-bit capabilities (legacy support in use)
[ 12.671163@0] avc open
[ 12.671190@0] amvenc_avc check CMA pool success, max instance: 3.
[ 12.675838@0] allocating phys 0x64c00000, size 20480k, wq:eb808800.
[ 12.680457@0] amvenc_avc memory config success, buff start:0x64c00000, size is 0x1400000, wq:eb808800.
[ 12.690033@0] avc release, wq:eb808800
[ 12.693538@0] remove encode_work_queue eb808800 success, _destroy_encode_work_queue line 3724.
[ 12.702673@0] [+] vpu_open
[ 12.708017@0] allocating phys 0x64c00000, virt addr 0x0, size 65536k
[ 12.711507@0] [-] vpu_open, ret: 0
[ 12.714600@0] vpu_release
[ 12.717190@0] vpu_free_buffers
[ 12.720196@0] vpu_free_instances
[ 12.723387@0] vpu_release, s_video_memory 0x64c00000
[ 13.973324@1] early_suspend_state=0
[ 15.159500@1] healthd: battery l=42 v=4 t=42.4 h=2 st=2 c=1 fc=10000000 chg=u
[ 15.162433@1] healthd: battery l=42 v=4 t=42.4 h=2 st=2 c=1 fc=10000000 chg=u
[ 15.197871@2] healthd: battery l=42 v=4 t=42.4 h=2 st=2 c=1 fc=10000000 chg=u
[ 15.397473@3] type=1400 audit(1420072029.004:20): avc: denied { net_admin } for pid=3279 comm="HwBinder:3279_2" capability=12 scontext=u:r:hdmicecd:s0 tcontext=u:r:hdmicecd:s0 tclass=capability permissive=1
[ 15.412155@3] type=1400 audit(1420072032.172:21): avc: denied { read } for pid=3553 comm="android.ui" name="state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 15.431888@3] type=1400 audit(1420072032.172:21): avc: denied { read } for pid=3553 comm="android.ui" name="state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 15.450838@3] type=1400 audit(1420072032.184:22): avc: denied { read open } for pid=3553 comm="android.ui" path="/sys/devices/virtual/amhdmitx/amhdmitx0/hdmi/state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 15.475609@3] type=1400 audit(1420072032.184:22): avc: denied { read open } for pid=3553 comm="android.ui" path="/sys/devices/virtual/amhdmitx/amhdmitx0/hdmi/state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 15.500137@3] type=1400 audit(1420072032.184:23): avc: denied { getattr } for pid=3553 comm="android.ui" path="/sys/devices/virtual/amhdmitx/amhdmitx0/hdmi/state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 15.950421@1] acc_open
[ 15.950459@1] acc_release
[ 16.220665@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 16.224457@3] eth0: device MAC address 90:0e:b3:2c:ea:da
[ 16.317145@3] meson6-dwmac ff3f0000.ethernet eth0: fail to init PTP.
[ 16.328178@1] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 16.328556@1] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 16.337912@3] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 16.380357@0] video_inuse return 0,set 1
[ 16.380797@0] is_reset=0
[ 16.381283@0] The fw has been loaded.
[ 16.384979@0] vdec_init, dev_name:ammvdec_h264, vdec_type=VDEC_TYPE_FRAME_BLOCK
[ 16.396466@0] H264 sysinfo: 1920x1080 duration=3200, pts_outside=1
[ 16.398649@0] [LOCAL], the fw (h264_multi) will be loaded.
[ 16.404530@1] ppmgr local_init
[ 16.406845@1] di_receiver_event_fun: vframe provider reg ppmgr
[ 16.413671@1] DI: reg f
[ 16.415271@0] ppmgr local_init
[ 16.415316@2] PPMGRVPP: info: y5fld[0] is NULL!
[ 16.423368@0] vdec->port_flag=0x102, port_flag=0x10b
[ 16.450156@2] aml_tdm_open
[ 16.451205@3] hdmitx: audio: aout notify format CT_PCM
[ 16.452357@3] hdmitx: hw: set audio
[ 16.454851@2] PPMGRVPP: info: tb first frame type: 0
[ 16.456353@2] PPMGRVPP: info: tb cma memory 64e80000, size 18000, item 8
[ 16.456459@2] DI: di_wr_cue_int:finish
[ 16.456462@2] di: di_init_buf -S
[ 16.456483@2] di: di_init_buf -E
[ 16.478017@3] hdmitx: hw: hdmitx tx_aud_src = 0
[ 16.483339@3] hdmitx: fs = 3, cd = 4, tmds_clk = 148352
[ 16.487732@3] hdmitx: hw: aud_n_para = 5824
[ 16.491845@0] di_cma_alloc:alloc 10 buffer use 36 ms(4294683688~4294683724)
[ 16.496886@2] pre_de_buf_config:4294683728ms 1th source change: 0x0/0/0/0=>0x9000/1920/1080/0
[ 16.502430@0] video first pts = bba
[ 16.510939@2] hdmitx: hw: set channel status
[ 16.515111@2] hdmitx: audio: Audio Type: PCM
[ 16.519383@2] hdmitx: audio: set audio param
[ 16.519998@0] videosync_open
[ 16.520033@0] omx need drop 0
[ 16.546434@3] videosync_open
[ 16.554032@2] asoc-aml-card auge_sound: tdm playback enable
[ 16.555317@3] fb: osd[0] enable: 1 scale:0x10001 (HwBinder:3295_1)
[ 16.560272@0] fb: osd[0] enable: 1 scale:0x10001 (HwBinder:3295_1)
[ 16.569710@2] fb: free_scale_switch to fb0, mode: 0x10001
[ 16.571814@0] fb: set logo loaded
[ 16.691700@0] sdcardfs version 2.0
[ 16.691738@0] sdcardfs: dev_name -> /data/media
[ 16.695592@0] sdcardfs: options -> fsuid=1023,fsgid=1023,multiuser,derive_gid,default_normal,mask=6,userid=0,gid=1015
[ 16.710084@0] sdcardfs: mnt -> ea9a1e10
[ 16.710222@0] sdcardfs: mounted on top of /data/media type ext4
[ 16.716676@0] Remount options were mask=23,gid=9997 for vfsmnt ea9a1310.
[ 16.726020@0] sdcardfs : options - debug:1
[ 16.726052@0] sdcardfs : options - gid:9997
[ 16.730728@0] sdcardfs : options - mask:23
[ 16.739492@0] Remount options were mask=7,gid=9997 for vfsmnt ea9a0610.
[ 16.740995@0] sdcardfs : options - debug:1
[ 16.744870@0] sdcardfs : options - gid:9997
[ 16.749588@0] sdcardfs : options - mask:7
[ 17.149543@3] dhd_open: Enter wlan0
[ 17.149596@3] dhd_open : no mutex held. set lock
[ 17.152487@3]
[ 17.152487@3] Dongle Host Driver, version 100.10.545.5 (r826445-20190922-1) (amlogic-20191015-3)
[ 17.162905@3] [dhd-wlan0] wl_android_wifi_on : in g_wifi_on=0
[ 17.169399@3] wifi_platform_set_power = 1, delay: 200 msec
[ 17.173989@3] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 17.179150@3] aml_wifi wifi: [extern_wifi_set_enable] WIFI Disable! 482
[ 17.399343@3] aml_wifi wifi: [extern_wifi_set_enable] WIFI Enable! 482
[ 17.870864@0] BT_RADIO going: on
[ 17.870906@0] AML_BT: going ON
[ 18.094567@1] sdio_reset_comm():
[ 18.094759@1] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[ 18.097939@1] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000023c
[ 18.130637@0] meson-mmc: actual_clock :400000, HHI_nand: 0x80
[ 18.130754@0] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000023c
[ 18.157543@0] sdio: queuing unknown CIS tuple 0x80 (2 bytes)
[ 18.163342@1] sdio: queuing unknown CIS tuple 0x80 (7 bytes)
[ 18.166244@3] sdio: queuing unknown CIS tuple 0x80 (3 bytes)
[ 18.183637@1] sdio: queuing unknown CIS tuple 0x80 (3 bytes)
[ 18.287061@0] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 0 to 9600
[ 18.289999@1] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 9600 to 9600
[ 18.297895@0] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 9600 to 115200
[ 18.312938@2] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 115200 to 2000000
[ 18.321629@3] meson-aml-mmc ffe03000.sdio: divider requested rate 150000000 != actual rate 142857141: ret=0
[ 18.326082@3] meson-mmc: actual_clock :142857141, HHI_nand: 0x80
[ 18.331837@3] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000247
[ 18.338882@3] meson-mmc: Data 1 aligned delay is 0
[ 18.343830@3] meson-mmc: sdio: clk 142857141 tuning start
[ 18.358631@3] meson-mmc: sdio: adj_win: < 0 2 3 4 5 6 >
[ 18.358666@3] meson-mmc: sdio: best_win_start =2, best_win_size =6
[ 18.364456@3] meson-mmc: sdio: sd_emmc_regs->gclock=0x10000247,sd_emmc_regs->gadjust=0x52000
[ 18.372913@3] meson-mmc: delay1:0x0, delay2:0x0
[ 18.377666@3] sdioh_start: set sd_f2_blocksize 256
[ 18.382885@3]
[ 18.382885@3]
[ 18.382885@3] dhd_bus_devreset: == Power ON ==
[ 18.390813@3] F1 signature read @0x18000000=0x17014354
[ 18.415240@1] F1 signature OK, socitype:0x1 chip:0x4354 rev:0x1 pkg:0x0
[ 18.417489@1] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000
[ 18.423542@3] dhd_bus_devreset: making DHD_BUS_DOWN
[ 18.428431@3] dhdsdio_probe_init: making DHD_BUS_DOWN
[ 18.434403@3] dhd_os_open_image1: /vendor/etc/wifi/buildin/config.txt (102 bytes) open success
[ 18.442449@0] [dhd] dhd_conf_read_sdio_params : dhd_slpauto = 0
[ 18.448574@0] [dhd] dhd_conf_read_country_list : ccode = XS
[ 18.453535@0] [dhd] dhd_conf_read_country_list : regrev = 0
[ 18.460091@0] [dhd] dhd_conf_set_path_params : Final fw_path=/vendor/etc/wifi/buildin/fw_bcm4354a1_ag.bin
[ 18.468826@0] [dhd] dhd_conf_set_path_params : Final nv_path=/vendor/etc/wifi/buildin/nvram_ap6354.txt
[ 18.479214@0] [dhd] dhd_conf_set_path_params : Final clm_path=/vendor/etc/wifi/buildin/clm_bcm4354a1_ag.blob
[ 18.489522@0] [dhd] dhd_conf_set_path_params : Final conf_path=/vendor/etc/wifi/buildin/config.txt
[ 18.500889@3] dhd_os_open_image1: /vendor/etc/wifi/buildin/fw_bcm4354a1_ag.bin (654038 bytes) open success
[ 18.684261@2] dhd_os_open_image1: /vendor/etc/wifi/buildin/nvram_ap6354.txt (3043 bytes) open success
[ 18.688737@3] NVRAM version: HS2754_NVRAM_V1.3_20190819
[ 18.698029@2] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.
[ 18.740014@0] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)
[ 18.741047@3] bcmsdh_oob_intr_register: HW_OOB irq=79 flags=0x8
[ 18.746651@0] get_mem_val_from_file: File [/data/vendor/misc/wifi/.memdump.info] doesn't exist
[ 18.755390@0] dhd_get_memdump_info: MEMDUMP ENABLED = 3
[ 18.761929@3] dhd_tcpack_suppress_set: TCP ACK Suppress mode 2 -> mode 1
[ 18.767807@3] dhd_apply_default_clm: Ignore clm file /vendor/etc/wifi/buildin/clm_bcm4354a1_ag.blob
[ 18.778918@3] Firmware up: op_mode=0x0005, MAC=90:b6:86:6d:af:e1
[ 18.786996@3] dhd_preinit_ioctls: event_log_max_sets: 26 ret: -23
[ 18.796792@3] Driver: 100.10.545.5 (r826445-20190922-1) (amlogic-20191015-3)
[ 18.796792@3] Firmware: wl0: May 31 2019 10:45:27 version 7.36.79.7 (r) FWID 01-be34f5a0
[ 18.796792@3] CLM: 7.9.0 (2019-05-31 10:44:59)
[ 18.812068@3] dhd_preinit_ioctls failed -23
[ 18.815912@3] dhd_txglom_enable: enable 1
[ 18.819484@3] [dhd] dhd_conf_set_txglom_params : txglom_mode=copy
[ 18.825554@3] [dhd] dhd_conf_set_txglom_params : txglomsize=36, deferred_tx_len=0
[ 18.833048@3] [dhd] dhd_conf_set_txglom_params : txinrx_thres=128, dhd_txminmax=-1
[ 18.840685@3] [dhd] dhd_conf_set_txglom_params : tx_max_offset=0, txctl_tmo_fix=300
[ 18.848242@3] [dhd] dhd_conf_get_disable_proptx : fw_proptx=1, disable_proptx=-1
[ 18.856874@3] dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64
[ 18.864202@1] dhd_pno_init: Support Android Location Service
[ 18.904546@3] dhd_rtt_init : FTM is not supported
[ 18.905186@2] dhd_rtt_ftm_config : failed to set config
[ 18.923418@3] dhd_preinit_ioctls: Failed to get preserve log # !
[ 18.924114@3] [dhd] dhd_conf_set_country : set country XS, revision 0
[ 18.933379@0] [dhd] dhd_conf_set_country : Country code: XS (XS/0)
[ 18.942480@2] [dhd-wlan0] wl_android_wifi_on : Success
[ 18.992180@2] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 2000000 to 115200
[ 19.004095@3] dhd_open : the lock is released.
[ 19.004128@3] dhd_open: Exit wlan0 ret=0
[ 19.006938@3] [wlan0] tx queue started
[ 19.078014@3] P2P interface registered
[ 19.078045@3] wl_cfgp2p_add_p2p_disc_if: wdev: eafb9c00, wdev->net: (null)
[ 19.092629@2] WLC_E_IF: NO_IF set, event Ignored
[ 19.183852@3] Random MAC OUI to be used - da:1:19
[ 19.187950@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.189811@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.196116@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.200078@2] meson_uart ffd24000.serial: ttyS1 use xtal(24M) 24000000 change 115200 to 2000000
[ 19.211220@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.217530@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.223847@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.230140@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.236466@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.243030@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.249049@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.255570@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.261690@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.269108@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.276617@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.280707@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.287171@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.293363@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.299722@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.306261@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.312543@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.318804@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.324988@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.331457@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.337617@3] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.344009@2] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.350470@1] dhd_dbg_set_event_log_tag set log tag iovar failed -23
[ 19.359092@0] dhd_dbg_attach_pkt_monitor, 1501
[ 19.391424@1] meson6-dwmac ff3f0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 19.394882@1] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 19.401313@1] [dhd] CFG80211-ERROR) wl_cfg80211_netdev_notifier_call : wdev null. Do nothing
[ 28.693763@2] is_reset=1
[ 28.694818@1] PPMGRVPP: info: task: quit
[ 28.694927@1] PPMGRVPP: info: tb cma free addr is 64e80000, size is 18000
[ 28.701729@1] ppmgr local_init
[ 28.705057@1] DI: di_receiver_event_fun: unreg
[ 28.708889@1] DI: provider name:(null)
[ 28.712630@1] di:no w
[ 28.712641@3] keep exit is di
[ 28.712651@3] video_vf_unreg_provider: vd1 used: true, vd2 used: false, keep_ret:2, black_out:0, cur_dispbuf:c19303b8
[ 28.712659@3] video first pts = 0
[ 28.712667@3] VD1 AFBC 0x0.
[ 28.712684@3] pattern detected = 1, pts_enter_pattern_cnt =2, pts_exit_pattern_cnt =1
[ 28.712789@3] di:retry cnt=0
[ 28.713379@3] di_cma_release:release 8 buffer use 0 ms(4294695944~4294695944)
[ 28.752201@3] DI: unreg f
[ 28.756616@3] is_reset=1
[ 28.757246@3] The fw has been loaded.
[ 28.760926@3] vdec_init, dev_name:ammvdec_h264, vdec_type=VDEC_TYPE_FRAME_BLOCK
[ 28.772917@1] H264 sysinfo: 1920x1080 duration=3200, pts_outside=1
[ 28.774474@1] [LOCAL], the fw (h264_multi) will be loaded.
[ 28.780157@1] ppmgr local_init
[ 28.782860@1] di_receiver_event_fun: vframe provider reg ppmgr
[ 28.788664@1] DI: reg f
[ 28.791221@3] ppmgr local_init
[ 28.794411@3] vdec->port_flag=0x102, port_flag=0x10b
[ 28.799197@3] is_reset=0
[ 28.803680@2] is_reset=1
[ 28.804203@3] PPMGRVPP: info: task: quit
[ 28.808004@2] ppmgr local_init
[ 28.811047@2] DI: di_receiver_event_fun: unreg
[ 28.815443@2] DI: provider name:(null)
[ 28.819183@2] di:no w
[ 28.819188@3] keep exit is di
[ 28.819194@3] video_vf_unreg_provider: vd1 used: true, vd2 used: false, keep_ret:2, black_out:0, cur_dispbuf:c19303b8
[ 28.819198@3] VD1 AFBC 0x0.
[ 28.819273@3] di:retry cnt=0
[ 28.819291@3] di_cma_release:release 0 buffer use 0 ms(4294696052~4294696052)
[ 28.847708@2] DI: unreg f
[ 28.851265@2] is_reset=1
[ 28.852750@2] The fw has been loaded.
[ 28.856433@2] vdec_init, dev_name:ammvdec_h264, vdec_type=VDEC_TYPE_FRAME_BLOCK
[ 28.866286@0] H264 sysinfo: 1920x1080 duration=3200, pts_outside=1
[ 28.869968@0] [LOCAL], the fw (h264_multi) will be loaded.
[ 28.875717@0] ppmgr local_init
[ 28.878316@0] di_receiver_event_fun: vframe provider reg ppmgr
[ 28.884362@0] DI: reg f
[ 28.886710@2] ppmgr local_init
[ 28.889983@2] vdec->port_flag=0x102, port_flag=0x10b
[ 28.894639@2] is_reset=0
[ 28.898866@0] PPMGRVPP: info: task: quit
[ 28.901042@0] ppmgr local_init
[ 28.904022@0] DI: di_receiver_event_fun: unreg
[ 28.908421@0] DI: provider name:(null)
[ 28.912171@0] di:no w
[ 28.912180@2] keep exit is di
[ 28.912186@2] video_vf_unreg_provider: vd1 used: true, vd2 used: false, keep_ret:2, black_out:0, cur_dispbuf:c19303b8
[ 28.912190@2] VD1 AFBC 0x0.
[ 28.912265@2] di:retry cnt=0
[ 28.912283@2] di_cma_release:release 0 buffer use 0 ms(4294696144~4294696144)
[ 28.940684@0] DI: unreg f
[ 28.950615@2] set video_inuse val:0
[ 28.977221@2] audio_dsp: dts_dec_control/0x0
[ 28.977964@0] VID: VD1 set global output as 0
[ 28.980291@0] VID: VD1 off
[ 29.014180@3] asoc-aml-card auge_sound: tdm playback stop
[ 29.020875@2] asoc-aml-card auge_sound: tdm playback enable
[ 29.262121@3] binder: undelivered transaction 28078, process died.
[ 29.262941@3] binder: undelivered transaction 28124, process died.
[ 29.269529@3] binder: undelivered transaction 28161, process died.
[ 29.275640@3] binder: undelivered transaction 28186, process died.
[ 29.281797@3] binder: undelivered transaction 28206, process died.
[ 29.287526@3] binder: undelivered transaction 27946, process died.
[ 29.293520@2] zram0: detected capacity change from 0 to 268435456
[ 29.332963@3] [dhd-wlan0] wl_run_escan : LEGACY_SCAN sync ID: 0, bssidx: 0
[ 29.337615@3] mkswap: Swapspace size: 262140k, UUID=be4bcb3d-8b4e-4b37-9412-a585fdbbb97a
[ 29.343337@3] Adding 262140k swap on /dev/block/zram0. Priority:-1 extents:1 across:262140k SS
[ 29.359135@1] selinux: SELinux: Skipping restorecon_recursive(/data/system_ce/0)
[ 29.359135@1]
[ 29.508407@2] selinux: SELinux: Skipping restorecon_recursive(/data/misc_ce/0)
[ 29.508407@2]
[ 29.542597@2] type=1400 audit(1420072032.184:23): avc: denied { getattr } for pid=3553 comm="android.ui" path="/sys/devices/virtual/amhdmitx/amhdmitx0/hdmi/state" dev="sysfs" ino=10094 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs_amhdmitx:s0 tclass=file permissive=1
[ 29.573434@1] audit: audit_lost=1 audit_rate_limit=5 audit_backlog_limit=64
[ 29.573438@1] audit: rate limit exceeded
[ 29.592782@3] type=1400 audit(1420072046.316:24): avc: denied { read execute } for pid=4128 comm="test_flag.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:test_flag:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.614417@3] type=1400 audit(1420072046.316:24): avc: denied { read execute } for pid=4128 comm="test_flag.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:test_flag:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.636024@3] type=1400 audit(1420072046.320:25): avc: denied { getattr } for pid=4128 comm="test_flag.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:test_flag:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.656600@3] type=1400 audit(1420072046.320:25): avc: denied { getattr } for pid=4128 comm="test_flag.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:test_flag:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.677528@3] type=1400 audit(1420072046.324:26): avc: denied { read execute } for pid=4129 comm="preinstall.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:preinstall:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.701529@3] type=1400 audit(1420072046.324:26): avc: denied { read execute } for pid=4129 comm="preinstall.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:preinstall:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.720925@3] type=1400 audit(1420072046.328:27): avc: denied { getattr } for pid=4129 comm="preinstall.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:preinstall:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.742093@3] type=1400 audit(1420072046.328:27): avc: denied { getattr } for pid=4129 comm="preinstall.sh" path="/system/bin/sh" dev="mmcblk0p18" ino=788 scontext=u:r:preinstall:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=1
[ 29.763722@3] type=1400 audit(1420072046.348:28): avc: denied { dac_override } for pid=4128 comm="test_flag.sh" capability=1 scontext=u:r:test_flag:s0 tcontext=u:r:test_flag:s0 tclass=capability permissive=1
console:/ $
console:/ $
console:/ $
console:/ $
console:/ $ su
[ 31.601979@3] asoc-aml-card auge_sound: tdm playback stop
console:/ #
console:/ #
console:/ #
console:/ #
console:/ #
console:/ # [ 32.538619@3] aml_dai_tdm_hw_free(), disable mclk for TDM-B[ 32.717162@3] audit: audit_lost=15 audit_rate_limit=5 audit_backlog_limit=64
[ 32.718624@3] audit: rate limit exceeded
ifconf[ 33.763118@2] [dhd] CFG80211-ERROR) wl_notify_rx_mgmt_frame : WLC_GET_BSSID error -17
ig[ 34.049163@1] [dhd] CFG80211-ERROR) wl_notify_rx_mgmt_frame : WLC_GET_BSSID error -17
[ 34.211026@2] [dhd] CFG80211-ERROR) wl_notify_rx_mgmt_frame : WLC_GET_BSSID error -17
[ 34.231749@1] [dhd] CFG80211-ERROR) wl_notify_rx_mgmt_frame : WLC_GET_BSSID error -17
wlan0 Link encap:Ethernet HWaddr 90:b6:86:6d:af:e1 Driver bcmsdh_sdmmc
[ 34.445094@0] [dhd] CFG80211-ERROR) wl_notify_rx_mgmt_frame : WLC_GET_BSSID error -17
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 TX bytes:188
eth0 Link encap:Ethernet HWaddr 90:0e:b3:2c:ea:da Driver meson6-dwmac
inet6 addr: fe80::920e:b3ff:fe2c:eada/64 Scope: Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 TX bytes:4232
Interrupt:28
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope: Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:33 errors:0 dropped:0 overruns:0 frame:0
TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:4216 TX bytes:4216
console:/ #
从以上LOG 信息当中
[ 0.931186@0] TX Checksum insertion supported
[ 0.931195@0] Wake-Up On Lan supported
[ 0.931273@0] Enable RX Mitigation via HW Watchdog Timer
[ 0.934375@0] libphy: stmmac: probed
[ 0.934395@0] eth%d: PHY ID 02430c20 at 2 IRQ POLL (stmmac-0:02) active
[ 0.936413@0] PPP generic driver version 2.4.2
[ 0.936694@0] PPP BSD Compression module registered
[ 0.936710@0] PPP Deflate Compression module registered
[ 0.936738@0] PPP MPPE Compression module registered
[ 0.936751@0] NET: Registered protocol family 24
我们看到我们的驱动加载后,ID 已经匹配上了
console:/ # ifconfig -a
wlan0 Link encap:Ethernet HWaddr 90:b6:86:6d:af:e1 Driver bcmsdh_sdmmc
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 TX bytes:188
ip6_vti0 Link encap:UNSPEC
NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 TX bytes:0
eth0 Link encap:Ethernet HWaddr 90:0e:b3:2c:ea:da Driver meson6-dwmac
inet6 addr: fe80::920e:b3ff:fe2c:eada/64 Scope: Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 TX bytes:8300
Interrupt:28
ip6tnl0 Link encap:UNSPEC
NOARP MTU:1452 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 TX bytes:0
wlan1 Link encap:Ethernet HWaddr 92:b6:86:6d:af:e1 Driver bcmsdh_sdmmc
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 TX bytes:0
sit0 Link encap:IPv6-in-IPv4
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 TX bytes:0
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope: Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:51 errors:0 dropped:0 overruns:0 frame:0
TX packets:51 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:6544 TX bytes:6544
tunl0 Link encap:UNSPEC
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 TX bytes:0
ip_vti0 Link encap:UNSPEC
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 TX bytes:0
console:/sys/devices/platform/ff3f0000.ethernet/mdio_bus/stmmac-0/stmmac-0:02 #
cat phy_id
[ 113.087726@2] 0: 0x1140
[ 113.087795@2] 1: 0x796d
[ 113.087873@2] 2: 0x243
[ 113.089353@2] 3: 0xc20
[ 113.091759@2] 4: 0xde1
[ 113.094031@2] 5: 0xc5e1
[ 113.096510@2] 6: 0xf
[ 113.098664@2] 7: 0x2801
[ 113.101129@2] 8: 0x4cba
[ 113.103570@2] 9: 0x700
[ 113.105818@2] 10: 0x78ff
[ 113.108406@2] 11: 0x0
[ 113.110650@2] 12: 0x0
[ 113.112839@2] 13: 0x0
[ 113.115127@2] 14: 0x31b
[ 113.117617@2] 15: 0x3000
[ 113.120155@2] 16: 0x3ba8
[ 113.122758@2] 17: 0xd000
[ 113.125596@2] 18: 0x9f01
[ 113.127921@2] 19: 0x1da0
[ 113.130628@2] 20: 0x0
[ 113.132338@2] 21: 0x8d15
[ 113.134979@2] 22: 0xb1c
[ 113.137315@2] 23: 0x2d
[ 113.139700@2] 24: 0x4000
[ 113.142131@2] 25: 0xd16d
[ 113.144677@2] 26: 0x0
[ 113.146950@2] 27: 0xffc8
[ 113.149428@2] 28: 0xec40
[ 113.152001@2] 29: 0x1767
[ 113.154472@2] 30: 0x4a
[ 113.156821@2] 31: 0x0
phy reg 0x0 = 0x1140
看到这些信息后,可以确认我们添加的IP1001C 驱动是没有问题的
接下来我们测试,发现100M 网络已经通了,但是1000M 网络不通,这个可能和主控的PHY 控制器有关,接下来我们找一下主控调试PHY的寄存器资料
通过以上资料,我们知道主控有2个寄存器涉及调试1000M 的寄存器
分别为
ff634540 mc_val 对应tx_delay
根据上图组合有:
1601 1621 1641 1661
1609 1629 1649 1669
ff634544 cali_val 对应rx_clk_delay
10000 ~F0000
最终我们通过寄存器控制
echo ff634544 >/sys/kernel/debug/aml_reg/paddr
console:/vendor/bin # cat /sys/kernel/debug/aml_reg/paddr
[0xff634544] = 0xC0000
1.echo ff634544 10000 >/sys/kernel/debug/aml_reg/paddr #测试ETHERNET 10000~f0000
cat /sys/kernel/debug/aml_reg/paddr
2.echo ff634540 >/sys/kernel/debug/aml_reg/paddr
# 1601 1621 1641 1661
#位翻转参数
# 1609 1629 1649 1669
cat /sys/kernel/debug/aml_reg/paddr
console:/ # cat /sys/kernel/debug/aml_reg/paddr
[0xff634540] = 0x1629
得到的理想值为:
ðmac {
status = "okay";
pinctrl-names = "external_eth_pins";
pinctrl-0 = <&external_eth_pins>;
mc_val = <0x1621>;
cali_val = <0x50000>;
// rx_delay = <1>;
// auto_cali_idx = <1>;
internal_phy=<0>;
};
将DTS 更新后,我们查看参数是否已经设置成功
g12a_u212_v1#fdt addr $dtb_mem_addr;fdt print /ethernet
ethernet@ff3f0000 {
compatible = "amlogic, g12a-eth-dwmac", "snps,dwmac";
reg = <0xff3f0000 0x00010000 0xff634540 0x00000008 0xff64c000 0x000000a0 0xffd01008 0x00000004>;
reg-names = "eth_base", "eth_cfg", "eth_pll", "eth_reset";
interrupts = <0x00000000 0x00000008 0x00000001>;
interrupt-names = "macirq";
status = "okay";
clocks = <0x00000002 0x00000038>;
clock-names = "ethclk81";
pll_val = <0x09c0040a 0x927e0000 0xac5f49e5>;
analog_val = <0x20200000 0x0000c000 0x00000023>;
pinctrl-names = "external_eth_pins";
pinctrl-0 = <0x00000011>;
mc_val = <0x00001621>;
cali_val = <0x00050000>;
internal_phy = <0x00000000>;
phandle = <0x0000009a>;
};
函数已经写进去
目前将测试结果,添加进DTS 进行烧录2PCS 机器,1PCS 正常,1PCS 无法联1000M 网,待分析问题。