diff options
| author | Dan Halbert <halbert@halwitz.org> | 2020-02-28 23:32:24 -0500 |
|---|---|---|
| committer | Dan Halbert <halbert@halwitz.org> | 2020-02-28 23:43:04 -0500 |
| commit | b6206406de2a232299ebdd1d187c7656ae79f8f2 (patch) | |
| tree | a5738ccf40ddd8092a1f2edf9811e4a3b6404968 /shared-bindings/busio/SPI.c | |
| parent | 29e44721d2d4712de865aa3a3b8fdd5de90c029b (diff) | |
new pin validation routines; don't use mp_const_none if NULL will do
Diffstat (limited to 'shared-bindings/busio/SPI.c')
| -rw-r--r-- | shared-bindings/busio/SPI.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/shared-bindings/busio/SPI.c b/shared-bindings/busio/SPI.c index 828ffb8d0..ca84c0f24 100644 --- a/shared-bindings/busio/SPI.c +++ b/shared-bindings/busio/SPI.c @@ -89,17 +89,13 @@ STATIC mp_obj_t busio_spi_make_new(const mp_obj_type_t *type, size_t n_args, con }; mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)]; mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args); - assert_pin(args[ARG_clock].u_obj, false); - assert_pin(args[ARG_MOSI].u_obj, true); - assert_pin(args[ARG_MISO].u_obj, true); - const mcu_pin_obj_t* clock = MP_OBJ_TO_PTR(args[ARG_clock].u_obj); - assert_pin_free(clock); - const mcu_pin_obj_t* mosi = MP_OBJ_TO_PTR(args[ARG_MOSI].u_obj); - assert_pin_free(mosi); - const mcu_pin_obj_t* miso = MP_OBJ_TO_PTR(args[ARG_MISO].u_obj); - assert_pin_free(miso); + + const mcu_pin_obj_t* clock = validate_is_free_pin(args[ARG_clock].u_obj); + const mcu_pin_obj_t* mosi = validate_is_free_pin_or_none(args[ARG_MOSI].u_obj); + const mcu_pin_obj_t* miso = validate_is_free_pin_or_none(args[ARG_MISO].u_obj); + common_hal_busio_spi_construct(self, clock, mosi, miso); - return (mp_obj_t)self; + return MP_OBJ_FROM_PTR(self); } //| .. method:: deinit() |
