Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Отладочные платы » SK-iMX233
Тулчейн - сборка модуля
MaxiHunter
Добавлено 22.02.2013 09:06
0
Сообщение: 1
MaxiHunter
0

Пункты: 2257
Регистрация: 13.03.2011
Понадобилось написать собственный драйвер. И тут возникла небольшая проблема:
Собираю модуль, тулчейном который был в комплекте. Все хорошо, но когда дело доходит до линковки, линкер говорит о том что "unrecognized option --build-id"... Я такого параметра не задавал и получается что это уже его самодеятельность. Чрезвычайно странно ругаться на самого себя.
Порыл в инете. Там советуют скачать новый тулчейн. Скачал, правда не с фрискейла, а с mentor graphics...
Вроде бы все хорошо, только в новом пакете нет sysroot. Если брать эту папку от старого тулчейна, то все волшебно собирается, но insmod выдает "invalid module format".
Подскажите, в чем может быть причина?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 22.02.2013 10:31 Сообщение: 2
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
брать эту папку от старого тулчейна, то все волшебно собирается, но insmod выдает "invalid module format".
Подскажите, в чем может быть причина?

возможно модуль собрался для архитектуры x86
что пишет
Код
modinfo ваш-модуль


чтобы кто-нить мог подсказать, полезно выложить файл для сборки модуля, обычно там или лишний ключ или его нет..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
MaxiHunter
Добавлено 22.02.2013 11:09 Редактировалось 26.02.2013 09:20 Сообщение: 3
MaxiHunter
0

Пункты: 2257
Регистрация: 13.03.2011
Модуль собран под арм - это однозначно. я это уже проверял)
modinfo:
Код
filename: frontpanel.ko
description: JukeBoxAMS: Front panel driver.
author: M
license: GPL
depends:
vermagic: 2.6.31-203-gee1fdae preempt mod_unload modversions ARMv5
parm: is_lcd:Shows is an LCD exist on the device (short)
parm: is_keys:Shows is a keyboard exist on the device (short)
parm: is_irr:Shows is an IRR exist on the device (short)
parm: is_fan:Shows is an fan exist on the device (short)
parm: is_power:Shows is an power control exist on the device (short)
parm: lcd_type:Shows the type of LCD on the device (charp)
parm: device_model:Shows the device model (charp)


Собственно сам Makefile:

Код
#
# Makefile for Smart control module AMS System
#
# "make all" or "make" for module + test application
# "make module" for make modu;e only (System use in future)
#
#
#################################################################
# Varaibles

CC=arm-none-linux-gnueabi-gcc
LD=arm-none-linux-gnueabi-ld
CFLAGS=
LDFLAGS=--sysroot=/home/maxi/target/arm-none-linux-gnueabi/arm-none-linux-gnueabi/sysroot/
CROSS_COMPILE=arm-none-linux-gnueabi-

KDIR = ../linux-2.6.31
PWD = $(shell pwd)
DEST = /lib/modules/$(CURRENT)/misc
TARGET = frontpanel
FILES = frontpanel_spi.c

obj-m := $(TARGET).o
$(TARGET)-objs := $(FILES:.c=.o)

MAINFILE=testapp.c
MODULENAME=JB_AMS_FP_Driver

#################################################################
# Operations

default: clean
@echo ***Building device driver: $(MODULENAME)
$(MAKE) -C $(KDIR) M=$(PWD) ARCH=arm LDFLAGS=$(LDFLAGS) modules


#################################################################
# Clear all object files
clean:
@rm -f *.o .*.cmd .*.flags *.mod.c *.order
@rm -f .*.*.cmd *.symvers *~ *.*~ TODO.*
@rm -fR .tmp*
@rm -rf .tmp_versions
@rm -f *.id* *.nam
@rm -f *.ko

Спуститься к концу Подняться к началу
Персональная информация
MaxiHunter
Добавлено 26.02.2013 09:22 Сообщение: 4
MaxiHunter
0

Пункты: 2257
Регистрация: 13.03.2011
Прошу прощения.
Чрезвычайно тупой косяк: путь прописан к исходникам не того ядра, что выполняется на железке. Когда подставил нужные все сразу заработало и задышало)
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 26.02.2013 10:24 Сообщение: 5
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Прошу прощения.
Чрезвычайно тупой косяк: путь прописан к исходникам не того ядра, что выполняется на железке. Когда подставил нужные все сразу заработало и задышало)

Фигня, не за что извинятся, ибо косячат все..
я тоже часа 3 ходил по кругу, пересобирая ядро, ожидая когда появится консоль, оказалось.. забыл галку поставить в конфиге.. раз 20 пересобрал :)
главное, вы нашли и пофиксили ошибку, озвучили решение, ну и результат положительный..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-iMX233