Автор Тема: подкарване на  o2 micro, inc. oz711m1/mc1 4-in-1  (Прочетена 2162 пъти)

senser

  • Напреднали
  • *****
  • Публикации: 1328
    • Профил
Здравейте,

Имам ноутбук FSC Amilo A7645, който притежава въпросния кард-ридър. Ето изхода от lspci:
Примерен код

00:09.0 CardBus bridge: O2 Micro, Inc. OZ711M1/MC1 4-in-1 MemoryCardBus Controller (rev 20)
        Subsystem: Fujitsu Siemens Computer GmbH Unknown device 106c
        Flags: bus master, slow devsel, latency 64, IRQ 17
        Memory at 48000000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
        Memory window 0: 40000000-41fff000 (prefetchable)
        Memory window 1: 42000000-43fff000
        I/O window 0: 00001000-000010ff
        I/O window 1: 00001400-000014ff
        16-bit legacy interface ports at 0001


от доста време се мъча да го подкарам въпросния четец, но така и не намерих нито драйвери нито някой да си е играл да го пусне

вчера обаче попаднах на следното
накрая на станицата има линк към driver, който се билдва като модул за кернела

изтеглих сорса и според указанията правя следното:
Примерен код

make -f Makefile.inside clean
rm -f *_shipped WdmLib.o wmbx.o Conan/*.o Conan/SRam/*.o Conan/mmc/*.o Conan/mmc/intrface/*.o Conan/mmc/intrface/mmc/*.o Conan/mmc/intrface/common/*.o Conan/mmc/platform/*.o Conan/SonyMS/msal/*.o Conan/idver/*.o Conan/_generic/*.o Conan/ata/*.o Conan/sm/*.o Conan/SonyMS/*.o Conan/MS2/*.o

# make clean
make -C /lib/modules/`uname -r`/build SUBDIRS=`pwd` KBUILD_VERBOSE=1 clean
make[1]: Entering directory `/usr/src/linux-2.6.19-suspend2-r1'
make -f scripts/Makefile.clean obj=/home/senser/Desktop/mbx-nonATA.zip_FILES/OpenSource/mbx-v2.6.x
  rm -rf /home/senser/Desktop/mbx-nonATA.zip_FILES/OpenSource/mbx-v2.6.x/.tmp_versions
make[1]: Leaving directory `/usr/src/linux-2.6.19-suspend2-r1'


дотук нищо тревожно според мен, но след това се полчава ето това:
Примерен код

# make -f Makefile.inside
gcc -c -O2 -Wall -D_X86_ -DTASKLET_MBXdeclspec" redefined
include/ConstDef.h:843:1: warning: this is the location of the previous definition
In file included from include/wdm.h:54,
                 from WdmLib.c:18:
include/ntdef.h:265:1: warning: "FASTCALL" redefined
In file included from include/wdm.h:47,
                 from WdmLib.c:18:
include/ConstDef.h:98:1: warning: this is the location of the previous definition
In file included from include/wdm.h:54,
                 from WdmLib.c:18:
include/ntdef.h:290:1: warning: "NTSYSAPI" redefined
In file included from include/wdm.h:47,
                 from WdmLib.c:18:
include/ConstDef.h:810:1: warning: this is the location of the previous definition
In file included from WdmLib.c:18:
include/wdm.h:536:1: warning: "NTKERNELAPI" redefined
In file included from include/wdm.h:47,
                 from WdmLib.c:18:
include/ConstDef.h:96:1: warning: this is the location of the previous definition
In file included from WdmLib.c:18:
include/wdm.h:6209:1: warning: "_DECL_HAL_KE_IMPORT" redefined
In file included from include/wdm.h:47,
                 from WdmLib.c:18:
include/ConstDef.h:146:1: warning: this is the location of the previous definition
WdmLib.c: In function ‘KeDelayExecutionThread’:
WdmLib.c:106: warning: cast from pointer to integer of different size
make: *** No rule to make target `Conan/SRam/SRam.c', needed by `Conan/SRam/SRam.o'.  Stop.


ето го и съдържанието на файла Makefile.inside:
Примерен код

KERNEL_SOURCE=/lib/modules/'uname-r'/build
#INCLUDE = -I/usr/src/linux-2.6.14/include      
#       -I/usr/src/linux-2.6.14/drivers/scsi  
INCLUDE = -I$(KERNEL_SOURCE)/include    \
        -I$(KERNEL_SOURCE)/drivers/scsi    \
        -I`pwd` \
        -Iinclude       \
        -IConan   \
        -IConan/idver  \
        -IConan/_generic  \
        -IConan/sm  \
        -IConan/SonyMS  \
        -IConan/ata  \
        -IConan/SRam  \
        -IConan/SonyMS/include  \
        -IConan/mmc  \
        -IConan/mmc/header \
        -IConan/mmc/O2Test  \
        -IConan/mmc/intrface/common     \
        -IConan/MS2*/
WARNING_OPTIONS =  -O2 -Wall
#fix c,cpp function call parameter false.
#it is because the default kbuild use option mregparm=3,so our extended cpp file must be alose compiled using this option. re
fer to gcc manual
COMPILE_OPTION = -g -mregparm=3 -fno-rtti -fno-exceptions    
CCOMPILE_OPTION = -g -mregparm=3 -fno-common
#COMPILE_OPTION = -g -fno-rtti -fno-exceptions    
#CCOMPILE_OPTION = -g -fno-common
PRECOMPILE_OPTION = -D_X86_ -DTASKLET_MBX__ -DMBX_CHANGE_IDEHANDLER
LINK_OPTION =

CC=g++
LD=ld -m elf_i386
OBJ = WdmLib.o Conan/SRam/SRam.o \
Conan/mmc/intrface/mmc/Mmc.o Conan/mmc/intrface/mmc/Mmcdrv.o \
Conan/mmc/intrface/common/Sdmmc.o Conan/mmc/intrface/common/Ioconst.o Conan/mmc/intrface/common/ioutil.o \
Conan/mmc/platform/Mmcoem.o Conan/mmc/platform/util.o Conan/mmc/platform/Rdwr.o Conan/mmc/platform/crc.o Conan/mmc/platform/T
imer.o \
Conan/SonyMS/msal/Msif.o Conan/SonyMS/msal/Tpc.o Conan/SonyMS/msal/tpctimer.o Conan/SonyMS/msal/Msal.o Conan/SonyMS/msal/msal
_wrext.o
CPPOBJ = wmbx.o Conan/DriverEntry.o Conan/scsi_main.o Conan/ReadWrite.o Conan/O2IntrHd.o Conan/Mbxutil.o Conan/fifoctrl.o Con
an/twhdPCI.o Conan/o2icon.o \
Conan/idver/rwPCIReg.o Conan/idver/idver.o Conan/idver/ioport.o \
Conan/_generic/GDriverEntry.o Conan/_generic/RemoveLock.o  Conan/_generic/PlugPlay.o Conan/_generic/GPower.o Conan/_generic/D
evQueue.o Conan/_generic/Control.o \
Conan/ata/ATACmd.o \
Conan/mmc/Mmcp.o Conan/mmc/sdcprm.o Conan/mmc/sdsecapi.o Conan/mmc/sdSecCmd.o \
Conan/sm/SMObj.o Conan/sm/smintrf.o Conan/sm/HostRead.o \
Conan/SonyMS/Msp.o Conan/SonyMS/Msobj.o Conan/SonyMS/mspro.o Conan/SonyMS/mspro_sw.o \
Conan/SonyMS/msal/msalwext.o Conan/SonyMS/msal/msalrblk.o Conan/SonyMS/msal/msalrst.o Conan/SonyMS/msal/msalrbbk.o Conan/Sony
MS/msal/msalrext.o Conan/SonyMS/msal/Msalerbk.o Conan/SonyMS/msal/msalwrbk.o \
Conan/MS2/ms2al.o Conan/MS2/msal2.o Conan/MS2/msif2.o Conan/MS2/tpc2.o Conan/MS2/ms2intf.o Conan/MS2/ms2obj.o Conan/MS2/tpc_u
til.o

all: test.o_shipped  
clean:
        rm -f *_shipped WdmLib.o wmbx.o Conan/*.o Conan/SRam/*.o Conan/mmc/*.o Conan/mmc/intrface/*.o Conan/mmc/intrface/mmc/
*.o Conan/mmc/intrface/common/*.o Conan/mmc/platform/*.o Conan/SonyMS/msal/*.o Conan/idver/*.o Conan/_generic/*.o Conan/ata/*
.o Conan/sm/*.o Conan/SonyMS/*.o Conan/MS2/*.o
# Conan/*.bak Conan/SRam/*.bak Conan/mmc/*.bak Conan/mmc/intrface/*.bak Conan/mmc/intrface/mmc/*.bak Conan/mmc/intrface/commo
n/*.bak Conan/mmc/platform/*.bak Conan/SonyMS/msal/*.bak Conan/idver/*.bak Conan/_generic/*.bak Conan/ata/*.bak Conan/sm/*.ba
k Conan/SonyMS/*.bak Conan/MS2/*.bak

test.o_shipped: $(OBJ) $(CPPOBJ)
        $(LD) -r $(LINK_OPTION) $^   -o $@
$(CPPOBJ): %.o: %.cpp
        $(CC) -c $(WARNING_OPTIONS) $(PRECOMPILE_OPTION)  $(COMPILE_OPTION) $(INCLUDE) $< -o $@
$(OBJ): %.o: %.c
        gcc -c $(WARNING_OPTIONS) $(PRECOMPILE_OPTION)  $(CCOMPILE_OPTION) $(INCLUDE) $< -o $@


въпроса ми е какъв е този "Conan" дето трябва да се билдне и съответно преди това да се include-не

търсих в нета разбира се но на нищо смислено не попаднах

някой ако се е борил да пусне този четец или има идея как да компилирам горния сорс има бира от мен ;-)
Активен

senser

  • Напреднали
  • *****
  • Публикации: 1328
    • Профил
подкарване на  o2 micro, inc. oz711m1/mc1 4-in-1
« Отговор #1 -: Feb 03, 2007, 18:40 »
никой ли не е попадал на въпросния "Conan"  '<img'>
Активен

neonic

  • Напреднали
  • *****
  • Публикации: 104
    • Профил
подкарване на  o2 micro, inc. oz711m1/mc1 4-in-1
« Отговор #2 -: Feb 06, 2007, 01:10 »
Цитат (senser @ Ян. 31 2007,14:13)
Здравейте,

Имам ноутбук FSC Amilo A7645, който притежава въпросния кард-ридър. Ето изхода от lspci:
Примерен код

00:09.0 CardBus bridge: O2 Micro, Inc. OZ711M1/MC1 4-in-1 MemoryCardBus Controller (rev 20)
        Subsystem: Fujitsu Siemens Computer GmbH Unknown device 106c
        Flags: bus master, slow devsel, latency 64, IRQ 17
        Memory at 48000000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
        Memory window 0: 40000000-41fff000 (prefetchable)
        Memory window 1: 42000000-43fff000
        I/O window 0: 00001000-000010ff
        I/O window 1: 00001400-000014ff
        16-bit legacy interface ports at 0001


от доста време се мъча да го подкарам въпросния четец, но така и не намерих нито драйвери нито някой да си е играл да го пусне

вчера обаче попаднах на следното
накрая на станицата има линк към driver, който се билдва като модул за кернела

........

въпроса ми е какъв е този "Conan" дето трябва да се билдне и съответно преди това да се include-не

търсих в нета разбира се но на нищо смислено не попаднах

някой ако се е борил да пусне този четец или има идея как да компилирам горния сорс има бира от мен ;-)

Цитат
The source let us understand that the internal o2Micro name for this controller is "Conan".


Можеш да опиташ следното нещо:

Примерен код
ftp://scrdriver:scrdriver@209.19.104.194/Linux/O2Micro_PCMCIA_SCR_203_Linux_Kernel26_OpenSource.tar.gz


http://www.kcore.org/?menumain=4&menusub=1

Погледни частта за PCMCIA и Smartcard reader.

Тези неща би трябвало да ти свършат работа.
Активен

senser

  • Напреднали
  • *****
  • Публикации: 1328
    • Профил
подкарване на  o2 micro, inc. oz711m1/mc1 4-in-1
« Отговор #3 -: Feb 06, 2007, 10:41 »
@neonic - благодаря за отговора и информацията

още довечера ще погледна '<img'>
Активен