Lines Matching refs:gpio_obj
273 const struct swm_pin_device *gpio_obj; in _pin2struct() local
277 gpio_obj = &pin_obj[pin]; in _pin2struct()
281 gpio_obj = RT_NULL; in _pin2struct()
284 return gpio_obj; in _pin2struct()
289 const struct swm_pin_device *gpio_obj; in swm_pin_mode() local
295 gpio_obj = _pin2struct(pin); in swm_pin_mode()
296 if (gpio_obj == RT_NULL) in swm_pin_mode()
328 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, dir, pull_up, pull_down, open_drain); in swm_pin_mode()
333 const struct swm_pin_device *gpio_obj; in swm_pin_write() local
335 gpio_obj = _pin2struct(pin); in swm_pin_write()
336 if (gpio_obj == RT_NULL) in swm_pin_write()
342 GPIO_AtomicSetBit(gpio_obj->gpio, gpio_obj->pin); in swm_pin_write()
346 GPIO_AtomicClrBit(gpio_obj->gpio, gpio_obj->pin); in swm_pin_write()
352 const struct swm_pin_device *gpio_obj; in swm_pin_read() local
354 gpio_obj = _pin2struct(pin); in swm_pin_read()
355 if (gpio_obj == RT_NULL) in swm_pin_read()
359 return (rt_ssize_t)GPIO_GetBit(gpio_obj->gpio, gpio_obj->pin); in swm_pin_read()
403 const struct swm_pin_device *gpio_obj; in swm_pin_irq_enable() local
406 gpio_obj = _pin2struct(pin); in swm_pin_irq_enable()
407 if (gpio_obj == RT_NULL) in swm_pin_irq_enable()
417 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, 0, 0, 1, 0); in swm_pin_irq_enable()
418 EXTI_Init(gpio_obj->gpio, gpio_obj->pin, EXTI_RISE_EDGE); in swm_pin_irq_enable()
421 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, 0, 1, 0, 0); in swm_pin_irq_enable()
422 EXTI_Init(gpio_obj->gpio, gpio_obj->pin, EXTI_FALL_EDGE); in swm_pin_irq_enable()
425 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, 0, 1, 1, 0); in swm_pin_irq_enable()
426 EXTI_Init(gpio_obj->gpio, gpio_obj->pin, EXTI_BOTH_EDGE); in swm_pin_irq_enable()
429 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, 0, 0, 1, 0); in swm_pin_irq_enable()
430 EXTI_Init(gpio_obj->gpio, gpio_obj->pin, EXTI_HIGH_LEVEL); in swm_pin_irq_enable()
433 GPIO_Init(gpio_obj->gpio, gpio_obj->pin, 0, 1, 0, 0); in swm_pin_irq_enable()
434 EXTI_Init(gpio_obj->gpio, gpio_obj->pin, EXTI_LOW_LEVEL); in swm_pin_irq_enable()
441 NVIC_EnableIRQ(gpio_obj->irq); in swm_pin_irq_enable()
442 EXTI_Open(gpio_obj->gpio, gpio_obj->pin); in swm_pin_irq_enable()
449 EXTI_Close(gpio_obj->gpio, gpio_obj->pin); in swm_pin_irq_enable()
539 const struct swm_pin_device *gpio_obj; in swm_pin_isr() local
544 for (gpio_obj = &pin_obj[0]; in swm_pin_isr()
545 gpio_obj->index < ITEM_NUM(pin_obj); in swm_pin_isr()
546 gpio_obj++) in swm_pin_isr()
548 if (gpio_obj->gpio == GPIOx) in swm_pin_isr()
550 gpio[index] = gpio_obj->index; in swm_pin_isr()
558 gpio_obj = _pin2struct(gpio[index]); in swm_pin_isr()
559 if (EXTI_State(gpio_obj->gpio, gpio_obj->pin)) in swm_pin_isr()
561 EXTI_Clear(gpio_obj->gpio, gpio_obj->pin); in swm_pin_isr()
562 if (pin_irq_hdr_tab[gpio_obj->index].hdr) in swm_pin_isr()
564 pin_irq_hdr_tab[gpio_obj->index].hdr(pin_irq_hdr_tab[gpio_obj->index].args); in swm_pin_isr()