Permalink
Camera License Plate Recognition
Join GitHub today
- They are decentralized and all they need is a NFS/SMB/FTP server to record to - if you want more retention time than SD cards can hold - all without licenses - software to access the cameras is free. I am not a fan of these central NVR's with per camera license, limitations on how many cameras you can have.
- Synology Surveillance Device License Packs are designed for expanding camera, I/O module, access controllers, and transaction devices set up on Synology Surveillance Station. By default, two device licenses 2 are installed on a DiskStation or RackStation 1.
- Synology 4-Camera License Key for Synology Surveillance Station Bewertung: 2,5 - 6 Rezensionen - 199,99 $ - Auf LagerThe 4-Camera License Key from Synology allows you to add 4 cameras to your Synology Surveillance Station.
- Following the guide in the synology forums for making logitech alert cameras work with surveillance station natively, i have been able to copy one of the other hikvision profiles to work with my hikvision cameras natively, i've had success with both cameras from the lorex bundle on sale now, and the swann full size bullet.
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upSynology 5.2 kernel. Contribute to evolver56k/xpenology development by creating an account on GitHub.
Find file Copy path
Cannot retrieve contributors at this time
/* |
* Eee PC WMI hotkey driver |
* |
* Copyright(C) 2010 Intel Corporation. |
* Copyright(C) 2010-2011 Corentin Chary <[email protected]> |
* |
* Portions based on wistron_btns.c: |
* Copyright (C) 2005 Miloslav Trmac <[email protected]> |
* Copyright (C) 2005 Bernhard Rosenkraenzer <[email protected]> |
* Copyright (C) 2005 Dmitry Torokhov <[email protected]> |
* |
* This program is free software; you can redistribute it and/or modify |
* it under the terms of the GNU General Public License as published by |
* the Free Software Foundation; either version 2 of the License, or |
* (at your option) any later version. |
* |
* This program is distributed in the hope that it will be useful, |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with this program; if not, write to the Free Software |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
*/ |
#definepr_fmt(fmt) KBUILD_MODNAME ': ' fmt |
#include<linux/kernel.h> |
#include<linux/module.h> |
#include<linux/init.h> |
#include<linux/input.h> |
#include<linux/input/sparse-keymap.h> |
#include<linux/dmi.h> |
#include<linux/fb.h> |
#include<acpi/acpi_bus.h> |
#include'asus-wmi.h' |
#defineEEEPC_WMI_FILE'eeepc-wmi' |
MODULE_AUTHOR('Corentin Chary <[email protected]>'); |
MODULE_DESCRIPTION('Eee PC WMI Hotkey Driver'); |
MODULE_LICENSE('GPL'); |
#defineEEEPC_ACPI_HID'ASUS010'/* old _HID used in eeepc-laptop */ |
#defineEEEPC_WMI_EVENT_GUID'ABBC0F72-8EA1-11D1-00A0-C90629100000' |
MODULE_ALIAS('wmi:'EEEPC_WMI_EVENT_GUID); |
staticbool hotplug_wireless; |
module_param(hotplug_wireless, bool, 0444); |
MODULE_PARM_DESC(hotplug_wireless, |
'Enable hotplug for wireless device. ' |
'If your laptop needs that, please report to ' |
'[email protected].'); |
/* Values for T101MT 'Home' key */ |
#defineHOME_PRESS0xe4 |
#defineHOME_HOLD0xea |
#defineHOME_RELEASE0xe5 |
staticconststruct key_entry eeepc_wmi_keymap[] = { |
{ KE_KEY, ASUS_WMI_BRN_DOWN, { KEY_BRIGHTNESSDOWN } }, |
{ KE_KEY, ASUS_WMI_BRN_UP, { KEY_BRIGHTNESSUP } }, |
/* Sleep already handled via generic ACPI code */ |
{ KE_KEY, 0x30, { KEY_VOLUMEUP } }, |
{ KE_KEY, 0x31, { KEY_VOLUMEDOWN } }, |
{ KE_KEY, 0x32, { KEY_MUTE } }, |
{ KE_KEY, 0x5c, { KEY_F15 } }, /* Power Gear key */ |
{ KE_KEY, 0x5d, { KEY_WLAN } }, |
{ KE_KEY, 0x6b, { KEY_TOUCHPAD_TOGGLE } }, /* Toggle Touchpad */ |
{ KE_KEY, 0x82, { KEY_CAMERA } }, |
{ KE_KEY, 0x83, { KEY_CAMERA_ZOOMIN } }, |
{ KE_KEY, 0x88, { KEY_WLAN } }, |
{ KE_KEY, 0xbd, { KEY_CAMERA } }, |
{ KE_KEY, 0xcc, { KEY_SWITCHVIDEOMODE } }, |
{ KE_KEY, 0xe0, { KEY_PROG1 } }, /* Task Manager */ |
{ KE_KEY, 0xe1, { KEY_F14 } }, /* Change Resolution */ |
{ KE_KEY, HOME_PRESS, { KEY_CONFIG } }, /* Home/Express gate key */ |
{ KE_KEY, 0xe8, { KEY_SCREENLOCK } }, |
{ KE_KEY, 0xe9, { KEY_DISPLAYTOGGLE } }, |
{ KE_KEY, 0xeb, { KEY_CAMERA_ZOOMOUT } }, |
{ KE_KEY, 0xec, { KEY_CAMERA_UP } }, |
{ KE_KEY, 0xed, { KEY_CAMERA_DOWN } }, |
{ KE_KEY, 0xee, { KEY_CAMERA_LEFT } }, |
{ KE_KEY, 0xef, { KEY_CAMERA_RIGHT } }, |
{ KE_KEY, 0xf3, { KEY_MENU } }, |
{ KE_KEY, 0xf5, { KEY_HOMEPAGE } }, |
{ KE_KEY, 0xf6, { KEY_ESC } }, |
{ KE_END, 0}, |
}; |
staticstruct quirk_entry quirk_asus_unknown = { |
}; |
staticstruct quirk_entry quirk_asus_1000h = { |
.hotplug_wireless = true, |
}; |
staticstruct quirk_entry quirk_asus_et2012_type1 = { |
.store_backlight_power = true, |
}; |
staticstruct quirk_entry quirk_asus_et2012_type3 = { |
.scalar_panel_brightness = true, |
.store_backlight_power = true, |
}; |
staticstruct quirk_entry quirk_asus_x101ch = { |
/* We need this when ACPI function doesn't do this well */ |
.wmi_backlight_power = true, |
}; |
staticstruct quirk_entry *quirks; |
staticvoidet2012_quirks(void) |
{ |
conststruct dmi_device *dev = NULL; |
char oemstring[30]; |
while ((dev = dmi_find_device(DMI_DEV_TYPE_OEM_STRING, NULL, dev))) { |
if (sscanf(dev->name, 'AEMS%24c', oemstring) 1) { |
if (oemstring[18] '1') |
quirks = &quirk_asus_et2012_type1; |
elseif (oemstring[18] '3') |
quirks = &quirk_asus_et2012_type3; |
break; |
} |
} |
} |
staticintdmi_matched(conststruct dmi_system_id *dmi) |
{ |
char *model; |
quirks = dmi->driver_data; |
model = (char *)dmi->matches[1].substr; |
if (unlikely(strncmp(model, 'ET2012', 6) 0)) |
et2012_quirks(); |
return1; |
} |
staticstruct dmi_system_id asus_quirks[] = { |
{ |
.callback = dmi_matched, |
.ident = 'ASUSTeK Computer INC. 1000H', |
.matches = { |
DMI_MATCH(DMI_SYS_VENDOR, 'ASUSTeK Computer INC.'), |
DMI_MATCH(DMI_PRODUCT_NAME, '1000H'), |
}, |
.driver_data = &quirk_asus_1000h, |
}, |
{ |
.callback = dmi_matched, |
.ident = 'ASUSTeK Computer INC. ET2012E/I', |
.matches = { |
DMI_MATCH(DMI_SYS_VENDOR, 'ASUSTeK Computer INC.'), |
DMI_MATCH(DMI_PRODUCT_NAME, 'ET2012'), |
}, |
.driver_data = &quirk_asus_unknown, |
}, |
{ |
.callback = dmi_matched, |
.ident = 'ASUSTeK Computer INC. X101CH', |
.matches = { |
DMI_MATCH(DMI_SYS_VENDOR, 'ASUSTeK COMPUTER INC.'), |
DMI_MATCH(DMI_PRODUCT_NAME, 'X101CH'), |
}, |
.driver_data = &quirk_asus_x101ch, |
}, |
{ |
.callback = dmi_matched, |
.ident = 'ASUSTeK Computer INC. 1015CX', |
.matches = { |
DMI_MATCH(DMI_SYS_VENDOR, 'ASUSTeK COMPUTER INC.'), |
DMI_MATCH(DMI_PRODUCT_NAME, '1015CX'), |
}, |
.driver_data = &quirk_asus_x101ch, |
}, |
{}, |
}; |
staticvoideeepc_wmi_key_filter(struct asus_wmi_driver *asus_wmi, int *code, |
unsignedint *value, bool *autorelease) |
{ |
switch (*code) { |
case HOME_PRESS: |
*value = 1; |
*autorelease = 0; |
break; |
case HOME_HOLD: |
*code = ASUS_WMI_KEY_IGNORE; |
break; |
case HOME_RELEASE: |
*code = HOME_PRESS; |
*value = 0; |
*autorelease = 0; |
break; |
} |
} |
static acpi_status eeepc_wmi_parse_device(acpi_handle handle, u32 level, |
void *context, void **retval) |
{ |
pr_warn('Found legacy ATKD device (%s)n', EEEPC_ACPI_HID); |
*(bool *)context = true; |
return AE_CTRL_TERMINATE; |
} |
staticinteeepc_wmi_check_atkd(void) |
{ |
acpi_status status; |
bool found = false; |
status = acpi_get_devices(EEEPC_ACPI_HID, eeepc_wmi_parse_device, |
&found, NULL); |
if (ACPI_FAILURE(status) || !found) |
return0; |
return -1; |
} |
staticinteeepc_wmi_probe(struct platform_device *pdev) |
{ |
if (eeepc_wmi_check_atkd()) { |
pr_warn('WMI device present, but legacy ATKD device is also ' |
'present and enabledn'); |
pr_warn('You probably booted with acpi_osi='Linux' or ' |
'acpi_osi='!Windows 2009'n'); |
pr_warn('Can't load eeepc-wmi, use default acpi_osi ' |
'(preferred) or eeepc-laptopn'); |
return -EBUSY; |
} |
return0; |
} |
staticvoideeepc_wmi_quirks(struct asus_wmi_driver *driver) |
{ |
quirks = &quirk_asus_unknown; |
quirks->hotplug_wireless = hotplug_wireless; |
dmi_check_system(asus_quirks); |
driver->quirks = quirks; |
driver->quirks->wapf = -1; |
driver->panel_power = FB_BLANK_UNBLANK; |
} |
staticstruct asus_wmi_driver asus_wmi_driver = { |
.name = EEEPC_WMI_FILE, |
.owner = THIS_MODULE, |
.event_guid = EEEPC_WMI_EVENT_GUID, |
.keymap = eeepc_wmi_keymap, |
.input_name = 'Eee PC WMI hotkeys', |
.input_phys = EEEPC_WMI_FILE '/input0', |
.key_filter = eeepc_wmi_key_filter, |
.probe = eeepc_wmi_probe, |
.detect_quirks = eeepc_wmi_quirks, |
}; |
staticint __init eeepc_wmi_init(void) |
{ |
returnasus_wmi_register_driver(&asus_wmi_driver); |
} |
staticvoid __exit eeepc_wmi_exit(void) |
{ |
asus_wmi_unregister_driver(&asus_wmi_driver); |
} |
module_init(eeepc_wmi_init); |
module_exit(eeepc_wmi_exit); |
Copy lines Copy permalink
- Synology Powerful and Scalable 4-bay NAS for Growing Businesses (ds918-)$601.43Shipping: + $39.78 Shipping
- Windows Server 2012 R2 Standard Key & Download Activation Genuine$4.00Free shipping
- Windows 7 Enterprise 32bit/64bit for 1 PC Devices Key Download Genuine$3.40Free shipping
- $71.37Shipping: + $25.68 Shipping
- Synology DS918+ DiskStation 4GB RAM 8TB (4 x 2TB) Seagate Ironwolf NAS Drives$1,099.99Shipping: + $50.10 Shipping
- DELL POWEREDGE R520 SERVER 8 HDD 3.5' BAYS CHASSIS KCHY4 9JFWW$69.00Read on for a listing of streaming and cable services - including rental, purchase, and subscription choices - along with the availability of 'Ok Jaanu' on each platform. Ok jaanu 1080p full movie download filmywap. Now, before we get into the nitty-gritty of how you can watch 'Ok Jaanu' right now, here are some details about the Dharma Productions, Madras Talkies drama flick. Released January 13th, 2017, 'Ok Jaanu' stars,,, Leela Samson The movie has a runtime of about 2 hr 15 min, and received a score of (out of 100) on Metacritic, which assembled reviews from top critics. Here's the plot: 'Complications arise when a couple (Aditya Roy Kapur, Shraddha Kapoor) decide to move in together, then part ways when their respective career opportunities come calling.' You probably already know what the movie's about, but just in case.Shipping: + $249.00 Shipping
- Dell Poweredge R620 1U 10HDD Bays Chassis Assy 5H52N$90.00$180.00Shipping: + $179.35 Shipping
- DELL POWEREDGE R720 SERVER SFF 2.5' BAYS EMPTY METAL CHASSIS HHJ1G$49.00Shipping: + $249.00 Shipping
- Synology DS918+ DiskStation 8GB RAM 16TB (4 x 4TB) Seagate Ironwolf NAS Drives$1,339.99Shipping: + $53.78 Shipping
- Synology DS918+ DiskStation 8GB RAM 12TB (4 x 3TB) Seagate Ironwolf NAS Drives$1,299.99Shipping: + $53.16 Shipping
- NEW DELL POWEREDGE R620 SERVER 8 BAYS CHASSIS RISERS FANS NNM48 3WXFP MPNTX$249.00Shipping: + $199.00 Shipping