Deleted Added
full compact
tws.c (240900) tws.c (241753)
1/*
2 * Copyright (c) 2010, LSI Corp.
3 * All rights reserved.
4 * Author : Manjunath Ranganathaiah
5 * Support: freebsdraid@lsi.com
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 19 unchanged lines hidden (view full) ---

28 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 * POSSIBILITY OF SUCH DAMAGE.
33 */
34
35#include <sys/cdefs.h>
1/*
2 * Copyright (c) 2010, LSI Corp.
3 * All rights reserved.
4 * Author : Manjunath Ranganathaiah
5 * Support: freebsdraid@lsi.com
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 19 unchanged lines hidden (view full) ---

28 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 * POSSIBILITY OF SUCH DAMAGE.
33 */
34
35#include <sys/cdefs.h>
36__FBSDID("$FreeBSD: head/sys/dev/tws/tws.c 240900 2012-09-24 21:40:22Z jimharris $");
36__FBSDID("$FreeBSD: head/sys/dev/tws/tws.c 241753 2012-10-19 22:07:40Z delphij $");
37
38#include <dev/tws/tws.h>
39#include <dev/tws/tws_services.h>
40#include <dev/tws/tws_hdm.h>
41
42#include <cam/cam.h>
43#include <cam/cam_ccb.h>
44

--- 355 unchanged lines hidden (view full) ---

400 if (bus_release_resource(sc->tws_dev,
401 SYS_RES_MEMORY, sc->reg_res_id, sc->reg_res))
402 TWS_TRACE(sc, "bus release mem resource", 0, sc->reg_res_id);
403 }
404
405 free(sc->reqs, M_TWS);
406 free(sc->sense_bufs, M_TWS);
407 free(sc->scan_ccb, M_TWS);
37
38#include <dev/tws/tws.h>
39#include <dev/tws/tws_services.h>
40#include <dev/tws/tws_hdm.h>
41
42#include <cam/cam.h>
43#include <cam/cam_ccb.h>
44

--- 355 unchanged lines hidden (view full) ---

400 if (bus_release_resource(sc->tws_dev,
401 SYS_RES_MEMORY, sc->reg_res_id, sc->reg_res))
402 TWS_TRACE(sc, "bus release mem resource", 0, sc->reg_res_id);
403 }
404
405 free(sc->reqs, M_TWS);
406 free(sc->sense_bufs, M_TWS);
407 free(sc->scan_ccb, M_TWS);
408 if (sc->ioctl_data_mem)
409 bus_dmamem_free(sc->data_tag, sc->ioctl_data_mem, sc->ioctl_data_map);
408 free(sc->aen_q.q, M_TWS);
409 free(sc->trace_q.q, M_TWS);
410 mtx_destroy(&sc->q_lock);
411 mtx_destroy(&sc->sim_lock);
412 mtx_destroy(&sc->gen_lock);
413 mtx_destroy(&sc->io_lock);
414 destroy_dev(sc->tws_cdev);
415 sysctl_ctx_free(&sc->tws_clist);

--- 188 unchanged lines hidden (view full) ---

604 TWS_TRACE_DEBUG(sc, "sense malloc failed", 0, sc->is64bit);
605 return(ENOMEM);
606 }
607 sc->scan_ccb = malloc(sizeof(union ccb), M_TWS, M_WAITOK | M_ZERO);
608 if ( sc->scan_ccb == NULL ) {
609 TWS_TRACE_DEBUG(sc, "ccb malloc failed", 0, sc->is64bit);
610 return(ENOMEM);
611 }
410 free(sc->aen_q.q, M_TWS);
411 free(sc->trace_q.q, M_TWS);
412 mtx_destroy(&sc->q_lock);
413 mtx_destroy(&sc->sim_lock);
414 mtx_destroy(&sc->gen_lock);
415 mtx_destroy(&sc->io_lock);
416 destroy_dev(sc->tws_cdev);
417 sysctl_ctx_free(&sc->tws_clist);

--- 188 unchanged lines hidden (view full) ---

606 TWS_TRACE_DEBUG(sc, "sense malloc failed", 0, sc->is64bit);
607 return(ENOMEM);
608 }
609 sc->scan_ccb = malloc(sizeof(union ccb), M_TWS, M_WAITOK | M_ZERO);
610 if ( sc->scan_ccb == NULL ) {
611 TWS_TRACE_DEBUG(sc, "ccb malloc failed", 0, sc->is64bit);
612 return(ENOMEM);
613 }
614 if (bus_dmamem_alloc(sc->data_tag, (void **)&sc->ioctl_data_mem,
615 (BUS_DMA_NOWAIT | BUS_DMA_ZERO), &sc->ioctl_data_map)) {
616 device_printf(sc->tws_dev, "Cannot allocate ioctl data mem\n");
617 return(ENOMEM);
618 }
612
613 if ( !tws_ctlr_ready(sc) )
614 if( !tws_ctlr_reset(sc) )
615 return(FAILURE);
616
617 bzero(&sc->stats, sizeof(struct tws_stats));
618 tws_init_qs(sc);
619 tws_turn_off_interrupts(sc);

--- 285 unchanged lines hidden ---
619
620 if ( !tws_ctlr_ready(sc) )
621 if( !tws_ctlr_reset(sc) )
622 return(FAILURE);
623
624 bzero(&sc->stats, sizeof(struct tws_stats));
625 tws_init_qs(sc);
626 tws_turn_off_interrupts(sc);

--- 285 unchanged lines hidden ---