Merge git://git.denx.de/u-boot-dm
diff --git a/arch/nds32/include/asm/bitops.h b/arch/nds32/include/asm/bitops.h
index 7ee37c3..f1cdcf3 100644
--- a/arch/nds32/include/asm/bitops.h
+++ b/arch/nds32/include/asm/bitops.h
@@ -44,6 +44,8 @@
*a |= mask;
}
+#define PLATFORM__SET_BIT
+
extern void clear_bit(int nr, void *addr);
static inline void __clear_bit(int nr, void *addr)
@@ -59,6 +61,8 @@
local_irq_restore(flags);
}
+#define PLATFORM__CLEAR_BIT
+
extern void change_bit(int nr, void *addr);
static inline void __change_bit(int nr, void *addr)
diff --git a/arch/nios2/include/asm/bitops/non-atomic.h b/arch/nios2/include/asm/bitops/non-atomic.h
index 697cc2b..f746819 100644
--- a/arch/nios2/include/asm/bitops/non-atomic.h
+++ b/arch/nios2/include/asm/bitops/non-atomic.h
@@ -20,6 +20,8 @@
*p |= mask;
}
+#define PLATFORM__SET_BIT
+
static inline void __clear_bit(int nr, volatile unsigned long *addr)
{
unsigned long mask = BIT_MASK(nr);
@@ -28,6 +30,8 @@
*p &= ~mask;
}
+#define PLATFORM__CLEAR_BIT
+
/**
* __change_bit - Toggle a bit in memory
* @nr: the bit to change
diff --git a/arch/riscv/include/asm/bitops.h b/arch/riscv/include/asm/bitops.h
index 55d420f..536629b 100644
--- a/arch/riscv/include/asm/bitops.h
+++ b/arch/riscv/include/asm/bitops.h
@@ -42,6 +42,8 @@
*a |= mask;
}
+#define PLATFORM__SET_BIT
+
static inline void __clear_bit(int nr, void *addr)
{
int *a = (int *)addr;
@@ -52,6 +54,8 @@
*a &= ~mask;
}
+#define PLATFORM__CLEAR_BIT
+
static inline void __change_bit(int nr, void *addr)
{
int mask;
diff --git a/arch/x86/include/asm/bitops.h b/arch/x86/include/asm/bitops.h
index f97dc66..196fcf9 100644
--- a/arch/x86/include/asm/bitops.h
+++ b/arch/x86/include/asm/bitops.h
@@ -61,6 +61,8 @@
:"Ir" (nr));
}
+#define PLATFORM__SET_BIT
+
/**
* clear_bit - Clears a bit in memory
* @nr: Bit to clear
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index 1ad1fb7..5abf81d 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -26,6 +26,8 @@
CONFIG_MVSATA_IDE=y
# CONFIG_MMC is not set
CONFIG_MTD_NOR_FLASH=y
+CONFIG_NETDEVICES=y
+CONFIG_MVGBE=y
CONFIG_SYS_NS16550=y
CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index e307c73..5106cc5 100644
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -378,7 +378,7 @@
ep = (struct usb_endpoint_descriptor *)*descriptors;
addr = ((ep->bEndpointAddress & 0x80) >> 3)
| (ep->bEndpointAddress & 0x0f);
- __set_bit(addr, f->endpoints);
+ generic_set_bit(addr, f->endpoints);
}
result = f->set_alt(f, tmp, 0);
diff --git a/drivers/usb/gadget/f_mass_storage.c b/drivers/usb/gadget/f_mass_storage.c
index 90c9561..c7348fc 100644
--- a/drivers/usb/gadget/f_mass_storage.c
+++ b/drivers/usb/gadget/f_mass_storage.c
@@ -251,6 +251,7 @@
#include <usb_mass_storage.h>
#include <asm/unaligned.h>
+#include <linux/bitops.h>
#include <linux/usb/gadget.h>
#include <linux/usb/gadget.h>
#include <linux/usb/composite.h>
@@ -282,26 +283,6 @@
struct kref {int x; };
struct completion {int x; };
-inline void set_bit(int nr, volatile void *addr)
-{
- int mask;
- unsigned int *a = (unsigned int *) addr;
-
- a += nr >> 5;
- mask = 1 << (nr & 0x1f);
- *a |= mask;
-}
-
-inline void clear_bit(int nr, volatile void *addr)
-{
- int mask;
- unsigned int *a = (unsigned int *) addr;
-
- a += nr >> 5;
- mask = 1 << (nr & 0x1f);
- *a &= ~mask;
-}
-
struct fsg_dev;
struct fsg_common;
@@ -2085,7 +2066,7 @@
* we can simply accept and discard any data received
* until the next reset. */
wedge_bulk_in_endpoint(fsg);
- set_bit(IGNORE_BULK_OUT, &fsg->atomic_bitflags);
+ generic_set_bit(IGNORE_BULK_OUT, &fsg->atomic_bitflags);
return -EINVAL;
}
@@ -2249,7 +2230,7 @@
fsg->bulk_out_enabled = 1;
common->bulk_out_maxpacket =
le16_to_cpu(get_unaligned(&d->wMaxPacketSize));
- clear_bit(IGNORE_BULK_OUT, &fsg->atomic_bitflags);
+ generic_clear_bit(IGNORE_BULK_OUT, &fsg->atomic_bitflags);
/* Allocate the requests */
for (i = 0; i < FSG_NUM_BUFFERS; ++i) {