added my Recipes
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"files.associations": {
|
||||
"rpmsg.h": "c",
|
||||
"types.h": "c",
|
||||
"ioctl.h": "c"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
,markus,U2204VM,02.05.2024 10:15,file:///home/markus/.config/libreoffice/4;
|
||||
Binary file not shown.
@@ -0,0 +1 @@
|
||||
SUBSYSTEM=="misc", KERNEL=="vrpmdv-monitoring", GROUP="dialout", MODE="0666"
|
||||
@@ -0,0 +1,16 @@
|
||||
# Makefile for VRPMDV Monitoring Driver
|
||||
obj-m := vrpmdv-monitoring.o
|
||||
|
||||
|
||||
SRC := $(shell pwd)
|
||||
|
||||
all:
|
||||
$(MAKE) -C $(KERNEL_SRC) M=$(SRC)
|
||||
|
||||
modules_install:
|
||||
$(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install
|
||||
|
||||
clean:
|
||||
rm -f *.o *~ core .depend .*.cmd *.ko *.mod.c
|
||||
rm -f Module.markers Module.symvers modules.order
|
||||
rm -rf .tmp_versions Modules.symvers
|
||||
@@ -0,0 +1,97 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Remote processor messaging - sample client driver
|
||||
*
|
||||
* Copyright (C) 2011 Texas Instruments, Inc.
|
||||
* Copyright (C) 2011 Google, Inc.
|
||||
*
|
||||
* Ohad Ben-Cohen <ohad@wizery.com>
|
||||
* Brian Swetland <swetland@google.com>
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/rpmsg.h>
|
||||
|
||||
#define MSG "hello Monitoring!"
|
||||
|
||||
static int count = 100;
|
||||
module_param(count, int, 0644);
|
||||
|
||||
struct instance_data {
|
||||
int rx_count;
|
||||
};
|
||||
|
||||
static int vrpmdv_monitoring_cb(struct rpmsg_device *rpdev, void *data, int len,
|
||||
void *priv, u32 src)
|
||||
{
|
||||
int ret;
|
||||
struct instance_data *idata = dev_get_drvdata(&rpdev->dev);
|
||||
|
||||
dev_info(&rpdev->dev, "incoming msg %d (src: 0x%x)\n",
|
||||
++idata->rx_count, src);
|
||||
|
||||
print_hex_dump_debug(__func__, DUMP_PREFIX_NONE, 16, 1, data, len,
|
||||
true);
|
||||
|
||||
/* samples should not live forever */
|
||||
if (idata->rx_count >= count) {
|
||||
dev_info(&rpdev->dev, "goodbye!\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* send a new message now */
|
||||
ret = rpmsg_send(rpdev->ept, MSG, strlen(MSG));
|
||||
if (ret)
|
||||
dev_err(&rpdev->dev, "rpmsg_send failed: %d\n", ret);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int vrpmdv_monitoring_probe(struct rpmsg_device *rpdev)
|
||||
{
|
||||
int ret;
|
||||
struct instance_data *idata;
|
||||
|
||||
dev_info(&rpdev->dev, "new channel: 0x%x -> 0x%x!\n",
|
||||
rpdev->src, rpdev->dst);
|
||||
|
||||
idata = devm_kzalloc(&rpdev->dev, sizeof(*idata), GFP_KERNEL);
|
||||
if (!idata)
|
||||
return -ENOMEM;
|
||||
|
||||
dev_set_drvdata(&rpdev->dev, idata);
|
||||
|
||||
/* send a message to our remote processor */
|
||||
ret = rpmsg_send(rpdev->ept, MSG, strlen(MSG));
|
||||
if (ret) {
|
||||
dev_err(&rpdev->dev, "vrpmdv_monitoring_send failed: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void vrpmdv_monitoring_remove(struct rpmsg_device *rpdev)
|
||||
{
|
||||
dev_info(&rpdev->dev, "vrpmdv-monitoring client driver is removed\n");
|
||||
}
|
||||
|
||||
static struct rpmsg_device_id vrpmdv_monitoring_driver_id_table[] = {
|
||||
{ .name = "vrpmdv-monitoring" },
|
||||
{ },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(rpmsg, vrpmdv_monitoring_driver_id_table);
|
||||
|
||||
static struct rpmsg_driver vrpmdv_monitoring = {
|
||||
.drv.name = KBUILD_MODNAME,
|
||||
.id_table = vrpmdv_monitoring_driver_id_table,
|
||||
.probe = vrpmdv_monitoring_probe,
|
||||
.callback = vrpmdv_monitoring_cb,
|
||||
.remove = vrpmdv_monitoring_remove,
|
||||
};
|
||||
module_rpmsg_driver(vrpmdv_monitoring);
|
||||
|
||||
MODULE_DESCRIPTION("Remote processor messaging vrpmdv monitoring driver");
|
||||
MODULE_LICENSE("GPL v2");
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
SUMMARY = "VRPMDV Monitoring Driver"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
inherit module
|
||||
|
||||
SRC_URI = "file://Makefile \
|
||||
file://vrpmdv-monitoring.c \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
|
||||
# The inherit of module.bbclass will automatically name module packages with
|
||||
# "kernel-module-" prefix as required by the oe-core build environment.
|
||||
|
||||
RPROVIDES:${PN} += "kernel-module-vrpmdv-monitoring"
|
||||
@@ -0,0 +1,24 @@
|
||||
SUMMARY = "VRPMDV Monitoring Driver"
|
||||
LICENSE = "CLOSED"
|
||||
# LICENSE = "GPL-2.0-only"
|
||||
# LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
inherit module
|
||||
|
||||
SRC_URI = "file://Makefile \
|
||||
file://stm32_rpmsg_sdb.c \
|
||||
"
|
||||
# file://75-rpmsg-sdb.rules \
|
||||
S = "${WORKDIR}"
|
||||
|
||||
# The inherit of module.bbclass will automatically name module packages with
|
||||
# "kernel-module-" prefix as required by the oe-core build environment.
|
||||
|
||||
# do_install:append() {
|
||||
# udev rules for rpmsg-sdb
|
||||
# install -d ${D}${sysconfdir}/udev/rules.d/
|
||||
# install -m 0644 ${WORKDIR}/75-rpmsg-sdb.rules ${D}${sysconfdir}/udev/rules.d/75-rpmsg-sdb.rules
|
||||
# }
|
||||
#FILES:${PN} += "${sysconfdir}/udev/rules.d/"
|
||||
|
||||
RPROVIDES:${PN} += "kernel-module-vrpmdv-monitoring-driver"
|
||||
@@ -0,0 +1,26 @@
|
||||
SUMMARY = "VRPMDV Monitoring Driver"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
inherit module
|
||||
|
||||
SRC_URI = "file://Makefile \
|
||||
file://vrpmdv-monitoring.c \
|
||||
file://75-vrpmdv-monitoring.rules \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
|
||||
# The inherit of module.bbclass will automatically name module packages with
|
||||
# "kernel-module-" prefix as required by the oe-core build environment.
|
||||
|
||||
do_install:append() {
|
||||
# udev rules for vrpmdv-monitoring
|
||||
install -d ${D}${sysconfdir}/udev/rules.d/
|
||||
install -m 0644 ${WORKDIR}/75-vrpmdv-monitoring.rules ${D}${sysconfdir}/udev/rules.d/75-vrpmdv-monitoring.rules
|
||||
}
|
||||
|
||||
FILES:${PN} += "${sysconfdir}/udev/rules.d/"
|
||||
|
||||
|
||||
RPROVIDES:${PN} += "kernel-module-vrpmdv-monitoring"
|
||||
@@ -0,0 +1,26 @@
|
||||
SUMMARY = "VRPMDV Monitoring Driver"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
inherit module
|
||||
|
||||
SRC_URI = "file://Makefile \
|
||||
file://vrpmdv-monitoring.c \
|
||||
file://75-vrpmdv-monitoring.rules \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
|
||||
# The inherit of module.bbclass will automatically name module packages with
|
||||
# "kernel-module-" prefix as required by the oe-core build environment.
|
||||
|
||||
do_install:append() {
|
||||
# udev rules for vrpmdv-monitoring
|
||||
install -d ${D}${sysconfdir}/udev/rules.d/
|
||||
install -m 0644 ${WORKDIR}/75-vrpmdv-monitoring.rules ${D}${sysconfdir}/udev/rules.d/75-vrpmdv-monitoring.rules
|
||||
}
|
||||
|
||||
FILES:${PN} += "${sysconfdir}/udev/rules.d/"
|
||||
FILES:${PN} += "${base_libdir}/modules/"
|
||||
|
||||
RPROVIDES:${PN} += "vrpmdv-monitoring"
|
||||
@@ -0,0 +1,17 @@
|
||||
SUMMARY = "VRPMDV Monitoring Driver"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
inherit module
|
||||
|
||||
SRC_URI = "file://Makefile \
|
||||
file://vrpmdv-monitoring.c \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
|
||||
# The inherit of module.bbclass will automatically name module packages with
|
||||
# "kernel-module-" prefix as required by the oe-core build environment.
|
||||
|
||||
|
||||
RPROVIDES:${PN} += "kernel-module-vrpmdv-monitoring"
|
||||
Reference in New Issue
Block a user