mirror of
https://github.com/LuckfoxTECH/luckfox-pico.git
synced 2026-01-19 09:52:31 +01:00
project:build.sh: Added fastboot support; custom modifications to U-Boot and kernel implemented using patches.
project:cfg:BoardConfig_IPC: Added fastboot BoardConfig file and firmware post-scripts, distinguishing between the BoardConfigs for Luckfox Pico Pro and Luckfox Pico Max. project:app: Added fastboot_client and rk_smart_door for quick boot applications; updated rkipc app to adapt to the latest media library. media:samples: Added more usage examples. media:rockit: Fixed bugs; removed support for retrieving data frames from VPSS. media:isp: Updated rkaiq library and related tools to support connection to RKISP_Tuner. sysdrv:Makefile: Added support for compiling drv_ko on Luckfox Pico Ultra W using Ubuntu; added support for custom root filesystem. sysdrv:tools:board: Updated Buildroot optional mirror sources, updated some software versions, and stored device tree files and configuration files that undergo multiple modifications for U-Boot and kernel separately. sysdrv:source:mcu: Used RISC-V MCU SDK with RT-Thread system, mainly for initializing camera AE during quick boot. sysdrv:source:uboot: Added support for fastboot; added high baud rate DDR bin for serial firmware upgrades. sysdrv:source:kernel: Upgraded to version 5.10.160; increased NPU frequency for RV1106G3; added support for fastboot. Signed-off-by: luckfox-eng29 <eng29@luckfox.com>
This commit is contained in:
@@ -95,7 +95,7 @@ static int ipv4_local_port_range(struct ctl_table *table, int write,
|
||||
* port limit.
|
||||
*/
|
||||
if ((range[1] < range[0]) ||
|
||||
(range[0] < net->ipv4.sysctl_ip_prot_sock))
|
||||
(range[0] < READ_ONCE(net->ipv4.sysctl_ip_prot_sock)))
|
||||
ret = -EINVAL;
|
||||
else
|
||||
set_local_port_range(net, range);
|
||||
@@ -121,7 +121,7 @@ static int ipv4_privileged_ports(struct ctl_table *table, int write,
|
||||
.extra2 = &ip_privileged_port_max,
|
||||
};
|
||||
|
||||
pports = net->ipv4.sysctl_ip_prot_sock;
|
||||
pports = READ_ONCE(net->ipv4.sysctl_ip_prot_sock);
|
||||
|
||||
ret = proc_dointvec_minmax(&tmp, write, buffer, lenp, ppos);
|
||||
|
||||
@@ -133,7 +133,7 @@ static int ipv4_privileged_ports(struct ctl_table *table, int write,
|
||||
if (range[0] < pports)
|
||||
ret = -EINVAL;
|
||||
else
|
||||
net->ipv4.sysctl_ip_prot_sock = pports;
|
||||
WRITE_ONCE(net->ipv4.sysctl_ip_prot_sock, pports);
|
||||
}
|
||||
|
||||
return ret;
|
||||
@@ -361,61 +361,6 @@ bad_key:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void proc_configure_early_demux(int enabled, int protocol)
|
||||
{
|
||||
struct net_protocol *ipprot;
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
struct inet6_protocol *ip6prot;
|
||||
#endif
|
||||
|
||||
rcu_read_lock();
|
||||
|
||||
ipprot = rcu_dereference(inet_protos[protocol]);
|
||||
if (ipprot)
|
||||
ipprot->early_demux = enabled ? ipprot->early_demux_handler :
|
||||
NULL;
|
||||
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
ip6prot = rcu_dereference(inet6_protos[protocol]);
|
||||
if (ip6prot)
|
||||
ip6prot->early_demux = enabled ? ip6prot->early_demux_handler :
|
||||
NULL;
|
||||
#endif
|
||||
rcu_read_unlock();
|
||||
}
|
||||
|
||||
static int proc_tcp_early_demux(struct ctl_table *table, int write,
|
||||
void *buffer, size_t *lenp, loff_t *ppos)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
ret = proc_dointvec(table, write, buffer, lenp, ppos);
|
||||
|
||||
if (write && !ret) {
|
||||
int enabled = init_net.ipv4.sysctl_tcp_early_demux;
|
||||
|
||||
proc_configure_early_demux(enabled, IPPROTO_TCP);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int proc_udp_early_demux(struct ctl_table *table, int write,
|
||||
void *buffer, size_t *lenp, loff_t *ppos)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
ret = proc_dointvec(table, write, buffer, lenp, ppos);
|
||||
|
||||
if (write && !ret) {
|
||||
int enabled = init_net.ipv4.sysctl_udp_early_demux;
|
||||
|
||||
proc_configure_early_demux(enabled, IPPROTO_UDP);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int proc_tfo_blackhole_detect_timeout(struct ctl_table *table,
|
||||
int write, void *buffer,
|
||||
size_t *lenp, loff_t *ppos)
|
||||
@@ -685,14 +630,14 @@ static struct ctl_table ipv4_net_table[] = {
|
||||
.data = &init_net.ipv4.sysctl_udp_early_demux,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_udp_early_demux
|
||||
.proc_handler = proc_douintvec_minmax,
|
||||
},
|
||||
{
|
||||
.procname = "tcp_early_demux",
|
||||
.data = &init_net.ipv4.sysctl_tcp_early_demux,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_tcp_early_demux
|
||||
.proc_handler = proc_douintvec_minmax,
|
||||
},
|
||||
{
|
||||
.procname = "nexthop_compat_mode",
|
||||
|
||||
Reference in New Issue
Block a user