Merge remote-tracking branch 'goog/jb-dev-mako' into jb-mr1-dev
This commit is contained in:
commit
3cac204d35
6 changed files with 37 additions and 22 deletions
|
|
@ -34,6 +34,9 @@ extern int ifc_down(const char *name);
|
|||
extern int ifc_enable(const char *ifname);
|
||||
extern int ifc_disable(const char *ifname);
|
||||
|
||||
#define RESET_IPV4_ADDRESSES 0x01
|
||||
#define RESET_IPV6_ADDRESSES 0x02
|
||||
#define RESET_ALL_ADDRESSES (RESET_IPV4_ADDRESSES | RESET_IPV6_ADDRESSES)
|
||||
extern int ifc_reset_connections(const char *ifname, const int reset_mask);
|
||||
|
||||
extern int ifc_get_addr(const char *name, in_addr_t *addr);
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@
|
|||
#define SYSFS_PREFIX "/sys"
|
||||
#define FIRMWARE_DIR1 "/etc/firmware"
|
||||
#define FIRMWARE_DIR2 "/vendor/firmware"
|
||||
#define FIRMWARE_DIR3 "/firmware/image"
|
||||
|
||||
#ifdef HAVE_SELINUX
|
||||
static struct selabel_handle *sehandle;
|
||||
|
|
@ -725,7 +726,7 @@ static int is_booting(void)
|
|||
|
||||
static void process_firmware_event(struct uevent *uevent)
|
||||
{
|
||||
char *root, *loading, *data, *file1 = NULL, *file2 = NULL;
|
||||
char *root, *loading, *data, *file1 = NULL, *file2 = NULL, *file3 = NULL;
|
||||
int l, loading_fd, data_fd, fw_fd;
|
||||
int booting = is_booting();
|
||||
|
||||
|
|
@ -752,6 +753,10 @@ static void process_firmware_event(struct uevent *uevent)
|
|||
if (l == -1)
|
||||
goto data_free_out;
|
||||
|
||||
l = asprintf(&file3, FIRMWARE_DIR3"/%s", uevent->firmware);
|
||||
if (l == -1)
|
||||
goto data_free_out;
|
||||
|
||||
loading_fd = open(loading, O_WRONLY);
|
||||
if(loading_fd < 0)
|
||||
goto file_free_out;
|
||||
|
|
@ -765,17 +770,20 @@ try_loading_again:
|
|||
if(fw_fd < 0) {
|
||||
fw_fd = open(file2, O_RDONLY);
|
||||
if (fw_fd < 0) {
|
||||
if (booting) {
|
||||
/* If we're not fully booted, we may be missing
|
||||
* filesystems needed for firmware, wait and retry.
|
||||
*/
|
||||
usleep(100000);
|
||||
booting = is_booting();
|
||||
goto try_loading_again;
|
||||
fw_fd = open(file3, O_RDONLY);
|
||||
if (fw_fd < 0) {
|
||||
if (booting) {
|
||||
/* If we're not fully booted, we may be missing
|
||||
* filesystems needed for firmware, wait and retry.
|
||||
*/
|
||||
usleep(100000);
|
||||
booting = is_booting();
|
||||
goto try_loading_again;
|
||||
}
|
||||
INFO("firmware: could not open '%s' %d\n", uevent->firmware, errno);
|
||||
write(loading_fd, "-1", 2);
|
||||
goto data_close_out;
|
||||
}
|
||||
INFO("firmware: could not open '%s' %d\n", uevent->firmware, errno);
|
||||
write(loading_fd, "-1", 2);
|
||||
goto data_close_out;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -76,6 +76,7 @@ struct {
|
|||
{ "sys.", AID_SYSTEM, 0 },
|
||||
{ "service.", AID_SYSTEM, 0 },
|
||||
{ "wlan.", AID_SYSTEM, 0 },
|
||||
{ "bluetooth.", AID_SYSTEM, 0 },
|
||||
{ "dhcp.", AID_SYSTEM, 0 },
|
||||
{ "dhcp.", AID_DHCP, 0 },
|
||||
{ "debug.", AID_SYSTEM, 0 },
|
||||
|
|
|
|||
|
|
@ -600,10 +600,6 @@ int ifc_disable(const char *ifname)
|
|||
return result;
|
||||
}
|
||||
|
||||
#define RESET_IPV4_ADDRESSES 0x01
|
||||
#define RESET_IPV6_ADDRESSES 0x02
|
||||
#define RESET_ALL_ADDRESSES (RESET_IPV4_ADDRESSES | RESET_IPV6_ADDRESSES)
|
||||
|
||||
int ifc_reset_connections(const char *ifname, const int reset_mask)
|
||||
{
|
||||
#ifdef HAVE_ANDROID_OS
|
||||
|
|
|
|||
|
|
@ -1,5 +1,11 @@
|
|||
#######################################
|
||||
# * Netlink cache not implemented
|
||||
# * Library is not thread safe
|
||||
#######################################
|
||||
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
|
|
@ -22,9 +28,10 @@ LOCAL_MODULE := libnl_2
|
|||
LOCAL_MODULE_TAGS := optional
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
#######################################
|
||||
# Shared library currently unavailiable
|
||||
# * Netlink cache not implemented
|
||||
# * Library is not thread safe
|
||||
#######################################
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_SRC_FILES :=
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES:= libnl_2
|
||||
LOCAL_SHARED_LIBRARIES:= liblog
|
||||
LOCAL_MODULE := libnl_2
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ int main(int argc, char **argv)
|
|||
} else if(!strcmp(arg, "--base")) {
|
||||
unsigned base = strtoul(val, 0, 16);
|
||||
hdr.kernel_addr = base + 0x00008000;
|
||||
hdr.ramdisk_addr = base + 0x01000000;
|
||||
hdr.ramdisk_addr = base + 0x01300000;
|
||||
hdr.second_addr = base + 0x00F00000;
|
||||
hdr.tags_addr = base + 0x00000100;
|
||||
} else if(!strcmp(arg, "--board")) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue