1f5fbb83fSMauro Carvalho Chehab /* SPDX-License-Identifier: GPL-2.0 */ 29d4fa1a1SMauro Carvalho Chehab /* 39d4fa1a1SMauro Carvalho Chehab * Support for Intel Camera Imaging ISP subsystem. 49d4fa1a1SMauro Carvalho Chehab * Copyright (c) 2015, Intel Corporation. 59d4fa1a1SMauro Carvalho Chehab * 69d4fa1a1SMauro Carvalho Chehab * This program is free software; you can redistribute it and/or modify it 79d4fa1a1SMauro Carvalho Chehab * under the terms and conditions of the GNU General Public License, 89d4fa1a1SMauro Carvalho Chehab * version 2, as published by the Free Software Foundation. 99d4fa1a1SMauro Carvalho Chehab * 109d4fa1a1SMauro Carvalho Chehab * This program is distributed in the hope it will be useful, but WITHOUT 119d4fa1a1SMauro Carvalho Chehab * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 129d4fa1a1SMauro Carvalho Chehab * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 139d4fa1a1SMauro Carvalho Chehab * more details. 149d4fa1a1SMauro Carvalho Chehab */ 159d4fa1a1SMauro Carvalho Chehab 169d4fa1a1SMauro Carvalho Chehab #ifndef _IA_CSS_DEVICE_ACCESS_H 179d4fa1a1SMauro Carvalho Chehab #define _IA_CSS_DEVICE_ACCESS_H 189d4fa1a1SMauro Carvalho Chehab 199d4fa1a1SMauro Carvalho Chehab /* @file 209d4fa1a1SMauro Carvalho Chehab * File containing internal functions for the CSS-API to access the CSS device. 219d4fa1a1SMauro Carvalho Chehab */ 229d4fa1a1SMauro Carvalho Chehab 239d4fa1a1SMauro Carvalho Chehab #include <type_support.h> /* for uint*, size_t */ 24f90e73ceSMauro Carvalho Chehab #include <system_local.h> /* for hrt_address */ 259d4fa1a1SMauro Carvalho Chehab #include <ia_css_env.h> /* for ia_css_hw_access_env */ 269d4fa1a1SMauro Carvalho Chehab 279d4fa1a1SMauro Carvalho Chehab void 289d4fa1a1SMauro Carvalho Chehab ia_css_device_access_init(const struct ia_css_hw_access_env *env); 299d4fa1a1SMauro Carvalho Chehab 309d4fa1a1SMauro Carvalho Chehab uint8_t 319d4fa1a1SMauro Carvalho Chehab ia_css_device_load_uint8(const hrt_address addr); 329d4fa1a1SMauro Carvalho Chehab 339d4fa1a1SMauro Carvalho Chehab uint16_t 349d4fa1a1SMauro Carvalho Chehab ia_css_device_load_uint16(const hrt_address addr); 359d4fa1a1SMauro Carvalho Chehab 369d4fa1a1SMauro Carvalho Chehab uint32_t 379d4fa1a1SMauro Carvalho Chehab ia_css_device_load_uint32(const hrt_address addr); 389d4fa1a1SMauro Carvalho Chehab 399d4fa1a1SMauro Carvalho Chehab uint64_t 409d4fa1a1SMauro Carvalho Chehab ia_css_device_load_uint64(const hrt_address addr); 419d4fa1a1SMauro Carvalho Chehab 429d4fa1a1SMauro Carvalho Chehab void 439d4fa1a1SMauro Carvalho Chehab ia_css_device_store_uint8(const hrt_address addr, const uint8_t data); 449d4fa1a1SMauro Carvalho Chehab 459d4fa1a1SMauro Carvalho Chehab void 469d4fa1a1SMauro Carvalho Chehab ia_css_device_store_uint16(const hrt_address addr, const uint16_t data); 479d4fa1a1SMauro Carvalho Chehab 489d4fa1a1SMauro Carvalho Chehab void 499d4fa1a1SMauro Carvalho Chehab ia_css_device_store_uint32(const hrt_address addr, const uint32_t data); 509d4fa1a1SMauro Carvalho Chehab 519d4fa1a1SMauro Carvalho Chehab void 529d4fa1a1SMauro Carvalho Chehab ia_css_device_store_uint64(const hrt_address addr, const uint64_t data); 539d4fa1a1SMauro Carvalho Chehab 549d4fa1a1SMauro Carvalho Chehab void 559d4fa1a1SMauro Carvalho Chehab ia_css_device_load(const hrt_address addr, void *data, const size_t size); 569d4fa1a1SMauro Carvalho Chehab 579d4fa1a1SMauro Carvalho Chehab void 589d4fa1a1SMauro Carvalho Chehab ia_css_device_store(const hrt_address addr, const void *data, 599d4fa1a1SMauro Carvalho Chehab const size_t size); 609d4fa1a1SMauro Carvalho Chehab 619d4fa1a1SMauro Carvalho Chehab #endif /* _IA_CSS_DEVICE_ACCESS_H */ 62