超悦电子开发团队设计与开发管理规则修订报告

需积分: 0 0 下载量 131 浏览量 更新于2024-07-27 收藏 209KB PDF 举报
BB-25-01《设计和开发管理规则》修订版于2005年7月1日发布,由超悦电子开发团队的涂传文负责。该规则的主要目的是建立一个系统化和高效的设计与开发流程,确保从课题讨论到量产的所有活动符合顾客的需求,提升开发效率,并在产品品质和交货期限上达到高标准。 该规则适用于超悦电子公司的所有产品开发项目,涵盖了从议题提出到实际生产的全过程。规则明确区分了三个关键开发阶段:发议阶段、设计验证阶段和量产验证阶段。每个阶段都有特定的目标和责任,以确保项目的顺利进行。 3.2节定义了DR(Design Review)会议,这是一个重要的内部沟通机制,旨在通过跨部门协作来识别并解决开发过程中的问题,制定实施计划,并对已发现问题提出解决方案。这些会议对于质量控制和问题解决至关重要,是保持开发流程顺畅的关键环节。 此外,文档还包含了标准的改订历史,包括首次制定于2005年7月1日,以及后续可能的修改和更新。每个更改都经过了教育回览和签名确认,确保所有相关人员了解并遵循新的管理规则。 教育回览部分列出了教育对象、日期、时间和地点,以及教育人员和负责人,强调了培训和知识传递的重要性,以确保所有参与开发过程的人员具备必要的技能和理解。 在整个规则文档中,强调了标准的配布和记录要求,规定了五个部门(开发、购买、经营支援、品质和制造)各需一份,并要求汇报部门记录接收标准的部门名称和数量。这体现了公司对信息流通和标准化管理的严谨态度。 BB-25-01《设计和开发管理规则》是超悦电子公司确保产品开发质量和效率的重要工具,通过明确的阶段划分、DR会议制度以及严格的教育和配布程序,推动了公司内部的协调与高效运作。

struct ring_buffer { int head; int tail; struct msg *data; int size; unsigned int capacity; }; struct msg { u16 module_id; u16 cmd_id; u16 cmd_subid; u16 complete; u8 data[128]; };struct pokemon_uart_port { struct uart_port port; struct clk *clk; const struct vendor_data vendor; unsigned int im; / interrupt mask / unsigned int old_status; unsigned int fifosize; unsigned int old_cr; / state during shutdown */ unsigned int fixed_baud; struct ring_buffer tx_buf; struct ring_buffer rx_buf; char type[12]; };struct ring_buffer ring_buffer_init(unsigned int capacity) { struct ring_buffer rbuf=kmalloc(sizeof(struct ring_buffer),GFP_KERNEL); rbuf->capacity=capacity; rbuf->head = rbuf->size=0; rbuf->tail = capacity - 1; rbuf->data = kmalloc(rbuf->capacity * sizeof(struct msg), GFP_KERNEL); printk(KERN_DEBUG "ring_buffer create successfully!/n"); return rbuf; }static int pokemon_uart_probe(struct amba_device *dev, const struct amba_id *id) { struct pokemon_uart_port *pup; struct vendor_data *vendor = id->data; int portnr, ret; portnr = pokemon_find_free_port(); if (portnr < 0) return portnr; pup = devm_kzalloc(&dev->dev, sizeof(struct pokemon_uart_port), GFP_KERNEL); if(!pup) return -ENOMEM; pup->clk = devm_clk_get(&dev->dev, NULL); if(IS_ERR(pup->clk)) return PTR_ERR(pup->clk); pup->port.irq = dev->irq[0]; pup->port.line = portnr; pup->vendor = vendor; pup->fifosize = 32; pup->port.iotype = pup->vendor->access_32b ? UPIO_MEM32 : UPIO_MEM; pup->port.ops = &pokemon_uart_ops; snprintf(pup->type, sizeof(pup->type), "PL011 rev%u", amba_rev(dev)); pup->tx_buf = ring_buffer_init(10); pup->rx_buf = ring_buffer_init(10); ret = pokemon_setup_port(&dev->dev, pup, &dev->res, portnr); if (ret) return ret; amba_set_drvdata(dev, pup); return pokemon_register_port(pup); }检查一下这段linux内核驱动代码中,有无代码逻辑和格式错误,如果有,请给出修改之后的代码

2023-06-08 上传