@@ -49,6 +49,23 @@ const mp_obj_type_t cyw43_pin_type = {
49
49
)
50
50
};
51
51
52
+ //| def set_power_management(/, value:int) -> None:
53
+ //| """Set the power management register
54
+ //|
55
+ //| According to Raspberry Pi documentation, the value 0xa11140
56
+ //| increases responsiveness at the cost of higher power usage.
57
+ //|
58
+ //| Besides this value, there appears to be no other public documentation
59
+ //| of the values that can be used.
60
+ //| """
61
+ //|
62
+ STATIC mp_obj_t cyw43_set_power_management (const mp_obj_t value_in ) {
63
+ mp_int_t value = mp_obj_get_int (value_in );
64
+ cyw43_wifi_pm (& cyw43_state , value );
65
+ return mp_const_none ;
66
+ }
67
+ STATIC MP_DEFINE_CONST_FUN_OBJ_1 (cyw43_set_power_management_obj , cyw43_set_power_management );
68
+
52
69
const mcu_pin_obj_t * validate_obj_is_pin_including_cyw43 (mp_obj_t obj ) {
53
70
if (!mp_obj_is_type (obj , & mcu_pin_type ) && !mp_obj_is_type (obj , & cyw43_pin_type )) {
54
71
mp_raise_TypeError_varg (translate ("Expected a %q or %q" ), mcu_pin_type .name , cyw43_pin_type .name );
@@ -65,6 +82,7 @@ const mcu_pin_obj_t *validate_obj_is_free_pin_including_cyw43(mp_obj_t obj) {
65
82
STATIC const mp_rom_map_elem_t cyw43_module_globals_table [] = {
66
83
{ MP_ROM_QSTR (MP_QSTR___name__ ), MP_ROM_QSTR (MP_QSTR_cyw43 ) },
67
84
{ MP_ROM_QSTR (MP_QSTR_CywPin ), MP_ROM_QSTR (MP_QSTR_CywPin ) },
85
+ { MP_ROM_QSTR (MP_QSTR_set_power_management ), MP_ROM_QSTR (MP_QSTR_set_power_management ) },
68
86
};
69
87
70
88
STATIC MP_DEFINE_CONST_DICT (cyw43_module_globals , cyw43_module_globals_table );
0 commit comments