From 7a48110067d5663229b4fb32ee4413d9cbaeb742 Mon Sep 17 00:00:00 2001 From: Salvatore Pitrulli Date: Tue, 10 May 2011 15:16:13 +0200 Subject: [PATCH] STM32W flasher utilities for Linux and Windows merged into a single folder. --- cpu/stm32w108/Makefile.stm32w108 | 5 ++--- .../{linux => }/CompositeForSTM32W.bin | Bin .../stm32w/stm32w_flasher/{win => }/FTD2XX.dll | Bin .../stm32w_flasher/{win => }/JlinkARM.DLL | Bin tools/stm32w/stm32w_flasher/{linux => }/README | 0 .../stm32w/stm32w_flasher/{win => }/_ctypes.pyd | Bin .../stm32w/stm32w_flasher/{win => }/_socket.pyd | Bin tools/stm32w/stm32w_flasher/{win => }/_ssl.pyd | Bin tools/stm32w/stm32w_flasher/{win => }/bz2.pyd | Bin .../stm32w_flasher/{win => }/d2xx._d2xx.pyd | Bin .../stm32w_flasher/{win => }/main_rfbl.s37 | Bin .../stm32w/stm32w_flasher/{win => }/pyexpat.pyd | Bin .../stm32w_flasher/{win => }/python26.dll | Bin .../stm32w_flasher/{win => }/pywintypes26.dll | Bin .../stm32w/stm32w_flasher/{win => }/select.pyd | Bin .../stm32w_flasher/{linux => }/stm32w_flasher | Bin .../stm32w_flasher/{win => }/stm32w_flasher.exe | Bin .../stm32w_flasher/{win => }/unicodedata.pyd | Bin .../stm32w_flasher/{win => }/w9xpopen.exe | Bin .../stm32w_flasher/win/CompositeForSTM32W.bin | Bin 25168 -> 0 bytes .../stm32w_flasher/{win => }/win32api.pyd | Bin .../stm32w_flasher/{win => }/win32pipe.pyd | Bin 22 files changed, 2 insertions(+), 3 deletions(-) rename tools/stm32w/stm32w_flasher/{linux => }/CompositeForSTM32W.bin (100%) rename tools/stm32w/stm32w_flasher/{win => }/FTD2XX.dll (100%) rename tools/stm32w/stm32w_flasher/{win => }/JlinkARM.DLL (100%) rename tools/stm32w/stm32w_flasher/{linux => }/README (100%) rename tools/stm32w/stm32w_flasher/{win => }/_ctypes.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/_socket.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/_ssl.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/bz2.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/d2xx._d2xx.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/main_rfbl.s37 (100%) rename tools/stm32w/stm32w_flasher/{win => }/pyexpat.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/python26.dll (100%) rename tools/stm32w/stm32w_flasher/{win => }/pywintypes26.dll (100%) rename tools/stm32w/stm32w_flasher/{win => }/select.pyd (100%) rename tools/stm32w/stm32w_flasher/{linux => }/stm32w_flasher (100%) rename tools/stm32w/stm32w_flasher/{win => }/stm32w_flasher.exe (100%) rename tools/stm32w/stm32w_flasher/{win => }/unicodedata.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/w9xpopen.exe (100%) delete mode 100644 tools/stm32w/stm32w_flasher/win/CompositeForSTM32W.bin rename tools/stm32w/stm32w_flasher/{win => }/win32api.pyd (100%) rename tools/stm32w/stm32w_flasher/{win => }/win32pipe.pyd (100%) diff --git a/cpu/stm32w108/Makefile.stm32w108 b/cpu/stm32w108/Makefile.stm32w108 index 1f27653a1..494de3a31 100644 --- a/cpu/stm32w108/Makefile.stm32w108 +++ b/cpu/stm32w108/Makefile.stm32w108 @@ -163,13 +163,12 @@ endif - -FLASHER = $(CONTIKI)/tools/stm32w/stm32w_flasher/linux/stm32w_flasher +FLASHER = $(CONTIKI)/tools/stm32w/stm32w_flasher/stm32w_flasher # Check if we are running under Windows ifdef OS ifneq (,$(findstring Windows,$(OS))) - FLASHER = $(CONTIKI)/tools/stm32w/stm32w_flasher/win/stm32w_flasher + FLASHER = $(CONTIKI)/tools/stm32w/stm32w_flasher/stm32w_flasher.exe endif endif diff --git a/tools/stm32w/stm32w_flasher/linux/CompositeForSTM32W.bin b/tools/stm32w/stm32w_flasher/CompositeForSTM32W.bin similarity index 100% rename from tools/stm32w/stm32w_flasher/linux/CompositeForSTM32W.bin rename to tools/stm32w/stm32w_flasher/CompositeForSTM32W.bin diff --git a/tools/stm32w/stm32w_flasher/win/FTD2XX.dll b/tools/stm32w/stm32w_flasher/FTD2XX.dll similarity index 100% rename from tools/stm32w/stm32w_flasher/win/FTD2XX.dll rename to tools/stm32w/stm32w_flasher/FTD2XX.dll diff --git a/tools/stm32w/stm32w_flasher/win/JlinkARM.DLL b/tools/stm32w/stm32w_flasher/JlinkARM.DLL similarity index 100% rename from tools/stm32w/stm32w_flasher/win/JlinkARM.DLL rename to tools/stm32w/stm32w_flasher/JlinkARM.DLL diff --git a/tools/stm32w/stm32w_flasher/linux/README b/tools/stm32w/stm32w_flasher/README similarity index 100% rename from tools/stm32w/stm32w_flasher/linux/README rename to tools/stm32w/stm32w_flasher/README diff --git a/tools/stm32w/stm32w_flasher/win/_ctypes.pyd b/tools/stm32w/stm32w_flasher/_ctypes.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/_ctypes.pyd rename to tools/stm32w/stm32w_flasher/_ctypes.pyd diff --git a/tools/stm32w/stm32w_flasher/win/_socket.pyd b/tools/stm32w/stm32w_flasher/_socket.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/_socket.pyd rename to tools/stm32w/stm32w_flasher/_socket.pyd diff --git a/tools/stm32w/stm32w_flasher/win/_ssl.pyd b/tools/stm32w/stm32w_flasher/_ssl.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/_ssl.pyd rename to tools/stm32w/stm32w_flasher/_ssl.pyd diff --git a/tools/stm32w/stm32w_flasher/win/bz2.pyd b/tools/stm32w/stm32w_flasher/bz2.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/bz2.pyd rename to tools/stm32w/stm32w_flasher/bz2.pyd diff --git a/tools/stm32w/stm32w_flasher/win/d2xx._d2xx.pyd b/tools/stm32w/stm32w_flasher/d2xx._d2xx.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/d2xx._d2xx.pyd rename to tools/stm32w/stm32w_flasher/d2xx._d2xx.pyd diff --git a/tools/stm32w/stm32w_flasher/win/main_rfbl.s37 b/tools/stm32w/stm32w_flasher/main_rfbl.s37 similarity index 100% rename from tools/stm32w/stm32w_flasher/win/main_rfbl.s37 rename to tools/stm32w/stm32w_flasher/main_rfbl.s37 diff --git a/tools/stm32w/stm32w_flasher/win/pyexpat.pyd b/tools/stm32w/stm32w_flasher/pyexpat.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/pyexpat.pyd rename to tools/stm32w/stm32w_flasher/pyexpat.pyd diff --git a/tools/stm32w/stm32w_flasher/win/python26.dll b/tools/stm32w/stm32w_flasher/python26.dll similarity index 100% rename from tools/stm32w/stm32w_flasher/win/python26.dll rename to tools/stm32w/stm32w_flasher/python26.dll diff --git a/tools/stm32w/stm32w_flasher/win/pywintypes26.dll b/tools/stm32w/stm32w_flasher/pywintypes26.dll similarity index 100% rename from tools/stm32w/stm32w_flasher/win/pywintypes26.dll rename to tools/stm32w/stm32w_flasher/pywintypes26.dll diff --git a/tools/stm32w/stm32w_flasher/win/select.pyd b/tools/stm32w/stm32w_flasher/select.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/select.pyd rename to tools/stm32w/stm32w_flasher/select.pyd diff --git a/tools/stm32w/stm32w_flasher/linux/stm32w_flasher b/tools/stm32w/stm32w_flasher/stm32w_flasher similarity index 100% rename from tools/stm32w/stm32w_flasher/linux/stm32w_flasher rename to tools/stm32w/stm32w_flasher/stm32w_flasher diff --git a/tools/stm32w/stm32w_flasher/win/stm32w_flasher.exe b/tools/stm32w/stm32w_flasher/stm32w_flasher.exe similarity index 100% rename from tools/stm32w/stm32w_flasher/win/stm32w_flasher.exe rename to tools/stm32w/stm32w_flasher/stm32w_flasher.exe diff --git a/tools/stm32w/stm32w_flasher/win/unicodedata.pyd b/tools/stm32w/stm32w_flasher/unicodedata.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/unicodedata.pyd rename to tools/stm32w/stm32w_flasher/unicodedata.pyd diff --git a/tools/stm32w/stm32w_flasher/win/w9xpopen.exe b/tools/stm32w/stm32w_flasher/w9xpopen.exe similarity index 100% rename from tools/stm32w/stm32w_flasher/win/w9xpopen.exe rename to tools/stm32w/stm32w_flasher/w9xpopen.exe diff --git a/tools/stm32w/stm32w_flasher/win/CompositeForSTM32W.bin b/tools/stm32w/stm32w_flasher/win/CompositeForSTM32W.bin deleted file mode 100644 index 9548d9c26752575d14bb82a21389676b2c1ce9ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25168 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 G^#29dj0La& diff --git a/tools/stm32w/stm32w_flasher/win/win32api.pyd b/tools/stm32w/stm32w_flasher/win32api.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/win32api.pyd rename to tools/stm32w/stm32w_flasher/win32api.pyd diff --git a/tools/stm32w/stm32w_flasher/win/win32pipe.pyd b/tools/stm32w/stm32w_flasher/win32pipe.pyd similarity index 100% rename from tools/stm32w/stm32w_flasher/win/win32pipe.pyd rename to tools/stm32w/stm32w_flasher/win32pipe.pyd