blob: edc14ce805def481e5dc11997032c73186a6a948 [file] [log] [blame]
/*
* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#ifndef _QCA8033_PHY_H_
#define _QCA8033_PHY_H_
#define QCA8033_PHY_CONTROL 0
#define QCA8033_PHY_STATUS 1
#define QCA8033_PHY_ID1 2
#define QCA8033_PHY_ID2 3
#define QCA8033_AUTONEG_ADVERT 4
#define QCA8033_LINK_PARTNER_ABILITY 5
#define QCA8033_AUTONEG_EXPANSION 6
#define QCA8033_NEXT_PAGE_TRANSMIT 7
#define QCA8033_LINK_PARTNER_NEXT_PAGE 8
#define QCA8033_1000BASET_CONTROL 9
#define QCA8033_1000BASET_STATUS 10
#define QCA8033_MMD_CTRL_REG 13
#define QCA8033_MMD_DATA_REG 14
#define QCA8033_EXTENDED_STATUS 15
#define QCA8033_PHY_SPEC_CONTROL 16
#define QCA8033_PHY_SPEC_STATUS 17
#define QCA8033_PHY_INTR_MASK 18
#define QCA8033_PHY_INTR_STATUS 19
#define QCA8033_PHY_CDT_CONTROL 22
#define QCA8033_PHY_CDT_STATUS 28
#define QCA8033_DEBUG_PORT_ADDRESS 29
#define QCA8033_DEBUG_PORT_DATA 30
/* Phy Specific status fields offset:17 */
/* 1=Speed & Duplex resolved */
#define QCA8033_STATUS_LINK_PASS 0x0400
#define QCA8033_STATUS_RESOVLED 0x0800
/* 1=Duplex 0=Half Duplex */
#define QCA8033_STATUS_FULL_DUPLEX 0x2000
/* Speed, bits 14:15 */
#define QCA8033_STATUS_SPEED 0xC000
#define QCA8033_STATUS_SPEED_MASK 0xC000
/* 00=10Mbs */
#define QCA8033_STATUS_SPEED_10MBS 0x0000
/* 01=100Mbs */
#define QCA8033_STATUS_SPEED_100MBS 0x4000
/* 10=1000Mbs */
#define QCA8033_STATUS_SPEED_1000MBS 0x8000
#endif /* _QCA8033_PHY_H_ */