Portierung der Module in drivers/ und mini/ nach Kernel 2.6.

This commit is contained in:
Florian Pose
2005-11-25 14:52:34 +00:00
parent c9bcae49fc
commit 6c19b64274
7 changed files with 3762 additions and 1115 deletions

View File

@@ -43,14 +43,14 @@ endif
.mini:
$(MAKE) -C mini
config $(CONFIG_FILE):
@echo "# EtherCAT Konfigurationsdatei" > $(CONFIG_FILE)
config conf $(CONFIG_FILE):
@echo "# EtherCAT Konfigurationsdatei Kernel 2.6" > $(CONFIG_FILE)
@echo >> $(CONFIG_FILE)
@echo "KERNELDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/linux-2.4.20.CX1100-rthal5" >> $(CONFIG_FILE)
@echo "RTAIDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/rtai-24.1.13" >> $(CONFIG_FILE)
@echo "RTLIBDIR = rt_lib" >> $(CONFIG_FILE)
@echo "KERNELDIR = /usr/src/linux" >> $(CONFIG_FILE)
@echo "RTAIDIR =" >> $(CONFIG_FILE)
@echo "RTLIBDIR =" >> $(CONFIG_FILE)
@echo >> $(CONFIG_FILE)
@echo "GCC_SYSTEMDIR = /usr/lib/gcc-lib/i486-suse-linux/3.3/include" >> $(CONFIG_FILE)
@echo "#GCC_SYSTEMDIR = /usr/lib/gcc-lib/i486-suse-linux/3.3/include" >> $(CONFIG_FILE)
@echo >> $(CONFIG_FILE)
@echo "MAKE_RT = yes" >> $(CONFIG_FILE)
@echo "MAKE_RS232 = yes" >> $(CONFIG_FILE)

File diff suppressed because it is too large Load Diff

View File

@@ -8,60 +8,34 @@
#
#----------------------------------------------------------------
CONFIG_FILE = ../ethercat.conf
ifneq ($(KERNELRELEASE),)
ifeq ($(CONFIG_FILE),$(wildcard $(CONFIG_FILE)))
include $(CONFIG_FILE)
else
KERNELDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/linux-2.4.20.CX1100-rthal5
RTAIDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/rtai-24.1.13
RTLIBDIR = rt_lib
GCC_SYSTEMDIR = /usr/lib/gcc-lib/i486-suse-linux/3.3/include
endif
#----------------------------------------------------------------
# Kbuild-Abschnitt
CFLAGS = -O2 -Wall -Wuninitialized -D__KERNEL__ \
-DMODULE -I$(KERNELDIR)/include -nostdinc \
-isystem $(GCC_SYSTEMDIR)
obj-m := 8139too-ecat.o
ifdef CONFIG_SMP
CFLAGS += -D__SMP__ -DSMP
endif
MODULE = ecat_8139too.o
OBJ = drv_8139too.o ec_device.o ec_master.o \
ec_slave.o ec_command.o ec_types.o
SRC = $(OBJ:.o=.c)
8139too-ecat-objs := 8139too.o ec_device.o ec_master.o \
ec_slave.o ec_command.o ec_types.o
#----------------------------------------------------------------
all: .output_dirs depend $(MODULE)
else
$(MODULE): $(OBJ)
$(LD) -r $(OBJ) -o $@
#----------------------------------------------------------------
# Default-Abschnitt
.c.o:
$(CC) $(CFLAGS) -c $< -o $@
CONFIG_FILE = ../ethercat.conf
PWD = $(shell pwd)
doc docs:
$(MAKE) -C .. doc
include $(CONFIG_FILE) # Für KERNELDIR
.output_dirs:
@echo "x-- Directories -------------"
@echo "| Kernel $(KERNELDIR)"
@echo "| RTAI $(RTAIDIR)"
@echo "| RT_lib $(RTLIBDIR)"
@echo "x----------------------------"
.depend depend dep:
$(CC) $(CFLAGS) -M $(SRC) > .depend
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
clean:
rm -f *.o *~ core .depend
$(MAKE) -C $(KERNELDIR) M=$(PWD) clean
#----------------------------------------------------------------
ifeq (.depend,$(wildcard .depend))
include .depend
endif
#----------------------------------------------------------------

View File

@@ -17,7 +17,8 @@
#include "ec_device.h"
#include "ec_dbg.h"
extern void rtl8139_interrupt(int, void *, struct pt_regs *);
extern irqreturn_t rtl8139_interrupt(int, void *, struct pt_regs *);
extern int rtl8139_poll(struct net_device *, int *);
/***************************************************************/
@@ -291,7 +292,18 @@ int EtherCAT_device_receive(EtherCAT_device_t *ecd,
void EtherCAT_device_call_isr(EtherCAT_device_t *ecd)
{
rtl8139_interrupt(0, ecd->dev, NULL);
int budget;
budget = 1; /* Einen Frame empfangen */
rtl8139_interrupt(0, ecd->dev, NULL);
rtl8139_poll(ecd->dev, &budget);
if (budget != 0)
{
EC_DBG(KERN_ERR "EtherCAT: Warning - Budget is %d!\n",
budget);
}
}
/***************************************************************/

2646
drivers/original_8139too.c Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -8,47 +8,33 @@
#
#----------------------------------------------------------------
CONFIG_FILE = ../ethercat.conf
ifneq ($(KERNELRELEASE),)
ifeq ($(CONFIG_FILE),$(wildcard $(CONFIG_FILE)))
include $(CONFIG_FILE)
else
KERNELDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/linux-2.4.20.CX1100-rthal5
RTAIDIR = /vol/projekte/msr_messen_steuern_regeln/linux/kernel/2.4.20/include/rtai-24.1.13
RTLIBDIR = rt_lib
endif
#----------------------------------------------------------------
# Kbuild-Abschnitt
CFLAGS = -O2 -Wall -Wuninitialized -D__KERNEL__ \
-DMODULE -I$(KERNELDIR)/include
obj-m := ec_mini_mod.o
MODULE = ec_mini_mod.o
SRC = ec_mini.c
OBJ = $(SRC:.c=.o)
ec_mini_mod-objs := ec_mini.o
#----------------------------------------------------------------
all: .output_dirs .depend Makefile $(MODULE)
else
$(MODULE): $(OBJ)
$(LD) -r $(OBJ) -o $@
#----------------------------------------------------------------
# Default-Abschnitt
.output_dirs:
@echo "x-- Directories -------------"
@echo "| Kernel $(KERNELDIR)"
@echo "| RTAI $(RTAIDIR)"
@echo "| RT_lib $(RTLIBDIR)"
@echo "x----------------------------"
CONFIG_FILE = ../ethercat.conf
PWD = $(shell pwd)
depend .depend dep:
$(CC) $(CFLAGS) -M $(SRC) > .depend
include $(CONFIG_FILE) # Für KERNELDIR
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
clean:
rm -f *.o *~ core .depend
$(MAKE) -C $(KERNELDIR) M=$(PWD) clean
#----------------------------------------------------------------
ifeq (.depend,$(wildcard .depend))
include .depend
endif
#----------------------------------------------------------------

File diff suppressed because it is too large Load Diff