gsmi_dev 100 drivers/firmware/google/gsmi.c } gsmi_dev; gsmi_dev 159 drivers/firmware/google/gsmi.c smibuf->start = dma_pool_alloc(gsmi_dev.dma_pool, GFP_KERNEL, gsmi_dev 178 drivers/firmware/google/gsmi.c dma_pool_free(gsmi_dev.dma_pool, smibuf->start, gsmi_dev 202 drivers/firmware/google/gsmi.c if (gsmi_dev.handshake_type == GSMI_HANDSHAKE_CF) { gsmi_dev 216 drivers/firmware/google/gsmi.c "d" (gsmi_dev.smi_cmd), gsmi_dev 217 drivers/firmware/google/gsmi.c "b" (gsmi_dev.param_buf->address) gsmi_dev 220 drivers/firmware/google/gsmi.c } else if (gsmi_dev.handshake_type == GSMI_HANDSHAKE_SPIN) { gsmi_dev 230 drivers/firmware/google/gsmi.c "d" (gsmi_dev.smi_cmd), gsmi_dev 231 drivers/firmware/google/gsmi.c "b" (gsmi_dev.param_buf->address), gsmi_dev 245 drivers/firmware/google/gsmi.c "d" (gsmi_dev.smi_cmd), gsmi_dev 246 drivers/firmware/google/gsmi.c "b" (gsmi_dev.param_buf->address) gsmi_dev 314 drivers/firmware/google/gsmi.c .name_ptr = gsmi_dev.name_buf->address, gsmi_dev 315 drivers/firmware/google/gsmi.c .data_ptr = gsmi_dev.data_buf->address, gsmi_dev 326 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 332 drivers/firmware/google/gsmi.c memset(gsmi_dev.name_buf->start, 0, gsmi_dev.name_buf->length); gsmi_dev 333 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.name_buf->start, name, name_len * 2); gsmi_dev 336 drivers/firmware/google/gsmi.c memset(gsmi_dev.data_buf->start, 0, gsmi_dev.data_buf->length); gsmi_dev 339 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 340 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 351 drivers/firmware/google/gsmi.c memcpy(¶m, gsmi_dev.param_buf->start, sizeof(param)); gsmi_dev 355 drivers/firmware/google/gsmi.c gsmi_dev.data_buf->length); gsmi_dev 359 drivers/firmware/google/gsmi.c memcpy(data, gsmi_dev.data_buf->start, *data_size); gsmi_dev 367 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 377 drivers/firmware/google/gsmi.c .name_ptr = gsmi_dev.name_buf->address, gsmi_dev 378 drivers/firmware/google/gsmi.c .name_len = gsmi_dev.name_buf->length, gsmi_dev 392 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 398 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.name_buf->start, name, *name_size); gsmi_dev 401 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 402 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 413 drivers/firmware/google/gsmi.c memcpy(¶m, gsmi_dev.param_buf->start, sizeof(param)); gsmi_dev 416 drivers/firmware/google/gsmi.c memcpy(name, gsmi_dev.name_buf->start, GSMI_BUF_SIZE); gsmi_dev 424 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 436 drivers/firmware/google/gsmi.c .name_ptr = gsmi_dev.name_buf->address, gsmi_dev 437 drivers/firmware/google/gsmi.c .data_ptr = gsmi_dev.data_buf->address, gsmi_dev 451 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 457 drivers/firmware/google/gsmi.c memset(gsmi_dev.name_buf->start, 0, gsmi_dev.name_buf->length); gsmi_dev 458 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.name_buf->start, name, name_len * 2); gsmi_dev 461 drivers/firmware/google/gsmi.c memset(gsmi_dev.data_buf->start, 0, gsmi_dev.data_buf->length); gsmi_dev 462 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.data_buf->start, data, data_size); gsmi_dev 465 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 466 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 474 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 492 drivers/firmware/google/gsmi.c .data_ptr = gsmi_dev.data_buf->address, gsmi_dev 504 drivers/firmware/google/gsmi.c if ((count - sizeof(u32)) > gsmi_dev.data_buf->length) gsmi_dev 508 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 511 drivers/firmware/google/gsmi.c memset(gsmi_dev.data_buf->start, 0, gsmi_dev.data_buf->length); gsmi_dev 512 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.data_buf->start, buf, param.data_len); gsmi_dev 515 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 516 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 522 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 560 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 563 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 564 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 568 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 587 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 590 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 594 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 630 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 635 drivers/firmware/google/gsmi.c memset(gsmi_dev.data_buf->start, 0, gsmi_dev.data_buf->length); gsmi_dev 636 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.data_buf->start, &entry, sizeof(entry)); gsmi_dev 639 drivers/firmware/google/gsmi.c param.data_ptr = gsmi_dev.data_buf->address; gsmi_dev 640 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 641 drivers/firmware/google/gsmi.c memcpy(gsmi_dev.param_buf->start, ¶m, sizeof(param)); gsmi_dev 645 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 808 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 810 drivers/firmware/google/gsmi.c memset(gsmi_dev.param_buf->start, 0, gsmi_dev.param_buf->length); gsmi_dev 814 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 877 drivers/firmware/google/gsmi.c gsmi_dev.smi_cmd = acpi_gbl_FADT.smi_command; gsmi_dev 888 drivers/firmware/google/gsmi.c gsmi_dev.pdev = platform_device_register_full(&gsmi_dev_info); gsmi_dev 889 drivers/firmware/google/gsmi.c if (IS_ERR(gsmi_dev.pdev)) { gsmi_dev 891 drivers/firmware/google/gsmi.c return PTR_ERR(gsmi_dev.pdev); gsmi_dev 895 drivers/firmware/google/gsmi.c spin_lock_init(&gsmi_dev.lock); gsmi_dev 898 drivers/firmware/google/gsmi.c gsmi_dev.dma_pool = dma_pool_create("gsmi", &gsmi_dev.pdev->dev, gsmi_dev 900 drivers/firmware/google/gsmi.c if (!gsmi_dev.dma_pool) gsmi_dev 907 drivers/firmware/google/gsmi.c gsmi_dev.name_buf = gsmi_buf_alloc(); gsmi_dev 908 drivers/firmware/google/gsmi.c if (!gsmi_dev.name_buf) { gsmi_dev 913 drivers/firmware/google/gsmi.c gsmi_dev.data_buf = gsmi_buf_alloc(); gsmi_dev 914 drivers/firmware/google/gsmi.c if (!gsmi_dev.data_buf) { gsmi_dev 919 drivers/firmware/google/gsmi.c gsmi_dev.param_buf = gsmi_buf_alloc(); gsmi_dev 920 drivers/firmware/google/gsmi.c if (!gsmi_dev.param_buf) { gsmi_dev 953 drivers/firmware/google/gsmi.c spin_lock_irqsave(&gsmi_dev.lock, flags); gsmi_dev 954 drivers/firmware/google/gsmi.c gsmi_dev.handshake_type = GSMI_HANDSHAKE_SPIN; gsmi_dev 955 drivers/firmware/google/gsmi.c gsmi_dev.handshake_type = gsmi_dev 957 drivers/firmware/google/gsmi.c if (gsmi_dev.handshake_type == -ENOSYS) gsmi_dev 958 drivers/firmware/google/gsmi.c gsmi_dev.handshake_type = GSMI_HANDSHAKE_NONE; gsmi_dev 959 drivers/firmware/google/gsmi.c spin_unlock_irqrestore(&gsmi_dev.lock, flags); gsmi_dev 962 drivers/firmware/google/gsmi.c if (gsmi_dev.handshake_type == -ENXIO) { gsmi_dev 1013 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.param_buf); gsmi_dev 1014 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.data_buf); gsmi_dev 1015 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.name_buf); gsmi_dev 1016 drivers/firmware/google/gsmi.c dma_pool_destroy(gsmi_dev.dma_pool); gsmi_dev 1017 drivers/firmware/google/gsmi.c platform_device_unregister(gsmi_dev.pdev); gsmi_dev 1035 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.param_buf); gsmi_dev 1036 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.data_buf); gsmi_dev 1037 drivers/firmware/google/gsmi.c gsmi_buf_free(gsmi_dev.name_buf); gsmi_dev 1038 drivers/firmware/google/gsmi.c dma_pool_destroy(gsmi_dev.dma_pool); gsmi_dev 1039 drivers/firmware/google/gsmi.c platform_device_unregister(gsmi_dev.pdev);