The driver started as an out-of-tree project based on ISDN4Linux, the ISDN subsystem of the Linux kernel series 2.2 and 2.4. It was adapted to kernel 2.6 after ISDN4Linux became available there, too. Development continued out-of-tree until release 0.5.1 in 2006.

In 2006, the driver was submitted for inclusion in the official Linux kernel, and accepted for kernel release 2.6.17. Because of design issues with the ser_gigaset module for the M101 serial DECT adapter, that module was not included in the submission. This and the following kernels therefore only supported the USB connected devices (base and M105). A last out-of-tree release 0.5.2 for older kernels was published in 2007, as well as a special release 1.0.0 for adding the missing ser_gigaset module to kernels 2.6.17+.

The M101 driver module ser_gigaset was subsequently redesigned and accepted for kernel release 2.6.21. Starting with that release, all Gigaset drivers are part of the standard kernel.

So far, the Gigaset driver had been exclusively ISDN4Linux based. In 2008, prompted by the obsolescence of ISDN4Linux, work was begun to create a CAPI 2.0 interface. This was accepted as an experimental feature for Linux kernel release 2.6.33. Two releases later, in 2.6.35, it has reached a state where it is fully usable for CAPI applications and, with the help of the glue driver capidrv, for ISDN4Linux applications as well, so it can completely replace the original ISDN4Linux version. The necessary fixes have also been backported to stable release

recent kernels

Starting with kernel release, it is recommended to use the driver with the Kernel CAPI 2.0 interface by building it with the kernel configuration option GIGASET_CAPI set to 'y'. These kernels are considered current, and not covered on this page. Refer to the recent kernel driver page for information on how to use the Gigaset driver with them.

kernel releases 2.6.21 to

These kernel releases already contain all Gigaset drivers as part of the standard kernel source tree. All major distributions ship a kernel with the Gigaset drivers compiled as modules, so you can use the device with ISDN4Linux or the front-end tools right away.

If you compile a kernel yourself, you can select the Gigaset drivers you want built, and whether you want them built as modules or linked directly into the kernel, in the drivers' kernel configuration section:

Device Drivers
    ---> ISDN Support
       ---> Old ISDN4Linux
           ---> Siemens Gigaset support

(Starting with kernel release 2.6.31, the section has moved up one level and is now located on the same level as "Old ISDN4Linux".) There you can also change the configuration options:

kernel releases 2.6.17 to 2.6.20

These releases contain only the support for the USB connected devices, ie. the direct connection to the Gigaset base (bas_gigaset) and the M105 (usb_gigaset). For these, the explanations in the preceding sections apply.

Release 1.0.0 of the Gigaset driver which provides the missing M101 driver ser_gigaset is still available for these kernels. We do however recommend that you use a newer kernel release instead which already includes that module.

kernel releases 2.6.16 and older

The last out-of-tree driver release 0.5.2 is still available for installation on older kernels. It works on Linux kernels 2.4 and 2.6.4 through 2.6.16 and at least compiles on later 2.2 kernels. We do however recommend that you use a newer kernel release instead which already includes the driver.

If you must use the devices with an older kernel, you can find matching sources, source rpm packages, and some binary packages at the project file list.

rpm packages

There are rpm packages for some older kernels in the project's download area. You can only use binary packages matching your kernel version and distribution. I.e. use gigaset-driver-0.5.2-1-suse90.i586.rpm and gigaset-modules-2.4.21-297-default-0.5.2-1-suse90.i586.rpm iff you use SuSE 9.0 and uname -r prints 2.4.21-297-default.

For installing an rpm package, you can type rpm -ihv NAME.i586.rpm, for upgrading to a newer version, use rpm -Uhv NAME.i586.rpm. Please have a look at your documentation directory (e.g. /usr/share/doc/packages/gigaset-driver) for information about configuration of the drivers.

Note that the packages are split into a driver package and a kernel module package, which allows installation of modules for different kernels (and avoids a dirty hack regarding the release number).

source rpm

If you want to create rpm packages from the source rpm, you should ensure to have a file .rpmmacros containing a suitable %_topdir definition in your home directory:

echo "%_topdir $HOME/rpm" >> .rpmmacros
mkdir rpm
cd rpm

For building the rpm packages ensure to have installed the usual development tools (as gcc and GNU make) and the kernel sources (and kernel symbols for SuSE 9.1 or later) and execute

rpmbuild --rebuild NAME.src.rpm

or if you need to configure the M105 (needed only for gigaset-driver)

rpmbuild --rebuild NAME.src.rpm --with undoc

Note that you must install the driver before you can build the front-end tools gigacontr and gigaconf (package gigaset-frontend).

You can install the rpm packages (~/rpm/RPMS/) as described above.

compiling from the sources

If you have to compile the sources, get one of the tar archives, unpack it with tar xzvf NAME.tar.gz or tar xjvf NAME.tar.bz2 and follow the instructions from the appropriate driver README file: for kernel 2.6.16 and earlier, use the one in the gigaset-driver-0.5.2 directory; for kernel 2.6.17 and later, the one in the gigaset-driver-1.0.0 directory.

Note that you must install the driver before you can build the front-end tools gigacontr and gigaconf (package gigaset-frontend).