2 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
3 $Id: cardforcechange.c $
5 Desc: CardForceChange() function.
9 #include <proto/exec.h>
11 #include "card_intern.h"
13 AROS_LH0(ULONG
, CardForceChange
,
14 struct CardResource
*, CardResource
, 15, Cardres
)
18 CARDDEBUG(bug("CardForceChange()\n"));
20 if (CardResource
->resetberr
& GAYLE_IRQ_RESET
)
22 if (CardResource
->removed
)
25 pcmcia_reset(CardResource
);
26 CardResource
->removed
= TRUE
;
27 pcmcia_removeowner(CardResource
);
29 if (pcmcia_havecard()) {
30 /* Simulate re-insertion of current card */
31 CardResource
->disabled
= TRUE
;
32 pcmcia_cardreset(CardResource
);
33 pcmcia_enable_interrupts();
34 Signal(CardResource
->task
, CardResource
->signalmask
);
36 pcmcia_enable_interrupts();