资源简介
PD电源芯片fusb302的datasheet(数据手册)和rockchip原厂配套内核驱动程序。对开发PD电源有很大的帮助作用

代码片段和文件信息
/*
* Copyright (c) 2016 Fuzhou Rockchip Electronics Co. Ltd
* Author: Zain Wang
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* Some ideas are from chrome ec and fairchild GPL fusb302 driver.
*/
#include
#include
#include
#include
#include
#include
#include
#include
#include “fusb302.h“
#define FUSB302_MAX_REG (FUSB_REG_FIFO + 50)
#define FUSB_MS_TO_NS(x) ((s64)x * 1000 * 1000)
#define TYPEC_CC_VOLT_OPEN 0
#define TYPEC_CC_VOLT_RA 1
#define TYPEC_CC_VOLT_RD 2
#define TYPEC_CC_VOLT_RP 3
#define EVENT_CC BIT(0)
#define EVENT_RX BIT(1)
#define EVENT_TX BIT(2)
#define EVENT_REC_RESET BIT(3)
#define EVENT_WORK_CONTINUE BIT(5)
#define EVENT_TIMER_MUX BIT(6)
#define EVENT_TIMER_STATE BIT(7)
#define EVENT_DELAY_CC BIT(8)
#define FLAG_EVENT (EVENT_RX | EVENT_TIMER_MUX | \
EVENT_TIMER_STATE)
#define PIN_MAP_A BIT(0)
#define PIN_MAP_B BIT(1)
#define PIN_MAP_C BIT(2)
#define PIN_MAP_D BIT(3)
#define PIN_MAP_E BIT(4)
#define PIN_MAP_F BIT(5)
#define PIN_MAP_MF_MASK 0x2a
#define PACKET_IS_CONTROL_MSG(header type) \
(PD_HEADER_CNT(header) == 0 && \
PD_HEADER_TYPE(header) == type)
#define PACKET_IS_DATA_MSG(header type) \
(PD_HEADER_CNT(header) != 0 && \
PD_HEADER_TYPE(header) == type)
#define VDM_DP_GET_RECEPTACLE(mode) ((mode >> 6) & 0x1)
#define VDM_DP_MULTIFUCTION(status) ((status >> 4) & 0x1)
static u8 fusb30x_port_used;
static struct fusb30x_chip *fusb30x_port_info[256];
static bool is_write_reg(struct device *dev unsigned int reg)
{
if (reg >= FUSB_REG_FIFO)
return true;
else
return ((reg < (FUSB_REG_CONTROL4 + 1)) && (reg > 0x01)) ?
true : false;
}
static bool is_volatile_reg(struct device *dev unsigned int reg)
{
if (reg > FUSB_REG_CONTROL4)
return true;
switch (reg) {
case FUSB_REG_CONTROL0:
case FUSB_REG_CONTROL1:
case FUSB_REG_CONTROL3:
case FUSB_REG_RESET:
return true;
}
return false;
}
struct regmap_config fusb302_regmap_config = {
.reg_bits = 8
.val_bits = 8
.writeable_reg = is_write_reg
.volatile_reg = is_volatile_reg
.max_register = FUSB302_MAX_REG
.cache_type = REGCACHE_RBTREE
};
static void dump_notify_info(struct fusb30x_chip *chip)
{
dev_dbg(chip->dev “port %d\n“ chip->port_num);
dev_dbg(chip->dev “orientation %d\n“ chip->notify.orientation);
dev_dbg(chip->dev “power_role %d\n“ chip->notify.power_role);
dev_dbg(chip->dev “data_role %d\n“ chip->notify.data_role);
dev_dbg(chip->dev “cc %d\n“ chip->notify.is_cc_connected);
dev_dbg(chip->dev “pd %d\n“ chip->notify.is_pd_connected);
dev_dbg(chip->dev “enter_mode %d\n“ chip->notify.is_enter_mode);
dev_dbg(chip->dev “pin support %d\
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-07-25 01:27 fusb302_data_and_code\
文件 13732 2019-07-25 01:27 fusb302_data_and_code\fusb302.h
文件 86891 2019-07-25 01:27 fusb302_data_and_code\fusb302.c
文件 297630 2019-07-25 01:27 fusb302_data_and_code\FUSB302BMPX 数据表.pdf
相关资源
- vspd7.2.308.zip
- SPD博士V5.3.exe
- Eeupdate.exe
- HAP_Advanced_PDF_Password_Recovery 5.05
- Rtx51_tiny_RTOS中文版.pdf
- porting.RTEMS移植指南.双语.V20131224.pdf
- 硬件测试面试常见题PDF
- PDSmaker 辩论赛赛制模板文件制作工具
- 图文手把手教你一步步用VC 2010编写通
- 图文手把手教你一步步用VC 2010编写通
- Vulkan Cookbook 无水印转化版pdf
- PDF格式的白话孙子兵法
- APUE第三版pdf
- Cyclone 10LP Remote Update Intel FPGA IP 官方工
- SDINBDG4-64GB_datasheet generic final v1.pdf
- pdf.jsamp;pdf;.worker.js
- halcon算子速查手册.pdf115507
- CMM 中文版高清pdf
- hostapd-2.0.tar.gz
- 一种基于LM3150 Buck型开关电源设计.p
- 调试九法.pdf
- 设计模式pdf高清版
- DDR4台式机内存条原理图.pdf
- 二院型号FPGA 硬件描述语言编程准则
- TMEIC TMdrive-MVGC 高压变频器手册.pdf
- 目前最全的203页DNP3_0规约.pdf
- BullZip PDF Printer v10.10.0.2307 官方版
- 瑞芯微RK原厂3399+LPDDR4 200球参考原理图
- TMC2209中文手册.pdf
- pdfdo password remover 3.0破解汉化绿色版
评论
共有 条评论