Lines Matching defs:map

95 static inline bool tegra_ivc_empty(struct tegra_ivc *ivc, struct iosys_map *map)
102 u32 tx = tegra_ivc_header_read_field(map, tx.count);
103 u32 rx = tegra_ivc_header_read_field(map, rx.count);
121 static inline bool tegra_ivc_full(struct tegra_ivc *ivc, struct iosys_map *map)
123 u32 tx = tegra_ivc_header_read_field(map, tx.count);
124 u32 rx = tegra_ivc_header_read_field(map, rx.count);
133 static inline u32 tegra_ivc_available(struct tegra_ivc *ivc, struct iosys_map *map)
135 u32 tx = tegra_ivc_header_read_field(map, tx.count);
136 u32 rx = tegra_ivc_header_read_field(map, rx.count);
149 unsigned int count = tegra_ivc_header_read_field(&ivc->tx.map, tx.count);
151 tegra_ivc_header_write_field(&ivc->tx.map, tx.count, count + 1);
161 unsigned int count = tegra_ivc_header_read_field(&ivc->rx.map, rx.count);
163 tegra_ivc_header_write_field(&ivc->rx.map, rx.count, count + 1);
184 state = tegra_ivc_header_read_field(&ivc->tx.map, tx.state);
195 if (!tegra_ivc_empty(ivc, &ivc->rx.map))
200 if (tegra_ivc_empty(ivc, &ivc->rx.map))
211 state = tegra_ivc_header_read_field(&ivc->tx.map, tx.state);
215 if (!tegra_ivc_full(ivc, &ivc->tx.map))
220 if (tegra_ivc_full(ivc, &ivc->tx.map))
227 unsigned int frame, struct iosys_map *map)
234 *map = IOSYS_MAP_INIT_OFFSET(header, offset);
279 int tegra_ivc_read_get_next_frame(struct tegra_ivc *ivc, struct iosys_map *map)
299 return tegra_ivc_frame_virt(ivc, &ivc->rx.map, ivc->rx.position, map);
335 if (tegra_ivc_available(ivc, &ivc->rx.map) == ivc->num_frames - 1)
343 int tegra_ivc_write_get_next_frame(struct tegra_ivc *ivc, struct iosys_map *map)
351 return tegra_ivc_frame_virt(ivc, &ivc->tx.map, ivc->tx.position, map);
391 if (tegra_ivc_available(ivc, &ivc->tx.map) == 1)
402 tegra_ivc_header_write_field(&ivc->tx.map, tx.state, TEGRA_IVC_STATE_SYNC);
435 rx_state = tegra_ivc_header_read_field(&ivc->rx.map, tx.state);
436 tx_state = tegra_ivc_header_read_field(&ivc->tx.map, tx.state);
452 tegra_ivc_header_write_field(&ivc->tx.map, tx.count, 0);
453 tegra_ivc_header_write_field(&ivc->rx.map, rx.count, 0);
468 tegra_ivc_header_write_field(&ivc->tx.map, tx.state, TEGRA_IVC_STATE_ACK);
491 tegra_ivc_header_write_field(&ivc->tx.map, tx.count, 0);
492 tegra_ivc_header_write_field(&ivc->rx.map, rx.count, 0);
508 tegra_ivc_header_write_field(&ivc->tx.map, tx.state, TEGRA_IVC_STATE_ESTABLISHED);
532 tegra_ivc_header_write_field(&ivc->tx.map, tx.state, TEGRA_IVC_STATE_ESTABLISHED);
630 static inline unsigned long iosys_map_get_address(const struct iosys_map *map)
632 if (map->is_iomem)
633 return (unsigned long)map->vaddr_iomem;
635 return (unsigned long)map->vaddr;
638 static inline void *iosys_map_get_vaddr(const struct iosys_map *map)
640 if (WARN_ON(map->is_iomem))
643 return map->vaddr;
690 iosys_map_copy(&ivc->rx.map, rx);
691 iosys_map_copy(&ivc->tx.map, tx);