esp32/network_lan: Add support for IP101 PHY.

Signed-off-by: Kenneth Ryerson <kenneth.ryerson@gmail.com>
This commit is contained in:
Kenneth Ryerson 2020-04-20 09:51:11 -05:00 committed by Damien George
parent 5f0e9d1bac
commit 76fefad18b
3 changed files with 9 additions and 2 deletions

View File

@ -776,6 +776,7 @@ STATIC const mp_rom_map_elem_t mp_module_network_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_PHY_LAN8720), MP_ROM_INT(PHY_LAN8720) },
{ MP_ROM_QSTR(MP_QSTR_PHY_TLK110), MP_ROM_INT(PHY_TLK110) },
{ MP_ROM_QSTR(MP_QSTR_PHY_IP101), MP_ROM_INT(PHY_IP101) },
// ETH Clock modes from ESP-IDF
#if !MICROPY_ESP_IDF_4

View File

@ -26,7 +26,7 @@
#ifndef MICROPY_INCLUDED_ESP32_MODNETWORK_H
#define MICROPY_INCLUDED_ESP32_MODNETWORK_H
enum { PHY_LAN8720, PHY_TLK110 };
enum { PHY_LAN8720, PHY_TLK110, PHY_IP101 };
MP_DECLARE_CONST_FUN_OBJ_KW(get_lan_obj);
MP_DECLARE_CONST_FUN_OBJ_1(ppp_make_new_obj);

View File

@ -33,6 +33,7 @@
#include "eth_phy/phy.h"
#include "eth_phy/phy_tlk110.h"
#include "eth_phy/phy_lan8720.h"
#include "eth_phy/phy_ip101.h"
#include "tcpip_adapter.h"
#include "modnetwork.h"
@ -123,7 +124,9 @@ STATIC mp_obj_t get_lan(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_ar
mp_raise_ValueError(MP_ERROR_TEXT("invalid phy address"));
}
if (args[ARG_phy_type].u_int != PHY_LAN8720 && args[ARG_phy_type].u_int != PHY_TLK110) {
if (args[ARG_phy_type].u_int != PHY_LAN8720 &&
args[ARG_phy_type].u_int != PHY_TLK110 &&
args[ARG_phy_type].u_int != PHY_IP101) {
mp_raise_ValueError(MP_ERROR_TEXT("invalid phy type"));
}
@ -145,6 +148,9 @@ STATIC mp_obj_t get_lan(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_ar
case PHY_LAN8720:
config = phy_lan8720_default_ethernet_config;
break;
case PHY_IP101:
config = phy_ip101_default_ethernet_config;
break;
}
self->link_func = config.phy_check_link;