Added RAW sockets.
Fork of WIZnetInterface by
Diff: arch/ext/W5500.cpp
- Revision:
- 3:f8c6efc8bf83
- Parent:
- 0:6f28332c466f
- Child:
- 4:4930f81bbe98
--- a/arch/ext/W5500.cpp Mon Jun 15 13:33:39 2015 +0900
+++ b/arch/ext/W5500.cpp Mon Jun 15 12:55:19 2015 +0000
@@ -15,13 +15,14 @@
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
+#include "eth_arch.h"
+#ifdef USE_W5500
#include "mbed.h"
#include "mbed_debug.h"
-#include "eth_arch.h"
#include "DNSClient.h"
-#ifdef USE_W5500
+
//Debug is disabled by default
#if 0
#define DBG(...) do{debug("%p %d %s ", this,__LINE__,__PRETTY_FUNCTION__); debug(__VA_ARGS__); } while(0);
@@ -143,15 +144,19 @@
// Reset the chip & set the buffer
void WIZnet_Chip::reset()
{
- // sw reset
+#if defined(USE_WIZ550IO_MAC)
+ // hw reset
reset_pin = 1;
reset_pin = 0;
wait_us(500); // 500us (w5500)
reset_pin = 1;
wait_ms(400); // 400ms (w5500)
-#if defined(USE_WIZ550IO_MAC)
- reg_rd_mac(SHAR, mac); // read the MAC address inside the module
+ reg_rd_mac(SHAR, mac); // read the MAC address inside the modulea
+#else
+ // hw reset
+ reg_wr(MR, 0x80);
+ wait_us(500); // 500us (w5500)
#endif
// write MAC address inside the WZTOE MAC address register
@@ -423,3 +428,4 @@
}
#endif
+
