[libopenstm32-devel] gpio.c problems
Status: Inactive
Brought to you by:
uh1763
From: Thomas O. <to...@vi...> - 2010-02-28 12:51:36
|
Hello, I had 2 problems with the function gpio_set_mode(). 1. it generally sets the submited config to the mentioned gpio-pins but kills configs for other pins on the same gpio port. So if i want to set PB6 and PB7 to push-pull and I2C2 SDA and SCL (PB10 and PB11) to open drain its simply impossible, because the second config try kills the first. 2. the floating-bit thing isnt working correctly. if i enable a config for PB6 for instance the same config will also apply to all following pins of that port (aka PB7-PB15). Thats because the shifting isnt only done if a pin isnt to configure, if you are hitting a matching bit the shiftig is missing. I think shifting isnt nessessary for a separate variable. We have the counting index from the for statement. so I've rewritten the function a little bit to address these problems. Patch is attached. Best regards, Thomas Otto |