momentics n00b

Joined: 16 Dec 2006 Posts: 4
|
Posted: Wed Dec 27, 2006 9:50 pm Post subject: hcfpcimodem 1.10-r2 & gentoo-sources 2.6.18-r4 |
|
|
Буду рад если кто повторит и потестит.
-----------------------------------------------
Использовались
hcfpcimodem 1.10-r2
gentoo-sources 2.6.18-r4
gcc 4.1.1-r1
genkernel 3.4.4
удаляем старье
#emerge --unmerge hcfpcimodem
убедимся, что /usr/src/linux указывает на наш новый кернел - скажем,
это 2.6.18-gentoo-r4. билдим наш новый кернел.
предлагаю использовать genkernel, у которого в конфиге
/etc/genkernel.conf стоит MENUCONFIG="yes" и BOOTLOADER="grub" если вы
используете grub.
Это позволит нам сонфигурировать и установить наш кернел не вдаваясь в
подробности (хотя если это информация для вас важна, то и не стоит
конфигурировать).
#genkernel all
бутимся в новом кернеле.
затем
#touch /usr/src/linux/fs/partitions/devfs.h
#nano -w /usr/src/linux/fs/partitions/devfs.h
------- если нет, то вставляем ----------
#define devfs_add_disk(disk) do { } while (0)
#define devfs_add_partitioned(disk) do { } while (0)
#define devfs_remove_disk(disk) do { } while (0)
------------------------------------------------------
затем
#touch /usr/src/linux/include/linux/devfs_fs_kernel.h
#nano -w /usr/src/linux/include/linux/devfs_fs_kernel.h
------- если нет, то вставляем ----------
#ifndef _CONEXANT_KERNEL_IS_A_SHIT_H
#define _CONEXANT_KERNEL_IS_A_SHIT_H
#include <linux/fs.h>
#include <linux/config.h>
#include <linux/spinlock.h>
#include <linux/types.h>
#include <asm/semaphore.h>
#define DEVFS_SUPER_MAGIC 0x1373
static inline int devfs_mk_bdev(dev_t dev, umode_t mode, const char *fmt, ...) { return 0; }
static inline int devfs_mk_cdev(dev_t dev, umode_t mode, const char *fmt, ...) { return 0; }
static inline int devfs_mk_symlink(const char *name, const char *link) { return 0; }
static inline int devfs_mk_dir(const char *fmt, ...) { return 0; }
static inline void devfs_remove(const char *fmt, ...) { }
static inline int devfs_register_tape(const char *name) { return -1; }
static inline void devfs_unregister_tape(int num) { }
static inline void mount_devfs_fs(void) { return; }
#endif /* _CONEXANT_KERNEL_IS_A_SHIT_H */
------------------------------------------------------
затем
#nano -w /usr/src/linux/include/linux/version.h
------- если нет, то добавляем ------------------
#define UTS_RELEASE "2.6.18-gentoo-r4"
------------------------------------------------------
(обратите внимание, строка содержит точное имя нашего кернела)
затем
#emerge -D hcfpcimodem
(но не делаем hcfpciconfig)
затем
#nano -w /usr/lib/hcfpcimodem/modules/GPL/serial_cnxt.c
на строке ~936 делаем следующее (коментим devfs_name):
------------------------------------------------------
....
.driver_name ....
/* .devfs_name = "ttyS"CNXTSERDEV, */
.dev_name ....
.....
------------------------------------------------------
затем
#hcfpciconfig
настраиваем знакомыми способами и пользуем это убогое детище
в самом конце (если не сделано)
#/etc/init.d/hcfpci start
#rc-update add hcfpci default
с уважением, я |
|